linear_algebra.matrix.charpoly.linear_map
⟷
Mathlib.LinearAlgebra.Matrix.Charpoly.LinearMap
The following section lists changes to this file in mathlib3 and mathlib4 that occured after the initial port. Most recent changes are shown first. Hovering over a commit will show all commits associated with the same mathlib3 commit.
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(last sync)
mathlib commit https://github.com/leanprover-community/mathlib/commit/65a1391a0106c9204fe45bc73a039f056558cb83
@@ -133,7 +133,7 @@ theorem Matrix.represents_iff' {A : Matrix ι ι R} {f : Module.End R M} :
constructor
· intro h i
have := LinearMap.congr_fun h (Pi.single i 1)
- rwa [PiToModule.fromEnd_apply_single_one, PiToModule.fromMatrix_apply_single_one] at this
+ rwa [PiToModule.fromEnd_apply_single_one, PiToModule.fromMatrix_apply_single_one] at this
· intro h
ext
simp_rw [LinearMap.comp_apply, LinearMap.coe_single, PiToModule.fromEnd_apply_single_one,
@@ -250,7 +250,7 @@ theorem Matrix.isRepresentation.toEnd_exists_mem_ideal (f : Module.End R M) (I :
dsimp [A]
intro j
specialize hbM' (b j)
- rwa [Ideal.finsuppTotal_apply_eq_of_fintype] at hbM'
+ rwa [Ideal.finsuppTotal_apply_eq_of_fintype] at hbM'
exact
⟨⟨A, f, this⟩, Matrix.isRepresentation.eq_toEnd_of_represents R b hb ⟨A, f, this⟩ this,
fun i j => (bM' (b j) i).Prop⟩
mathlib commit https://github.com/leanprover-community/mathlib/commit/65a1391a0106c9204fe45bc73a039f056558cb83
@@ -290,7 +290,7 @@ theorem LinearMap.exists_monic_and_coeff_mem_pow_and_aeval_eq_zero_of_range_le_s
(by rw [Subtype.range_coe_subtype, Finset.setOf_mem, hs]) f I hI
refine' ⟨A.1.charpoly, A.1.charpoly_monic, _, _⟩
· rw [A.1.charpoly_natDegree_eq_dim]
- exact coeff_charpoly_mem_ideal_pow h
+ exact Matrix.coeff_charpoly_mem_ideal_pow h
· rw [Polynomial.aeval_algHom_apply, ← map_zero (Matrix.isRepresentation.toEnd R coe _)]
congr 1
ext1
mathlib commit https://github.com/leanprover-community/mathlib/commit/65a1391a0106c9204fe45bc73a039f056558cb83
@@ -282,6 +282,21 @@ theorem LinearMap.exists_monic_and_coeff_mem_pow_and_aeval_eq_zero_of_range_le_s
[Module.Finite R M] (f : Module.End R M) (I : Ideal R) (hI : f.range ≤ I • ⊤) :
∃ p : R[X], p.Monic ∧ (∀ k, p.coeff k ∈ I ^ (p.natDegree - k)) ∧ Polynomial.aeval f p = 0 := by
classical
+ cases subsingleton_or_nontrivial R
+ · exact ⟨0, Polynomial.monic_of_subsingleton _, by simp⟩
+ obtain ⟨s : Finset M, hs : Submodule.span R (s : Set M) = ⊤⟩ := Module.Finite.out
+ obtain ⟨A, rfl, h⟩ :=
+ Matrix.isRepresentation.toEnd_exists_mem_ideal R (coe : s → M)
+ (by rw [Subtype.range_coe_subtype, Finset.setOf_mem, hs]) f I hI
+ refine' ⟨A.1.charpoly, A.1.charpoly_monic, _, _⟩
+ · rw [A.1.charpoly_natDegree_eq_dim]
+ exact coeff_charpoly_mem_ideal_pow h
+ · rw [Polynomial.aeval_algHom_apply, ← map_zero (Matrix.isRepresentation.toEnd R coe _)]
+ congr 1
+ ext1
+ rw [Polynomial.aeval_subalgebra_coe, Subtype.val_eq_coe, Matrix.aeval_self_charpoly,
+ Subalgebra.coe_zero]
+ · infer_instance
#align linear_map.exists_monic_and_coeff_mem_pow_and_aeval_eq_zero_of_range_le_smul LinearMap.exists_monic_and_coeff_mem_pow_and_aeval_eq_zero_of_range_le_smul
-/
mathlib commit https://github.com/leanprover-community/mathlib/commit/65a1391a0106c9204fe45bc73a039f056558cb83
@@ -282,21 +282,6 @@ theorem LinearMap.exists_monic_and_coeff_mem_pow_and_aeval_eq_zero_of_range_le_s
[Module.Finite R M] (f : Module.End R M) (I : Ideal R) (hI : f.range ≤ I • ⊤) :
∃ p : R[X], p.Monic ∧ (∀ k, p.coeff k ∈ I ^ (p.natDegree - k)) ∧ Polynomial.aeval f p = 0 := by
classical
- cases subsingleton_or_nontrivial R
- · exact ⟨0, Polynomial.monic_of_subsingleton _, by simp⟩
- obtain ⟨s : Finset M, hs : Submodule.span R (s : Set M) = ⊤⟩ := Module.Finite.out
- obtain ⟨A, rfl, h⟩ :=
- Matrix.isRepresentation.toEnd_exists_mem_ideal R (coe : s → M)
- (by rw [Subtype.range_coe_subtype, Finset.setOf_mem, hs]) f I hI
- refine' ⟨A.1.charpoly, A.1.charpoly_monic, _, _⟩
- · rw [A.1.charpoly_natDegree_eq_dim]
- exact coeff_charpoly_mem_ideal_pow h
- · rw [Polynomial.aeval_algHom_apply, ← map_zero (Matrix.isRepresentation.toEnd R coe _)]
- congr 1
- ext1
- rw [Polynomial.aeval_subalgebra_coe, Subtype.val_eq_coe, Matrix.aeval_self_charpoly,
- Subalgebra.coe_zero]
- · infer_instance
#align linear_map.exists_monic_and_coeff_mem_pow_and_aeval_eq_zero_of_range_le_smul LinearMap.exists_monic_and_coeff_mem_pow_and_aeval_eq_zero_of_range_le_smul
-/
mathlib commit https://github.com/leanprover-community/mathlib/commit/ce64cd319bb6b3e82f31c2d38e79080d377be451
@@ -3,8 +3,8 @@ Copyright (c) 2022 Andrew Yang. All rights reserved.
Released under Apache 2.0 license as described in the file LICENSE.
Authors: Andrew Yang
-/
-import Mathbin.LinearAlgebra.Matrix.Charpoly.Coeff
-import Mathbin.LinearAlgebra.Matrix.ToLin
+import LinearAlgebra.Matrix.Charpoly.Coeff
+import LinearAlgebra.Matrix.ToLin
#align_import linear_algebra.matrix.charpoly.linear_map from "leanprover-community/mathlib"@"4280f5f32e16755ec7985ce11e189b6cd6ff6735"
mathlib commit https://github.com/leanprover-community/mathlib/commit/32a7e535287f9c73f2e4d2aef306a39190f0b504
@@ -200,7 +200,7 @@ endomorphisms on `M`. -/
def Matrix.isRepresentation : Subalgebra R (Matrix ι ι R)
where
carrier := {A | ∃ f : Module.End R M, A.Represents b f}
- mul_mem' := fun A₁ A₂ ⟨f₁, e₁⟩ ⟨f₂, e₂⟩ => ⟨f₁ * f₂, e₁.mul e₂⟩
+ hMul_mem' := fun A₁ A₂ ⟨f₁, e₁⟩ ⟨f₂, e₂⟩ => ⟨f₁ * f₂, e₁.mul e₂⟩
one_mem' := ⟨1, Matrix.Represents.one⟩
add_mem' := fun A₁ A₂ ⟨f₁, e₁⟩ ⟨f₂, e₂⟩ => ⟨f₁ + f₂, e₁.add e₂⟩
zero_mem' := ⟨0, Matrix.Represents.zero⟩
mathlib commit https://github.com/leanprover-community/mathlib/commit/8ea5598db6caeddde6cb734aa179cc2408dbd345
@@ -2,15 +2,12 @@
Copyright (c) 2022 Andrew Yang. All rights reserved.
Released under Apache 2.0 license as described in the file LICENSE.
Authors: Andrew Yang
-
-! This file was ported from Lean 3 source module linear_algebra.matrix.charpoly.linear_map
-! leanprover-community/mathlib commit 4280f5f32e16755ec7985ce11e189b6cd6ff6735
-! Please do not edit these lines, except to modify the commit id
-! if you have ported upstream changes.
-/
import Mathbin.LinearAlgebra.Matrix.Charpoly.Coeff
import Mathbin.LinearAlgebra.Matrix.ToLin
+#align_import linear_algebra.matrix.charpoly.linear_map from "leanprover-community/mathlib"@"4280f5f32e16755ec7985ce11e189b6cd6ff6735"
+
/-!
# Calyley-Hamilton theorem for f.g. modules.
mathlib commit https://github.com/leanprover-community/mathlib/commit/9fb8964792b4237dac6200193a0d533f1b3f7423
@@ -47,17 +47,21 @@ def PiToModule.fromMatrix [DecidableEq ι] : Matrix ι ι R →ₗ[R] (ι → R)
#align pi_to_module.from_matrix PiToModule.fromMatrix
-/
+#print PiToModule.fromMatrix_apply /-
theorem PiToModule.fromMatrix_apply [DecidableEq ι] (A : Matrix ι ι R) (w : ι → R) :
PiToModule.fromMatrix R b A w = Fintype.total R R b (A.mulVec w) :=
rfl
#align pi_to_module.from_matrix_apply PiToModule.fromMatrix_apply
+-/
+#print PiToModule.fromMatrix_apply_single_one /-
theorem PiToModule.fromMatrix_apply_single_one [DecidableEq ι] (A : Matrix ι ι R) (j : ι) :
PiToModule.fromMatrix R b A (Pi.single j 1) = ∑ i : ι, A i j • b i :=
by
rw [PiToModule.fromMatrix_apply, Fintype.total_apply, Matrix.mulVec_single]
simp_rw [mul_one]
#align pi_to_module.from_matrix_apply_single_one PiToModule.fromMatrix_apply_single_one
+-/
#print PiToModule.fromEnd /-
/-- The endomorphisms of `M` acts on `(ι → R) →ₗ[R] M`, and takes the projection
@@ -67,11 +71,14 @@ def PiToModule.fromEnd : Module.End R M →ₗ[R] (ι → R) →ₗ[R] M :=
#align pi_to_module.from_End PiToModule.fromEnd
-/
+#print PiToModule.fromEnd_apply /-
theorem PiToModule.fromEnd_apply (f : Module.End R M) (w : ι → R) :
PiToModule.fromEnd R b f w = f (Fintype.total R R b w) :=
rfl
#align pi_to_module.from_End_apply PiToModule.fromEnd_apply
+-/
+#print PiToModule.fromEnd_apply_single_one /-
theorem PiToModule.fromEnd_apply_single_one [DecidableEq ι] (f : Module.End R M) (i : ι) :
PiToModule.fromEnd R b f (Pi.single i 1) = f (b i) :=
by
@@ -80,7 +87,9 @@ theorem PiToModule.fromEnd_apply_single_one [DecidableEq ι] (f : Module.End R M
convert Fintype.total_apply_single R b i 1
rw [one_smul]
#align pi_to_module.from_End_apply_single_one PiToModule.fromEnd_apply_single_one
+-/
+#print PiToModule.fromEnd_injective /-
theorem PiToModule.fromEnd_injective (hb : Submodule.span R (Set.range b) = ⊤) :
Function.Injective (PiToModule.fromEnd R b) :=
by
@@ -90,6 +99,7 @@ theorem PiToModule.fromEnd_injective (hb : Submodule.span R (Set.range b) = ⊤)
trivial
exact (LinearMap.congr_fun e m : _)
#align pi_to_module.from_End_injective PiToModule.fromEnd_injective
+-/
section
@@ -105,16 +115,21 @@ def Matrix.Represents (A : Matrix ι ι R) (f : Module.End R M) : Prop :=
variable {b}
+#print Matrix.Represents.congr_fun /-
theorem Matrix.Represents.congr_fun {A : Matrix ι ι R} {f : Module.End R M} (h : A.Represents b f)
(x) : Fintype.total R R b (A.mulVec x) = f (Fintype.total R R b x) :=
LinearMap.congr_fun h x
#align matrix.represents.congr_fun Matrix.Represents.congr_fun
+-/
+#print Matrix.represents_iff /-
theorem Matrix.represents_iff {A : Matrix ι ι R} {f : Module.End R M} :
A.Represents b f ↔ ∀ x, Fintype.total R R b (A.mulVec x) = f (Fintype.total R R b x) :=
⟨fun e x => e.congr_fun x, fun H => LinearMap.ext fun x => H x⟩
#align matrix.represents_iff Matrix.represents_iff
+-/
+#print Matrix.represents_iff' /-
theorem Matrix.represents_iff' {A : Matrix ι ι R} {f : Module.End R M} :
A.Represents b f ↔ ∀ j, ∑ i : ι, A i j • b i = f (b j) :=
by
@@ -128,7 +143,9 @@ theorem Matrix.represents_iff' {A : Matrix ι ι R} {f : Module.End R M} :
PiToModule.fromMatrix_apply_single_one]
apply h
#align matrix.represents_iff' Matrix.represents_iff'
+-/
+#print Matrix.Represents.mul /-
theorem Matrix.Represents.mul {A A' : Matrix ι ι R} {f f' : Module.End R M} (h : A.Represents b f)
(h' : Matrix.Represents b A' f') : (A * A').Represents b (f * f') :=
by
@@ -139,7 +156,9 @@ theorem Matrix.Represents.mul {A A' : Matrix ι ι R} {f f' : Module.End R M} (h
rw [← h'.congr_fun, ← h.congr_fun]
rfl
#align matrix.represents.mul Matrix.Represents.mul
+-/
+#print Matrix.Represents.one /-
theorem Matrix.Represents.one : (1 : Matrix ι ι R).Represents b 1 :=
by
delta Matrix.Represents PiToModule.fromMatrix
@@ -147,28 +166,38 @@ theorem Matrix.Represents.one : (1 : Matrix ι ι R).Represents b 1 :=
ext
rfl
#align matrix.represents.one Matrix.Represents.one
+-/
+#print Matrix.Represents.add /-
theorem Matrix.Represents.add {A A' : Matrix ι ι R} {f f' : Module.End R M} (h : A.Represents b f)
(h' : Matrix.Represents b A' f') : (A + A').Represents b (f + f') := by
delta Matrix.Represents at h h' ⊢; rw [map_add, map_add, h, h']
#align matrix.represents.add Matrix.Represents.add
+-/
+#print Matrix.Represents.zero /-
theorem Matrix.Represents.zero : (0 : Matrix ι ι R).Represents b 0 := by delta Matrix.Represents;
rw [map_zero, map_zero]
#align matrix.represents.zero Matrix.Represents.zero
+-/
+#print Matrix.Represents.smul /-
theorem Matrix.Represents.smul {A : Matrix ι ι R} {f : Module.End R M} (h : A.Represents b f)
(r : R) : (r • A).Represents b (r • f) := by delta Matrix.Represents at h ⊢;
rw [map_smul, map_smul, h]
#align matrix.represents.smul Matrix.Represents.smul
+-/
+#print Matrix.Represents.eq /-
theorem Matrix.Represents.eq {A : Matrix ι ι R} {f f' : Module.End R M} (h : A.Represents b f)
(h' : A.Represents b f') : f = f' :=
PiToModule.fromEnd_injective R b hb (h.symm.trans h')
#align matrix.represents.eq Matrix.Represents.eq
+-/
variable (b R)
+#print Matrix.isRepresentation /-
/-- The subalgebra of `matrix ι ι R` that consists of matrices that actually represent
endomorphisms on `M`. -/
def Matrix.isRepresentation : Subalgebra R (Matrix ι ι R)
@@ -180,7 +209,9 @@ def Matrix.isRepresentation : Subalgebra R (Matrix ι ι R)
zero_mem' := ⟨0, Matrix.Represents.zero⟩
algebraMap_mem' r := ⟨r • 1, Matrix.Represents.one.smul r⟩
#align matrix.is_representation Matrix.isRepresentation
+-/
+#print Matrix.isRepresentation.toEnd /-
/-- The map sending a matrix to the endomorphism it represents. This is an `R`-algebra morphism. -/
noncomputable def Matrix.isRepresentation.toEnd : Matrix.isRepresentation R b →ₐ[R] Module.End R M
where
@@ -192,18 +223,24 @@ noncomputable def Matrix.isRepresentation.toEnd : Matrix.isRepresentation R b
commutes' r :=
(r • 1 : Matrix.isRepresentation R b).2.choose_spec.Eq hb (Matrix.Represents.one.smul r)
#align matrix.is_representation.to_End Matrix.isRepresentation.toEnd
+-/
+#print Matrix.isRepresentation.toEnd_represents /-
theorem Matrix.isRepresentation.toEnd_represents (A : Matrix.isRepresentation R b) :
(A : Matrix ι ι R).Represents b (Matrix.isRepresentation.toEnd R b hb A) :=
A.2.choose_spec
#align matrix.is_representation.to_End_represents Matrix.isRepresentation.toEnd_represents
+-/
+#print Matrix.isRepresentation.eq_toEnd_of_represents /-
theorem Matrix.isRepresentation.eq_toEnd_of_represents (A : Matrix.isRepresentation R b)
{f : Module.End R M} (h : (A : Matrix ι ι R).Represents b f) :
Matrix.isRepresentation.toEnd R b hb A = f :=
A.2.choose_spec.Eq hb h
#align matrix.is_representation.eq_to_End_of_represents Matrix.isRepresentation.eq_toEnd_of_represents
+-/
+#print Matrix.isRepresentation.toEnd_exists_mem_ideal /-
theorem Matrix.isRepresentation.toEnd_exists_mem_ideal (f : Module.End R M) (I : Ideal R)
(hI : f.range ≤ I • ⊤) : ∃ M, Matrix.isRepresentation.toEnd R b hb M = f ∧ ∀ i j, M.1 i j ∈ I :=
by
@@ -221,7 +258,9 @@ theorem Matrix.isRepresentation.toEnd_exists_mem_ideal (f : Module.End R M) (I :
⟨⟨A, f, this⟩, Matrix.isRepresentation.eq_toEnd_of_represents R b hb ⟨A, f, this⟩ this,
fun i j => (bM' (b j) i).Prop⟩
#align matrix.is_representation.to_End_exists_mem_ideal Matrix.isRepresentation.toEnd_exists_mem_ideal
+-/
+#print Matrix.isRepresentation.toEnd_surjective /-
theorem Matrix.isRepresentation.toEnd_surjective :
Function.Surjective (Matrix.isRepresentation.toEnd R b hb) :=
by
@@ -230,9 +269,11 @@ theorem Matrix.isRepresentation.toEnd_surjective :
exact ⟨M, e⟩
simp
#align matrix.is_representation.to_End_surjective Matrix.isRepresentation.toEnd_surjective
+-/
end
+#print LinearMap.exists_monic_and_coeff_mem_pow_and_aeval_eq_zero_of_range_le_smul /-
/-- The **Cayley-Hamilton Theorem** for f.g. modules over arbitrary rings states that for each
`R`-endomorphism `φ` of an `R`-module `M` such that `φ(M) ≤ I • M` for some ideal `I`, there
exists some `n` and some `aᵢ ∈ Iⁱ` such that `φⁿ + a₁ φⁿ⁻¹ + ⋯ + aₙ = 0`.
@@ -260,10 +301,13 @@ theorem LinearMap.exists_monic_and_coeff_mem_pow_and_aeval_eq_zero_of_range_le_s
Subalgebra.coe_zero]
· infer_instance
#align linear_map.exists_monic_and_coeff_mem_pow_and_aeval_eq_zero_of_range_le_smul LinearMap.exists_monic_and_coeff_mem_pow_and_aeval_eq_zero_of_range_le_smul
+-/
+#print LinearMap.exists_monic_and_aeval_eq_zero /-
theorem LinearMap.exists_monic_and_aeval_eq_zero [Module.Finite R M] (f : Module.End R M) :
∃ p : R[X], p.Monic ∧ Polynomial.aeval f p = 0 :=
(LinearMap.exists_monic_and_coeff_mem_pow_and_aeval_eq_zero_of_range_le_smul R f ⊤ (by simp)).imp
fun p h => h.imp_right And.right
#align linear_map.exists_monic_and_aeval_eq_zero LinearMap.exists_monic_and_aeval_eq_zero
+-/
mathlib commit https://github.com/leanprover-community/mathlib/commit/a3e83f0fa4391c8740f7d773a7a9b74e311ae2a3
@@ -116,7 +116,7 @@ theorem Matrix.represents_iff {A : Matrix ι ι R} {f : Module.End R M} :
#align matrix.represents_iff Matrix.represents_iff
theorem Matrix.represents_iff' {A : Matrix ι ι R} {f : Module.End R M} :
- A.Represents b f ↔ ∀ j, (∑ i : ι, A i j • b i) = f (b j) :=
+ A.Represents b f ↔ ∀ j, ∑ i : ι, A i j • b i = f (b j) :=
by
constructor
· intro h i
mathlib commit https://github.com/leanprover-community/mathlib/commit/5f25c089cb34db4db112556f23c50d12da81b297
@@ -173,7 +173,7 @@ variable (b R)
endomorphisms on `M`. -/
def Matrix.isRepresentation : Subalgebra R (Matrix ι ι R)
where
- carrier := { A | ∃ f : Module.End R M, A.Represents b f }
+ carrier := {A | ∃ f : Module.End R M, A.Represents b f}
mul_mem' := fun A₁ A₂ ⟨f₁, e₁⟩ ⟨f₂, e₂⟩ => ⟨f₁ * f₂, e₁.mul e₂⟩
one_mem' := ⟨1, Matrix.Represents.one⟩
add_mem' := fun A₁ A₂ ⟨f₁, e₁⟩ ⟨f₂, e₂⟩ => ⟨f₁ + f₂, e₁.add e₂⟩
@@ -244,21 +244,21 @@ theorem LinearMap.exists_monic_and_coeff_mem_pow_and_aeval_eq_zero_of_range_le_s
[Module.Finite R M] (f : Module.End R M) (I : Ideal R) (hI : f.range ≤ I • ⊤) :
∃ p : R[X], p.Monic ∧ (∀ k, p.coeff k ∈ I ^ (p.natDegree - k)) ∧ Polynomial.aeval f p = 0 := by
classical
- cases subsingleton_or_nontrivial R
- · exact ⟨0, Polynomial.monic_of_subsingleton _, by simp⟩
- obtain ⟨s : Finset M, hs : Submodule.span R (s : Set M) = ⊤⟩ := Module.Finite.out
- obtain ⟨A, rfl, h⟩ :=
- Matrix.isRepresentation.toEnd_exists_mem_ideal R (coe : s → M)
- (by rw [Subtype.range_coe_subtype, Finset.setOf_mem, hs]) f I hI
- refine' ⟨A.1.charpoly, A.1.charpoly_monic, _, _⟩
- · rw [A.1.charpoly_natDegree_eq_dim]
- exact coeff_charpoly_mem_ideal_pow h
- · rw [Polynomial.aeval_algHom_apply, ← map_zero (Matrix.isRepresentation.toEnd R coe _)]
- congr 1
- ext1
- rw [Polynomial.aeval_subalgebra_coe, Subtype.val_eq_coe, Matrix.aeval_self_charpoly,
- Subalgebra.coe_zero]
- · infer_instance
+ cases subsingleton_or_nontrivial R
+ · exact ⟨0, Polynomial.monic_of_subsingleton _, by simp⟩
+ obtain ⟨s : Finset M, hs : Submodule.span R (s : Set M) = ⊤⟩ := Module.Finite.out
+ obtain ⟨A, rfl, h⟩ :=
+ Matrix.isRepresentation.toEnd_exists_mem_ideal R (coe : s → M)
+ (by rw [Subtype.range_coe_subtype, Finset.setOf_mem, hs]) f I hI
+ refine' ⟨A.1.charpoly, A.1.charpoly_monic, _, _⟩
+ · rw [A.1.charpoly_natDegree_eq_dim]
+ exact coeff_charpoly_mem_ideal_pow h
+ · rw [Polynomial.aeval_algHom_apply, ← map_zero (Matrix.isRepresentation.toEnd R coe _)]
+ congr 1
+ ext1
+ rw [Polynomial.aeval_subalgebra_coe, Subtype.val_eq_coe, Matrix.aeval_self_charpoly,
+ Subalgebra.coe_zero]
+ · infer_instance
#align linear_map.exists_monic_and_coeff_mem_pow_and_aeval_eq_zero_of_range_le_smul LinearMap.exists_monic_and_coeff_mem_pow_and_aeval_eq_zero_of_range_le_smul
theorem LinearMap.exists_monic_and_aeval_eq_zero [Module.Finite R M] (f : Module.End R M) :
mathlib commit https://github.com/leanprover-community/mathlib/commit/cca40788df1b8755d5baf17ab2f27dacc2e17acb
@@ -121,7 +121,7 @@ theorem Matrix.represents_iff' {A : Matrix ι ι R} {f : Module.End R M} :
constructor
· intro h i
have := LinearMap.congr_fun h (Pi.single i 1)
- rwa [PiToModule.fromEnd_apply_single_one, PiToModule.fromMatrix_apply_single_one] at this
+ rwa [PiToModule.fromEnd_apply_single_one, PiToModule.fromMatrix_apply_single_one] at this
· intro h
ext
simp_rw [LinearMap.comp_apply, LinearMap.coe_single, PiToModule.fromEnd_apply_single_one,
@@ -150,7 +150,7 @@ theorem Matrix.Represents.one : (1 : Matrix ι ι R).Represents b 1 :=
theorem Matrix.Represents.add {A A' : Matrix ι ι R} {f f' : Module.End R M} (h : A.Represents b f)
(h' : Matrix.Represents b A' f') : (A + A').Represents b (f + f') := by
- delta Matrix.Represents at h h'⊢; rw [map_add, map_add, h, h']
+ delta Matrix.Represents at h h' ⊢; rw [map_add, map_add, h, h']
#align matrix.represents.add Matrix.Represents.add
theorem Matrix.Represents.zero : (0 : Matrix ι ι R).Represents b 0 := by delta Matrix.Represents;
@@ -158,7 +158,7 @@ theorem Matrix.Represents.zero : (0 : Matrix ι ι R).Represents b 0 := by delta
#align matrix.represents.zero Matrix.Represents.zero
theorem Matrix.Represents.smul {A : Matrix ι ι R} {f : Module.End R M} (h : A.Represents b f)
- (r : R) : (r • A).Represents b (r • f) := by delta Matrix.Represents at h⊢;
+ (r : R) : (r • A).Represents b (r • f) := by delta Matrix.Represents at h ⊢;
rw [map_smul, map_smul, h]
#align matrix.represents.smul Matrix.Represents.smul
@@ -216,7 +216,7 @@ theorem Matrix.isRepresentation.toEnd_exists_mem_ideal (f : Module.End R M) (I :
dsimp [A]
intro j
specialize hbM' (b j)
- rwa [Ideal.finsuppTotal_apply_eq_of_fintype] at hbM'
+ rwa [Ideal.finsuppTotal_apply_eq_of_fintype] at hbM'
exact
⟨⟨A, f, this⟩, Matrix.isRepresentation.eq_toEnd_of_represents R b hb ⟨A, f, this⟩ this,
fun i j => (bM' (b j) i).Prop⟩
mathlib commit https://github.com/leanprover-community/mathlib/commit/cca40788df1b8755d5baf17ab2f27dacc2e17acb
@@ -261,11 +261,9 @@ theorem LinearMap.exists_monic_and_coeff_mem_pow_and_aeval_eq_zero_of_range_le_s
· infer_instance
#align linear_map.exists_monic_and_coeff_mem_pow_and_aeval_eq_zero_of_range_le_smul LinearMap.exists_monic_and_coeff_mem_pow_and_aeval_eq_zero_of_range_le_smul
-#print LinearMap.exists_monic_and_aeval_eq_zero /-
theorem LinearMap.exists_monic_and_aeval_eq_zero [Module.Finite R M] (f : Module.End R M) :
∃ p : R[X], p.Monic ∧ Polynomial.aeval f p = 0 :=
(LinearMap.exists_monic_and_coeff_mem_pow_and_aeval_eq_zero_of_range_le_smul R f ⊤ (by simp)).imp
fun p h => h.imp_right And.right
#align linear_map.exists_monic_and_aeval_eq_zero LinearMap.exists_monic_and_aeval_eq_zero
--/
mathlib commit https://github.com/leanprover-community/mathlib/commit/917c3c072e487b3cccdbfeff17e75b40e45f66cb
@@ -35,9 +35,9 @@ variable {M : Type _} [AddCommGroup M] (R : Type _) [CommRing R] [Module R M] (I
variable (b : ι → M) (hb : Submodule.span R (Set.range b) = ⊤)
-open BigOperators
+open scoped BigOperators
-open Polynomial
+open scoped Polynomial
#print PiToModule.fromMatrix /-
/-- The composition of a matrix (as an endomporphism of `ι → R`) with the projection
mathlib commit https://github.com/leanprover-community/mathlib/commit/917c3c072e487b3cccdbfeff17e75b40e45f66cb
@@ -47,17 +47,11 @@ def PiToModule.fromMatrix [DecidableEq ι] : Matrix ι ι R →ₗ[R] (ι → R)
#align pi_to_module.from_matrix PiToModule.fromMatrix
-/
-/- warning: pi_to_module.from_matrix_apply -> PiToModule.fromMatrix_apply is a dubious translation:
-<too large>
-Case conversion may be inaccurate. Consider using '#align pi_to_module.from_matrix_apply PiToModule.fromMatrix_applyₓ'. -/
theorem PiToModule.fromMatrix_apply [DecidableEq ι] (A : Matrix ι ι R) (w : ι → R) :
PiToModule.fromMatrix R b A w = Fintype.total R R b (A.mulVec w) :=
rfl
#align pi_to_module.from_matrix_apply PiToModule.fromMatrix_apply
-/- warning: pi_to_module.from_matrix_apply_single_one -> PiToModule.fromMatrix_apply_single_one is a dubious translation:
-<too large>
-Case conversion may be inaccurate. Consider using '#align pi_to_module.from_matrix_apply_single_one PiToModule.fromMatrix_apply_single_oneₓ'. -/
theorem PiToModule.fromMatrix_apply_single_one [DecidableEq ι] (A : Matrix ι ι R) (j : ι) :
PiToModule.fromMatrix R b A (Pi.single j 1) = ∑ i : ι, A i j • b i :=
by
@@ -73,17 +67,11 @@ def PiToModule.fromEnd : Module.End R M →ₗ[R] (ι → R) →ₗ[R] M :=
#align pi_to_module.from_End PiToModule.fromEnd
-/
-/- warning: pi_to_module.from_End_apply -> PiToModule.fromEnd_apply is a dubious translation:
-<too large>
-Case conversion may be inaccurate. Consider using '#align pi_to_module.from_End_apply PiToModule.fromEnd_applyₓ'. -/
theorem PiToModule.fromEnd_apply (f : Module.End R M) (w : ι → R) :
PiToModule.fromEnd R b f w = f (Fintype.total R R b w) :=
rfl
#align pi_to_module.from_End_apply PiToModule.fromEnd_apply
-/- warning: pi_to_module.from_End_apply_single_one -> PiToModule.fromEnd_apply_single_one is a dubious translation:
-<too large>
-Case conversion may be inaccurate. Consider using '#align pi_to_module.from_End_apply_single_one PiToModule.fromEnd_apply_single_oneₓ'. -/
theorem PiToModule.fromEnd_apply_single_one [DecidableEq ι] (f : Module.End R M) (i : ι) :
PiToModule.fromEnd R b f (Pi.single i 1) = f (b i) :=
by
@@ -93,9 +81,6 @@ theorem PiToModule.fromEnd_apply_single_one [DecidableEq ι] (f : Module.End R M
rw [one_smul]
#align pi_to_module.from_End_apply_single_one PiToModule.fromEnd_apply_single_one
-/- warning: pi_to_module.from_End_injective -> PiToModule.fromEnd_injective is a dubious translation:
-<too large>
-Case conversion may be inaccurate. Consider using '#align pi_to_module.from_End_injective PiToModule.fromEnd_injectiveₓ'. -/
theorem PiToModule.fromEnd_injective (hb : Submodule.span R (Set.range b) = ⊤) :
Function.Injective (PiToModule.fromEnd R b) :=
by
@@ -120,25 +105,16 @@ def Matrix.Represents (A : Matrix ι ι R) (f : Module.End R M) : Prop :=
variable {b}
-/- warning: matrix.represents.congr_fun -> Matrix.Represents.congr_fun is a dubious translation:
-<too large>
-Case conversion may be inaccurate. Consider using '#align matrix.represents.congr_fun Matrix.Represents.congr_funₓ'. -/
theorem Matrix.Represents.congr_fun {A : Matrix ι ι R} {f : Module.End R M} (h : A.Represents b f)
(x) : Fintype.total R R b (A.mulVec x) = f (Fintype.total R R b x) :=
LinearMap.congr_fun h x
#align matrix.represents.congr_fun Matrix.Represents.congr_fun
-/- warning: matrix.represents_iff -> Matrix.represents_iff is a dubious translation:
-<too large>
-Case conversion may be inaccurate. Consider using '#align matrix.represents_iff Matrix.represents_iffₓ'. -/
theorem Matrix.represents_iff {A : Matrix ι ι R} {f : Module.End R M} :
A.Represents b f ↔ ∀ x, Fintype.total R R b (A.mulVec x) = f (Fintype.total R R b x) :=
⟨fun e x => e.congr_fun x, fun H => LinearMap.ext fun x => H x⟩
#align matrix.represents_iff Matrix.represents_iff
-/- warning: matrix.represents_iff' -> Matrix.represents_iff' is a dubious translation:
-<too large>
-Case conversion may be inaccurate. Consider using '#align matrix.represents_iff' Matrix.represents_iff'ₓ'. -/
theorem Matrix.represents_iff' {A : Matrix ι ι R} {f : Module.End R M} :
A.Represents b f ↔ ∀ j, (∑ i : ι, A i j • b i) = f (b j) :=
by
@@ -153,12 +129,6 @@ theorem Matrix.represents_iff' {A : Matrix ι ι R} {f : Module.End R M} :
apply h
#align matrix.represents_iff' Matrix.represents_iff'
-/- warning: matrix.represents.mul -> Matrix.Represents.mul is a dubious translation:
-lean 3 declaration is
- forall {ι : Type.{u1}} [_inst_1 : Fintype.{u1} ι] {M : Type.{u2}} [_inst_2 : AddCommGroup.{u2} M] {R : Type.{u3}} [_inst_3 : CommRing.{u3} R] [_inst_4 : Module.{u3, u2} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2)] {b : ι -> M} [_inst_5 : DecidableEq.{succ u1} ι] {A : Matrix.{u1, u1, u3} ι ι R} {A' : Matrix.{u1, u1, u3} ι ι R} {f : Module.End.{u3, u2} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4} {f' : Module.End.{u3, u2} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4}, (Matrix.Represents.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b) A f) -> (Matrix.Represents.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b) A' f') -> (Matrix.Represents.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b) (HMul.hMul.{max u1 u3, max u1 u3, max u1 u3} (Matrix.{u1, u1, u3} ι ι R) (Matrix.{u1, u1, u3} ι ι R) (Matrix.{u1, u1, u3} ι ι R) (instHMul.{max u1 u3} (Matrix.{u1, u1, u3} ι ι R) (Matrix.hasMul.{u3, u1} ι R _inst_1 (Distrib.toHasMul.{u3} R (Ring.toDistrib.{u3} R (CommRing.toRing.{u3} R _inst_3))) (AddCommGroup.toAddCommMonoid.{u3} R (NonUnitalNonAssocRing.toAddCommGroup.{u3} R (NonAssocRing.toNonUnitalNonAssocRing.{u3} R (Ring.toNonAssocRing.{u3} R (CommRing.toRing.{u3} R _inst_3))))))) A A') (HMul.hMul.{u2, u2, u2} (Module.End.{u3, u2} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (Module.End.{u3, u2} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (Module.End.{u3, u2} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (instHMul.{u2} (Module.End.{u3, u2} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (LinearMap.module.End.hasMul.{u3, u2} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4)) f f'))
-but is expected to have type
- forall {ι : Type.{u3}} [_inst_1 : Fintype.{u3} ι] {M : Type.{u1}} [_inst_2 : AddCommGroup.{u1} M] {R : Type.{u2}} [_inst_3 : CommRing.{u2} R] [_inst_4 : Module.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2)] {b : ι -> M} [_inst_5 : DecidableEq.{succ u3} ι] {A : Matrix.{u3, u3, u2} ι ι R} {A' : Matrix.{u3, u3, u2} ι ι R} {f : Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4} {f' : Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4}, (Matrix.Represents.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b) A f) -> (Matrix.Represents.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b) A' f') -> (Matrix.Represents.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b) (HMul.hMul.{max u3 u2, max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Matrix.{u3, u3, u2} ι ι R) (Matrix.{u3, u3, u2} ι ι R) (instHMul.{max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Matrix.instMulMatrix.{u2, u3} ι R _inst_1 (NonUnitalNonAssocRing.toMul.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_3)))) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_3))))))) A A') (HMul.hMul.{u1, u1, u1} (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (instHMul.{u1} (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (LinearMap.instMulEnd.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4)) f f'))
-Case conversion may be inaccurate. Consider using '#align matrix.represents.mul Matrix.Represents.mulₓ'. -/
theorem Matrix.Represents.mul {A A' : Matrix ι ι R} {f f' : Module.End R M} (h : A.Represents b f)
(h' : Matrix.Represents b A' f') : (A * A').Represents b (f * f') :=
by
@@ -170,12 +140,6 @@ theorem Matrix.Represents.mul {A A' : Matrix ι ι R} {f f' : Module.End R M} (h
rfl
#align matrix.represents.mul Matrix.Represents.mul
-/- warning: matrix.represents.one -> Matrix.Represents.one is a dubious translation:
-lean 3 declaration is
- forall {ι : Type.{u1}} [_inst_1 : Fintype.{u1} ι] {M : Type.{u2}} [_inst_2 : AddCommGroup.{u2} M] {R : Type.{u3}} [_inst_3 : CommRing.{u3} R] [_inst_4 : Module.{u3, u2} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2)] {b : ι -> M} [_inst_5 : DecidableEq.{succ u1} ι], Matrix.Represents.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b) (OfNat.ofNat.{max u1 u3} (Matrix.{u1, u1, u3} ι ι R) 1 (OfNat.mk.{max u1 u3} (Matrix.{u1, u1, u3} ι ι R) 1 (One.one.{max u1 u3} (Matrix.{u1, u1, u3} ι ι R) (Matrix.hasOne.{u3, u1} ι R (fun (a : ι) (b : ι) => _inst_5 a b) (MulZeroClass.toHasZero.{u3} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u3} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u3} R (NonAssocRing.toNonUnitalNonAssocRing.{u3} R (Ring.toNonAssocRing.{u3} R (CommRing.toRing.{u3} R _inst_3)))))) (AddMonoidWithOne.toOne.{u3} R (AddGroupWithOne.toAddMonoidWithOne.{u3} R (AddCommGroupWithOne.toAddGroupWithOne.{u3} R (Ring.toAddCommGroupWithOne.{u3} R (CommRing.toRing.{u3} R _inst_3))))))))) (OfNat.ofNat.{u2} (Module.End.{u3, u2} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) 1 (OfNat.mk.{u2} (Module.End.{u3, u2} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) 1 (One.one.{u2} (Module.End.{u3, u2} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (LinearMap.module.End.hasOne.{u3, u2} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4))))
-but is expected to have type
- forall {ι : Type.{u3}} [_inst_1 : Fintype.{u3} ι] {M : Type.{u2}} [_inst_2 : AddCommGroup.{u2} M] {R : Type.{u1}} [_inst_3 : CommRing.{u1} R] [_inst_4 : Module.{u1, u2} R M (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2)] {b : ι -> M} [_inst_5 : DecidableEq.{succ u3} ι], Matrix.Represents.{u3, u2, u1} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b) (OfNat.ofNat.{max u3 u1} (Matrix.{u3, u3, u1} ι ι R) 1 (One.toOfNat1.{max u3 u1} (Matrix.{u3, u3, u1} ι ι R) (Matrix.one.{u1, u3} ι R (fun (a : ι) (b : ι) => _inst_5 a b) (CommMonoidWithZero.toZero.{u1} R (CommSemiring.toCommMonoidWithZero.{u1} R (CommRing.toCommSemiring.{u1} R _inst_3))) (Semiring.toOne.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_3)))))) (OfNat.ofNat.{u2} (Module.End.{u1, u2} R M (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) 1 (One.toOfNat1.{u2} (Module.End.{u1, u2} R M (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (LinearMap.instOneEnd.{u1, u2} R M (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4)))
-Case conversion may be inaccurate. Consider using '#align matrix.represents.one Matrix.Represents.oneₓ'. -/
theorem Matrix.Represents.one : (1 : Matrix ι ι R).Represents b 1 :=
by
delta Matrix.Represents PiToModule.fromMatrix
@@ -184,38 +148,20 @@ theorem Matrix.Represents.one : (1 : Matrix ι ι R).Represents b 1 :=
rfl
#align matrix.represents.one Matrix.Represents.one
-/- warning: matrix.represents.add -> Matrix.Represents.add is a dubious translation:
-<too large>
-Case conversion may be inaccurate. Consider using '#align matrix.represents.add Matrix.Represents.addₓ'. -/
theorem Matrix.Represents.add {A A' : Matrix ι ι R} {f f' : Module.End R M} (h : A.Represents b f)
(h' : Matrix.Represents b A' f') : (A + A').Represents b (f + f') := by
delta Matrix.Represents at h h'⊢; rw [map_add, map_add, h, h']
#align matrix.represents.add Matrix.Represents.add
-/- warning: matrix.represents.zero -> Matrix.Represents.zero is a dubious translation:
-lean 3 declaration is
- forall {ι : Type.{u1}} [_inst_1 : Fintype.{u1} ι] {M : Type.{u2}} [_inst_2 : AddCommGroup.{u2} M] {R : Type.{u3}} [_inst_3 : CommRing.{u3} R] [_inst_4 : Module.{u3, u2} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2)] {b : ι -> M} [_inst_5 : DecidableEq.{succ u1} ι], Matrix.Represents.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b) (OfNat.ofNat.{max u1 u3} (Matrix.{u1, u1, u3} ι ι R) 0 (OfNat.mk.{max u1 u3} (Matrix.{u1, u1, u3} ι ι R) 0 (Zero.zero.{max u1 u3} (Matrix.{u1, u1, u3} ι ι R) (Matrix.hasZero.{u3, u1, u1} ι ι R (MulZeroClass.toHasZero.{u3} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u3} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u3} R (NonAssocRing.toNonUnitalNonAssocRing.{u3} R (Ring.toNonAssocRing.{u3} R (CommRing.toRing.{u3} R _inst_3)))))))))) (OfNat.ofNat.{u2} (Module.End.{u3, u2} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) 0 (OfNat.mk.{u2} (Module.End.{u3, u2} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) 0 (Zero.zero.{u2} (Module.End.{u3, u2} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (LinearMap.hasZero.{u3, u3, u2, u2} R R M M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4 _inst_4 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3))))))))
-but is expected to have type
- forall {ι : Type.{u3}} [_inst_1 : Fintype.{u3} ι] {M : Type.{u2}} [_inst_2 : AddCommGroup.{u2} M] {R : Type.{u1}} [_inst_3 : CommRing.{u1} R] [_inst_4 : Module.{u1, u2} R M (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2)] {b : ι -> M} [_inst_5 : DecidableEq.{succ u3} ι], Matrix.Represents.{u3, u2, u1} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b) (OfNat.ofNat.{max u3 u1} (Matrix.{u3, u3, u1} ι ι R) 0 (Zero.toOfNat0.{max u3 u1} (Matrix.{u3, u3, u1} ι ι R) (Matrix.zero.{u1, u3, u3} ι ι R (CommMonoidWithZero.toZero.{u1} R (CommSemiring.toCommMonoidWithZero.{u1} R (CommRing.toCommSemiring.{u1} R _inst_3)))))) (OfNat.ofNat.{u2} (Module.End.{u1, u2} R M (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) 0 (Zero.toOfNat0.{u2} (Module.End.{u1, u2} R M (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (LinearMap.instZeroLinearMap.{u1, u1, u2, u2} R R M M (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_3)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4 _inst_4 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_3)))))))
-Case conversion may be inaccurate. Consider using '#align matrix.represents.zero Matrix.Represents.zeroₓ'. -/
theorem Matrix.Represents.zero : (0 : Matrix ι ι R).Represents b 0 := by delta Matrix.Represents;
rw [map_zero, map_zero]
#align matrix.represents.zero Matrix.Represents.zero
-/- warning: matrix.represents.smul -> Matrix.Represents.smul is a dubious translation:
-<too large>
-Case conversion may be inaccurate. Consider using '#align matrix.represents.smul Matrix.Represents.smulₓ'. -/
theorem Matrix.Represents.smul {A : Matrix ι ι R} {f : Module.End R M} (h : A.Represents b f)
(r : R) : (r • A).Represents b (r • f) := by delta Matrix.Represents at h⊢;
rw [map_smul, map_smul, h]
#align matrix.represents.smul Matrix.Represents.smul
-/- warning: matrix.represents.eq -> Matrix.Represents.eq is a dubious translation:
-lean 3 declaration is
- forall {ι : Type.{u1}} [_inst_1 : Fintype.{u1} ι] {M : Type.{u2}} [_inst_2 : AddCommGroup.{u2} M] {R : Type.{u3}} [_inst_3 : CommRing.{u3} R] [_inst_4 : Module.{u3, u2} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2)] {b : ι -> M}, (Eq.{succ u2} (Submodule.{u3, u2} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (Submodule.span.{u3, u2} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4 (Set.range.{u2, succ u1} M ι b)) (Top.top.{u2} (Submodule.{u3, u2} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (Submodule.hasTop.{u3, u2} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4))) -> (forall [_inst_5 : DecidableEq.{succ u1} ι] {A : Matrix.{u1, u1, u3} ι ι R} {f : Module.End.{u3, u2} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4} {f' : Module.End.{u3, u2} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4}, (Matrix.Represents.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b) A f) -> (Matrix.Represents.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b) A f') -> (Eq.{succ u2} (Module.End.{u3, u2} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) f f'))
-but is expected to have type
- forall {ι : Type.{u3}} [_inst_1 : Fintype.{u3} ι] {M : Type.{u1}} [_inst_2 : AddCommGroup.{u1} M] {R : Type.{u2}} [_inst_3 : CommRing.{u2} R] [_inst_4 : Module.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2)] {b : ι -> M}, (Eq.{succ u1} (Submodule.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (Submodule.span.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4 (Set.range.{u1, succ u3} M ι b)) (Top.top.{u1} (Submodule.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (Submodule.instTopSubmodule.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4))) -> (forall [_inst_5 : DecidableEq.{succ u3} ι] {A : Matrix.{u3, u3, u2} ι ι R} {f : Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4} {f' : Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4}, (Matrix.Represents.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b) A f) -> (Matrix.Represents.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b) A f') -> (Eq.{succ u1} (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) f f'))
-Case conversion may be inaccurate. Consider using '#align matrix.represents.eq Matrix.Represents.eqₓ'. -/
theorem Matrix.Represents.eq {A : Matrix ι ι R} {f f' : Module.End R M} (h : A.Represents b f)
(h' : A.Represents b f') : f = f' :=
PiToModule.fromEnd_injective R b hb (h.symm.trans h')
@@ -223,12 +169,6 @@ theorem Matrix.Represents.eq {A : Matrix ι ι R} {f f' : Module.End R M} (h : A
variable (b R)
-/- warning: matrix.is_representation -> Matrix.isRepresentation is a dubious translation:
-lean 3 declaration is
- forall {ι : Type.{u1}} [_inst_1 : Fintype.{u1} ι] {M : Type.{u2}} [_inst_2 : AddCommGroup.{u2} M] (R : Type.{u3}) [_inst_3 : CommRing.{u3} R] [_inst_4 : Module.{u3, u2} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2)], (ι -> M) -> (forall [_inst_5 : DecidableEq.{succ u1} ι], Subalgebra.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.algebra.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))))
-but is expected to have type
- forall {ι : Type.{u1}} [_inst_1 : Fintype.{u1} ι] {M : Type.{u2}} [_inst_2 : AddCommGroup.{u2} M] (R : Type.{u3}) [_inst_3 : CommRing.{u3} R] [_inst_4 : Module.{u3, u2} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2)], (ι -> M) -> (forall [_inst_5 : DecidableEq.{succ u1} ι], Subalgebra.{u3, max u3 u1} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))))
-Case conversion may be inaccurate. Consider using '#align matrix.is_representation Matrix.isRepresentationₓ'. -/
/-- The subalgebra of `matrix ι ι R` that consists of matrices that actually represent
endomorphisms on `M`. -/
def Matrix.isRepresentation : Subalgebra R (Matrix ι ι R)
@@ -241,9 +181,6 @@ def Matrix.isRepresentation : Subalgebra R (Matrix ι ι R)
algebraMap_mem' r := ⟨r • 1, Matrix.Represents.one.smul r⟩
#align matrix.is_representation Matrix.isRepresentation
-/- warning: matrix.is_representation.to_End -> Matrix.isRepresentation.toEnd is a dubious translation:
-<too large>
-Case conversion may be inaccurate. Consider using '#align matrix.is_representation.to_End Matrix.isRepresentation.toEndₓ'. -/
/-- The map sending a matrix to the endomorphism it represents. This is an `R`-algebra morphism. -/
noncomputable def Matrix.isRepresentation.toEnd : Matrix.isRepresentation R b →ₐ[R] Module.End R M
where
@@ -256,26 +193,17 @@ noncomputable def Matrix.isRepresentation.toEnd : Matrix.isRepresentation R b
(r • 1 : Matrix.isRepresentation R b).2.choose_spec.Eq hb (Matrix.Represents.one.smul r)
#align matrix.is_representation.to_End Matrix.isRepresentation.toEnd
-/- warning: matrix.is_representation.to_End_represents -> Matrix.isRepresentation.toEnd_represents is a dubious translation:
-<too large>
-Case conversion may be inaccurate. Consider using '#align matrix.is_representation.to_End_represents Matrix.isRepresentation.toEnd_representsₓ'. -/
theorem Matrix.isRepresentation.toEnd_represents (A : Matrix.isRepresentation R b) :
(A : Matrix ι ι R).Represents b (Matrix.isRepresentation.toEnd R b hb A) :=
A.2.choose_spec
#align matrix.is_representation.to_End_represents Matrix.isRepresentation.toEnd_represents
-/- warning: matrix.is_representation.eq_to_End_of_represents -> Matrix.isRepresentation.eq_toEnd_of_represents is a dubious translation:
-<too large>
-Case conversion may be inaccurate. Consider using '#align matrix.is_representation.eq_to_End_of_represents Matrix.isRepresentation.eq_toEnd_of_representsₓ'. -/
theorem Matrix.isRepresentation.eq_toEnd_of_represents (A : Matrix.isRepresentation R b)
{f : Module.End R M} (h : (A : Matrix ι ι R).Represents b f) :
Matrix.isRepresentation.toEnd R b hb A = f :=
A.2.choose_spec.Eq hb h
#align matrix.is_representation.eq_to_End_of_represents Matrix.isRepresentation.eq_toEnd_of_represents
-/- warning: matrix.is_representation.to_End_exists_mem_ideal -> Matrix.isRepresentation.toEnd_exists_mem_ideal is a dubious translation:
-<too large>
-Case conversion may be inaccurate. Consider using '#align matrix.is_representation.to_End_exists_mem_ideal Matrix.isRepresentation.toEnd_exists_mem_idealₓ'. -/
theorem Matrix.isRepresentation.toEnd_exists_mem_ideal (f : Module.End R M) (I : Ideal R)
(hI : f.range ≤ I • ⊤) : ∃ M, Matrix.isRepresentation.toEnd R b hb M = f ∧ ∀ i j, M.1 i j ∈ I :=
by
@@ -294,9 +222,6 @@ theorem Matrix.isRepresentation.toEnd_exists_mem_ideal (f : Module.End R M) (I :
fun i j => (bM' (b j) i).Prop⟩
#align matrix.is_representation.to_End_exists_mem_ideal Matrix.isRepresentation.toEnd_exists_mem_ideal
-/- warning: matrix.is_representation.to_End_surjective -> Matrix.isRepresentation.toEnd_surjective is a dubious translation:
-<too large>
-Case conversion may be inaccurate. Consider using '#align matrix.is_representation.to_End_surjective Matrix.isRepresentation.toEnd_surjectiveₓ'. -/
theorem Matrix.isRepresentation.toEnd_surjective :
Function.Surjective (Matrix.isRepresentation.toEnd R b hb) :=
by
@@ -308,9 +233,6 @@ theorem Matrix.isRepresentation.toEnd_surjective :
end
-/- warning: linear_map.exists_monic_and_coeff_mem_pow_and_aeval_eq_zero_of_range_le_smul -> LinearMap.exists_monic_and_coeff_mem_pow_and_aeval_eq_zero_of_range_le_smul is a dubious translation:
-<too large>
-Case conversion may be inaccurate. Consider using '#align linear_map.exists_monic_and_coeff_mem_pow_and_aeval_eq_zero_of_range_le_smul LinearMap.exists_monic_and_coeff_mem_pow_and_aeval_eq_zero_of_range_le_smulₓ'. -/
/-- The **Cayley-Hamilton Theorem** for f.g. modules over arbitrary rings states that for each
`R`-endomorphism `φ` of an `R`-module `M` such that `φ(M) ≤ I • M` for some ideal `I`, there
exists some `n` and some `aᵢ ∈ Iⁱ` such that `φⁿ + a₁ φⁿ⁻¹ + ⋯ + aₙ = 0`.
mathlib commit https://github.com/leanprover-community/mathlib/commit/917c3c072e487b3cccdbfeff17e75b40e45f66cb
@@ -101,9 +101,7 @@ theorem PiToModule.fromEnd_injective (hb : Submodule.span R (Set.range b) = ⊤)
by
intro x y e
ext m
- obtain ⟨m, rfl⟩ : m ∈ (Fintype.total R R b).range :=
- by
- rw [(Fintype.range_total R b).trans hb]
+ obtain ⟨m, rfl⟩ : m ∈ (Fintype.total R R b).range := by rw [(Fintype.range_total R b).trans hb];
trivial
exact (LinearMap.congr_fun e m : _)
#align pi_to_module.from_End_injective PiToModule.fromEnd_injective
@@ -281,9 +279,7 @@ Case conversion may be inaccurate. Consider using '#align matrix.is_representati
theorem Matrix.isRepresentation.toEnd_exists_mem_ideal (f : Module.End R M) (I : Ideal R)
(hI : f.range ≤ I • ⊤) : ∃ M, Matrix.isRepresentation.toEnd R b hb M = f ∧ ∀ i j, M.1 i j ∈ I :=
by
- have : ∀ x, f x ∈ (Ideal.finsuppTotal ι M I b).range :=
- by
- rw [Ideal.range_finsuppTotal, hb]
+ have : ∀ x, f x ∈ (Ideal.finsuppTotal ι M I b).range := by rw [Ideal.range_finsuppTotal, hb];
exact fun x => hI (f.mem_range_self x)
choose bM' hbM'
let A : Matrix ι ι R := fun i j => bM' (b j) i
mathlib commit https://github.com/leanprover-community/mathlib/commit/917c3c072e487b3cccdbfeff17e75b40e45f66cb
@@ -48,10 +48,7 @@ def PiToModule.fromMatrix [DecidableEq ι] : Matrix ι ι R →ₗ[R] (ι → R)
-/
/- warning: pi_to_module.from_matrix_apply -> PiToModule.fromMatrix_apply is a dubious translation:
-lean 3 declaration is
- forall {ι : Type.{u1}} [_inst_1 : Fintype.{u1} ι] {M : Type.{u2}} [_inst_2 : AddCommGroup.{u2} M] (R : Type.{u3}) [_inst_3 : CommRing.{u3} R] [_inst_4 : Module.{u3, u2} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2)] (b : ι -> M) [_inst_5 : DecidableEq.{succ u1} ι] (A : Matrix.{u1, u1, u3} ι ι R) (w : ι -> R), Eq.{succ u2} M (coeFn.{max (succ (max u1 u3)) (succ u2), max (succ (max u1 u3)) (succ u2)} (LinearMap.{u3, u3, max u1 u3, u2} R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) (ι -> R) M (Pi.addCommMonoid.{u1, u3} ι (fun (ᾰ : ι) => R) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} R (NonUnitalNonAssocRing.toAddCommGroup.{u3} R (NonAssocRing.toNonUnitalNonAssocRing.{u3} R (Ring.toNonAssocRing.{u3} R (CommRing.toRing.{u3} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (Pi.Function.module.{u1, u3, u3} ι R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u3} R (NonUnitalNonAssocRing.toAddCommGroup.{u3} R (NonAssocRing.toNonUnitalNonAssocRing.{u3} R (Ring.toNonAssocRing.{u3} R (CommRing.toRing.{u3} R _inst_3))))) (Semiring.toModule.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) _inst_4) (fun (_x : LinearMap.{u3, u3, max u1 u3, u2} R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) (ι -> R) M (Pi.addCommMonoid.{u1, u3} ι (fun (ᾰ : ι) => R) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} R (NonUnitalNonAssocRing.toAddCommGroup.{u3} R (NonAssocRing.toNonUnitalNonAssocRing.{u3} R (Ring.toNonAssocRing.{u3} R (CommRing.toRing.{u3} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (Pi.Function.module.{u1, u3, u3} ι R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u3} R (NonUnitalNonAssocRing.toAddCommGroup.{u3} R (NonAssocRing.toNonUnitalNonAssocRing.{u3} R (Ring.toNonAssocRing.{u3} R (CommRing.toRing.{u3} R _inst_3))))) (Semiring.toModule.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) _inst_4) => (ι -> R) -> M) (LinearMap.hasCoeToFun.{u3, u3, max u1 u3, u2} R R (ι -> R) M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Pi.addCommMonoid.{u1, u3} ι (fun (ᾰ : ι) => R) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} R (NonUnitalNonAssocRing.toAddCommGroup.{u3} R (NonAssocRing.toNonUnitalNonAssocRing.{u3} R (Ring.toNonAssocRing.{u3} R (CommRing.toRing.{u3} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (Pi.Function.module.{u1, u3, u3} ι R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u3} R (NonUnitalNonAssocRing.toAddCommGroup.{u3} R (NonAssocRing.toNonUnitalNonAssocRing.{u3} R (Ring.toNonAssocRing.{u3} R (CommRing.toRing.{u3} R _inst_3))))) (Semiring.toModule.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) _inst_4 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3))))) (coeFn.{max (succ (max u1 u3)) (succ (max (max u1 u3) u2)), max (succ (max u1 u3)) (succ (max (max u1 u3) u2))} (LinearMap.{u3, u3, max u1 u3, max (max u1 u3) u2} R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) (Matrix.{u1, u1, u3} ι ι R) (LinearMap.{u3, u3, max u1 u3, u2} R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) (ι -> R) M (Pi.addCommMonoid.{u1, u3} ι (fun (ᾰ : ι) => R) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} R (NonUnitalNonAssocRing.toAddCommGroup.{u3} R (NonAssocRing.toNonUnitalNonAssocRing.{u3} R (Ring.toNonAssocRing.{u3} R (CommRing.toRing.{u3} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (Pi.Function.module.{u1, u3, u3} ι R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u3} R (NonUnitalNonAssocRing.toAddCommGroup.{u3} R (NonAssocRing.toNonUnitalNonAssocRing.{u3} R (Ring.toNonAssocRing.{u3} R (CommRing.toRing.{u3} R _inst_3))))) (Semiring.toModule.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) _inst_4) (Matrix.addCommMonoid.{u3, u1, u1} ι ι R (AddCommGroup.toAddCommMonoid.{u3} R (NonUnitalNonAssocRing.toAddCommGroup.{u3} R (NonAssocRing.toNonUnitalNonAssocRing.{u3} R (Ring.toNonAssocRing.{u3} R (CommRing.toRing.{u3} R _inst_3)))))) (LinearMap.addCommMonoid.{u3, u3, max u1 u3, u2} R R (ι -> R) M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Pi.addCommMonoid.{u1, u3} ι (fun (ᾰ : ι) => R) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} R (NonUnitalNonAssocRing.toAddCommGroup.{u3} R (NonAssocRing.toNonUnitalNonAssocRing.{u3} R (Ring.toNonAssocRing.{u3} R (CommRing.toRing.{u3} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (Pi.Function.module.{u1, u3, u3} ι R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u3} R (NonUnitalNonAssocRing.toAddCommGroup.{u3} R (NonAssocRing.toNonUnitalNonAssocRing.{u3} R (Ring.toNonAssocRing.{u3} R (CommRing.toRing.{u3} R _inst_3))))) (Semiring.toModule.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) _inst_4 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3))))) (Matrix.module.{u3, u1, u1, u3} ι ι R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u3} R (NonUnitalNonAssocRing.toAddCommGroup.{u3} R (NonAssocRing.toNonUnitalNonAssocRing.{u3} R (Ring.toNonAssocRing.{u3} R (CommRing.toRing.{u3} R _inst_3))))) (Semiring.toModule.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) (LinearMap.module.{u3, u3, u3, max u1 u3, u2} R R R (ι -> R) M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Pi.addCommMonoid.{u1, u3} ι (fun (ᾰ : ι) => R) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} R (NonUnitalNonAssocRing.toAddCommGroup.{u3} R (NonAssocRing.toNonUnitalNonAssocRing.{u3} R (Ring.toNonAssocRing.{u3} R (CommRing.toRing.{u3} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (Pi.Function.module.{u1, u3, u3} ι R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u3} R (NonUnitalNonAssocRing.toAddCommGroup.{u3} R (NonAssocRing.toNonUnitalNonAssocRing.{u3} R (Ring.toNonAssocRing.{u3} R (CommRing.toRing.{u3} R _inst_3))))) (Semiring.toModule.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) _inst_4 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) _inst_4 (PiToModule.fromMatrix._proof_1.{u2, u3} M _inst_2 R _inst_3 _inst_4))) (fun (_x : LinearMap.{u3, u3, max u1 u3, max (max u1 u3) u2} R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) (Matrix.{u1, u1, u3} ι ι R) (LinearMap.{u3, u3, max u1 u3, u2} R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) (ι -> R) M (Pi.addCommMonoid.{u1, u3} ι (fun (ᾰ : ι) => R) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} R (NonUnitalNonAssocRing.toAddCommGroup.{u3} R (NonAssocRing.toNonUnitalNonAssocRing.{u3} R (Ring.toNonAssocRing.{u3} R (CommRing.toRing.{u3} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (Pi.Function.module.{u1, u3, u3} ι R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u3} R (NonUnitalNonAssocRing.toAddCommGroup.{u3} R (NonAssocRing.toNonUnitalNonAssocRing.{u3} R (Ring.toNonAssocRing.{u3} R (CommRing.toRing.{u3} R _inst_3))))) (Semiring.toModule.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) _inst_4) (Matrix.addCommMonoid.{u3, u1, u1} ι ι R (AddCommGroup.toAddCommMonoid.{u3} R (NonUnitalNonAssocRing.toAddCommGroup.{u3} R (NonAssocRing.toNonUnitalNonAssocRing.{u3} R (Ring.toNonAssocRing.{u3} R (CommRing.toRing.{u3} R _inst_3)))))) (LinearMap.addCommMonoid.{u3, u3, max u1 u3, u2} R R (ι -> R) M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Pi.addCommMonoid.{u1, u3} ι (fun (ᾰ : ι) => R) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} R (NonUnitalNonAssocRing.toAddCommGroup.{u3} R (NonAssocRing.toNonUnitalNonAssocRing.{u3} R (Ring.toNonAssocRing.{u3} R (CommRing.toRing.{u3} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (Pi.Function.module.{u1, u3, u3} ι R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u3} R (NonUnitalNonAssocRing.toAddCommGroup.{u3} R (NonAssocRing.toNonUnitalNonAssocRing.{u3} R (Ring.toNonAssocRing.{u3} R (CommRing.toRing.{u3} R _inst_3))))) (Semiring.toModule.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) _inst_4 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3))))) (Matrix.module.{u3, u1, u1, u3} ι ι R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u3} R (NonUnitalNonAssocRing.toAddCommGroup.{u3} R (NonAssocRing.toNonUnitalNonAssocRing.{u3} R (Ring.toNonAssocRing.{u3} R (CommRing.toRing.{u3} R _inst_3))))) (Semiring.toModule.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) (LinearMap.module.{u3, u3, u3, max u1 u3, u2} R R R (ι -> R) M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Pi.addCommMonoid.{u1, u3} ι (fun (ᾰ : ι) => R) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} R (NonUnitalNonAssocRing.toAddCommGroup.{u3} R (NonAssocRing.toNonUnitalNonAssocRing.{u3} R (Ring.toNonAssocRing.{u3} R (CommRing.toRing.{u3} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (Pi.Function.module.{u1, u3, u3} ι R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u3} R (NonUnitalNonAssocRing.toAddCommGroup.{u3} R (NonAssocRing.toNonUnitalNonAssocRing.{u3} R (Ring.toNonAssocRing.{u3} R (CommRing.toRing.{u3} R _inst_3))))) (Semiring.toModule.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) _inst_4 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) _inst_4 (PiToModule.fromMatrix._proof_1.{u2, u3} M _inst_2 R _inst_3 _inst_4))) => (Matrix.{u1, u1, u3} ι ι R) -> (LinearMap.{u3, u3, max u1 u3, u2} R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) (ι -> R) M (Pi.addCommMonoid.{u1, u3} ι (fun (ᾰ : ι) => R) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} R (NonUnitalNonAssocRing.toAddCommGroup.{u3} R (NonAssocRing.toNonUnitalNonAssocRing.{u3} R (Ring.toNonAssocRing.{u3} R (CommRing.toRing.{u3} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (Pi.Function.module.{u1, u3, u3} ι R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u3} R (NonUnitalNonAssocRing.toAddCommGroup.{u3} R (NonAssocRing.toNonUnitalNonAssocRing.{u3} R (Ring.toNonAssocRing.{u3} R (CommRing.toRing.{u3} R _inst_3))))) (Semiring.toModule.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) _inst_4)) (LinearMap.hasCoeToFun.{u3, u3, max u1 u3, max (max u1 u3) u2} R R (Matrix.{u1, u1, u3} ι ι R) (LinearMap.{u3, u3, max u1 u3, u2} R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) (ι -> R) M (Pi.addCommMonoid.{u1, u3} ι (fun (ᾰ : ι) => R) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} R (NonUnitalNonAssocRing.toAddCommGroup.{u3} R (NonAssocRing.toNonUnitalNonAssocRing.{u3} R (Ring.toNonAssocRing.{u3} R (CommRing.toRing.{u3} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (Pi.Function.module.{u1, u3, u3} ι R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u3} R (NonUnitalNonAssocRing.toAddCommGroup.{u3} R (NonAssocRing.toNonUnitalNonAssocRing.{u3} R (Ring.toNonAssocRing.{u3} R (CommRing.toRing.{u3} R _inst_3))))) (Semiring.toModule.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) _inst_4) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Matrix.addCommMonoid.{u3, u1, u1} ι ι R (AddCommGroup.toAddCommMonoid.{u3} R (NonUnitalNonAssocRing.toAddCommGroup.{u3} R (NonAssocRing.toNonUnitalNonAssocRing.{u3} R (Ring.toNonAssocRing.{u3} R (CommRing.toRing.{u3} R _inst_3)))))) (LinearMap.addCommMonoid.{u3, u3, max u1 u3, u2} R R (ι -> R) M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Pi.addCommMonoid.{u1, u3} ι (fun (ᾰ : ι) => R) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} R (NonUnitalNonAssocRing.toAddCommGroup.{u3} R (NonAssocRing.toNonUnitalNonAssocRing.{u3} R (Ring.toNonAssocRing.{u3} R (CommRing.toRing.{u3} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (Pi.Function.module.{u1, u3, u3} ι R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u3} R (NonUnitalNonAssocRing.toAddCommGroup.{u3} R (NonAssocRing.toNonUnitalNonAssocRing.{u3} R (Ring.toNonAssocRing.{u3} R (CommRing.toRing.{u3} R _inst_3))))) (Semiring.toModule.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) _inst_4 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3))))) (Matrix.module.{u3, u1, u1, u3} ι ι R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u3} R (NonUnitalNonAssocRing.toAddCommGroup.{u3} R (NonAssocRing.toNonUnitalNonAssocRing.{u3} R (Ring.toNonAssocRing.{u3} R (CommRing.toRing.{u3} R _inst_3))))) (Semiring.toModule.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) (LinearMap.module.{u3, u3, u3, max u1 u3, u2} R R R (ι -> R) M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Pi.addCommMonoid.{u1, u3} ι (fun (ᾰ : ι) => R) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} R (NonUnitalNonAssocRing.toAddCommGroup.{u3} R (NonAssocRing.toNonUnitalNonAssocRing.{u3} R (Ring.toNonAssocRing.{u3} R (CommRing.toRing.{u3} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (Pi.Function.module.{u1, u3, u3} ι R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u3} R (NonUnitalNonAssocRing.toAddCommGroup.{u3} R (NonAssocRing.toNonUnitalNonAssocRing.{u3} R (Ring.toNonAssocRing.{u3} R (CommRing.toRing.{u3} R _inst_3))))) (Semiring.toModule.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) _inst_4 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) _inst_4 (PiToModule.fromMatrix._proof_1.{u2, u3} M _inst_2 R _inst_3 _inst_4)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3))))) (PiToModule.fromMatrix.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)) A) w) (coeFn.{max (succ (max u1 u3)) (succ u2), max (succ (max u1 u3)) (succ u2)} (LinearMap.{u3, u3, max u1 u3, u2} R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) (ι -> R) M (Pi.addCommMonoid.{u1, u3} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (Pi.Function.module.{u1, u3, u3} ι R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3))))) (Semiring.toModule.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) _inst_4) (fun (_x : LinearMap.{u3, u3, max u1 u3, u2} R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) (ι -> R) M (Pi.addCommMonoid.{u1, u3} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (Pi.Function.module.{u1, u3, u3} ι R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3))))) (Semiring.toModule.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) _inst_4) => (ι -> R) -> M) (LinearMap.hasCoeToFun.{u3, u3, max u1 u3, u2} R R (ι -> R) M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Pi.addCommMonoid.{u1, u3} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (Pi.Function.module.{u1, u3, u3} ι R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3))))) (Semiring.toModule.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) _inst_4 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3))))) (coeFn.{max (succ (max u1 u2)) (succ (max (max u1 u3) u2)), max (succ (max u1 u2)) (succ (max (max u1 u3) u2))} (LinearMap.{u3, u3, max u1 u2, max (max u1 u3) u2} R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) (ι -> M) (LinearMap.{u3, u3, max u1 u3, u2} R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) (ι -> R) M (Pi.addCommMonoid.{u1, u3} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (Pi.Function.module.{u1, u3, u3} ι R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3))))) (Semiring.toModule.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) _inst_4) (Pi.addCommMonoid.{u1, u2} ι (fun (ᾰ : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u2} M _inst_2)) (LinearMap.addCommMonoid.{u3, u3, max u1 u3, u2} R R (ι -> R) M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Pi.addCommMonoid.{u1, u3} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (Pi.Function.module.{u1, u3, u3} ι R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3))))) (Semiring.toModule.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) _inst_4 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3))))) (Pi.Function.module.{u1, u3, u2} ι R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (LinearMap.module.{u3, u3, u3, max u1 u3, u2} R R R (ι -> R) M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Pi.addCommMonoid.{u1, u3} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (Pi.Function.module.{u1, u3, u3} ι R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3))))) (Semiring.toModule.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) _inst_4 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) _inst_4 (smulCommClass_self.{u3, u2} R M (CommRing.toCommMonoid.{u3} R _inst_3) (MulActionWithZero.toMulAction.{u3, u2} R M (Semiring.toMonoidWithZero.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3))) (AddZeroClass.toHasZero.{u2} M (AddMonoid.toAddZeroClass.{u2} M (AddCommMonoid.toAddMonoid.{u2} M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2)))) (Module.toMulActionWithZero.{u3, u2} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4))))) (fun (_x : LinearMap.{u3, u3, max u1 u2, max (max u1 u3) u2} R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) (ι -> M) (LinearMap.{u3, u3, max u1 u3, u2} R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) (ι -> R) M (Pi.addCommMonoid.{u1, u3} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (Pi.Function.module.{u1, u3, u3} ι R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3))))) (Semiring.toModule.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) _inst_4) (Pi.addCommMonoid.{u1, u2} ι (fun (ᾰ : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u2} M _inst_2)) (LinearMap.addCommMonoid.{u3, u3, max u1 u3, u2} R R (ι -> R) M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Pi.addCommMonoid.{u1, u3} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (Pi.Function.module.{u1, u3, u3} ι R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3))))) (Semiring.toModule.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) _inst_4 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3))))) (Pi.Function.module.{u1, u3, u2} ι R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (LinearMap.module.{u3, u3, u3, max u1 u3, u2} R R R (ι -> R) M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Pi.addCommMonoid.{u1, u3} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (Pi.Function.module.{u1, u3, u3} ι R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3))))) (Semiring.toModule.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) _inst_4 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) _inst_4 (smulCommClass_self.{u3, u2} R M (CommRing.toCommMonoid.{u3} R _inst_3) (MulActionWithZero.toMulAction.{u3, u2} R M (Semiring.toMonoidWithZero.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3))) (AddZeroClass.toHasZero.{u2} M (AddMonoid.toAddZeroClass.{u2} M (AddCommMonoid.toAddMonoid.{u2} M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2)))) (Module.toMulActionWithZero.{u3, u2} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4))))) => (ι -> M) -> (LinearMap.{u3, u3, max u1 u3, u2} R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) (ι -> R) M (Pi.addCommMonoid.{u1, u3} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (Pi.Function.module.{u1, u3, u3} ι R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3))))) (Semiring.toModule.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) _inst_4)) (LinearMap.hasCoeToFun.{u3, u3, max u1 u2, max (max u1 u3) u2} R R (ι -> M) (LinearMap.{u3, u3, max u1 u3, u2} R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) (ι -> R) M (Pi.addCommMonoid.{u1, u3} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (Pi.Function.module.{u1, u3, u3} ι R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3))))) (Semiring.toModule.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) _inst_4) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Pi.addCommMonoid.{u1, u2} ι (fun (ᾰ : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u2} M _inst_2)) (LinearMap.addCommMonoid.{u3, u3, max u1 u3, u2} R R (ι -> R) M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Pi.addCommMonoid.{u1, u3} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (Pi.Function.module.{u1, u3, u3} ι R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3))))) (Semiring.toModule.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) _inst_4 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3))))) (Pi.Function.module.{u1, u3, u2} ι R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (LinearMap.module.{u3, u3, u3, max u1 u3, u2} R R R (ι -> R) M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Pi.addCommMonoid.{u1, u3} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (Pi.Function.module.{u1, u3, u3} ι R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3))))) (Semiring.toModule.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) _inst_4 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) _inst_4 (smulCommClass_self.{u3, u2} R M (CommRing.toCommMonoid.{u3} R _inst_3) (MulActionWithZero.toMulAction.{u3, u2} R M (Semiring.toMonoidWithZero.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3))) (AddZeroClass.toHasZero.{u2} M (AddMonoid.toAddZeroClass.{u2} M (AddCommMonoid.toAddMonoid.{u2} M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2)))) (Module.toMulActionWithZero.{u3, u2} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4)))) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3))))) (Fintype.total.{u1, u2, u3, u3} ι M R _inst_1 (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4 R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) _inst_4 (smulCommClass_self.{u3, u2} R M (CommRing.toCommMonoid.{u3} R _inst_3) (MulActionWithZero.toMulAction.{u3, u2} R M (Semiring.toMonoidWithZero.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3))) (AddZeroClass.toHasZero.{u2} M (AddMonoid.toAddZeroClass.{u2} M (AddCommMonoid.toAddMonoid.{u2} M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2)))) (Module.toMulActionWithZero.{u3, u2} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4)))) b) (Matrix.mulVec.{u3, u1, u1} ι ι R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u3} R (NonAssocRing.toNonUnitalNonAssocRing.{u3} R (Ring.toNonAssocRing.{u3} R (CommRing.toRing.{u3} R _inst_3)))) _inst_1 A w))
-but is expected to have type
- forall {ι : Type.{u3}} [_inst_1 : Fintype.{u3} ι] {M : Type.{u1}} [_inst_2 : AddCommGroup.{u1} M] (R : Type.{u2}) [_inst_3 : CommRing.{u2} R] [_inst_4 : Module.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2)] (b : ι -> M) [_inst_5 : DecidableEq.{succ u3} ι] (A : Matrix.{u3, u3, u2} ι ι R) (w : ι -> R), Eq.{succ u1} ((fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6193 : ι -> R) => M) w) (FunLike.coe.{max (max (succ u3) (succ u1)) (succ u2), max (succ u3) (succ u2), succ u1} ((fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6193 : Matrix.{u3, u3, u2} ι ι R) => LinearMap.{u2, u2, max u3 u2, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (ι -> R) M (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.Charpoly.LinearMap._hyg.130 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.Charpoly.LinearMap._hyg.130 : ι) => R) R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_3))))) (fun (i : ι) => Semiring.toModule.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) _inst_4) A) (ι -> R) (fun (_x : ι -> R) => (fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6193 : ι -> R) => M) _x) (LinearMap.instFunLikeLinearMap.{u2, u2, max u3 u2, u1} R R (ι -> R) M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Pi.addCommMonoid.{u3, u2} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.Charpoly.LinearMap._hyg.130 : ι) => R) R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_3))))) (fun (i : ι) => Semiring.toModule.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) _inst_4 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) (FunLike.coe.{max (max (succ u3) (succ u1)) (succ u2), max (succ u3) (succ u2), max (max (succ u3) (succ u1)) (succ u2)} (LinearMap.{u2, u2, max u2 u3, max u1 u3 u2} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (LinearMap.{u2, u2, max u3 u2, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (ι -> R) M (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.Charpoly.LinearMap._hyg.130 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.Charpoly.LinearMap._hyg.130 : ι) => R) R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_3))))) (fun (i : ι) => Semiring.toModule.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) _inst_4) (Matrix.addCommMonoid.{u2, u3, u3} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_3)))))) (LinearMap.addCommMonoid.{u2, u2, max u3 u2, u1} R R (ι -> R) M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.Charpoly.LinearMap._hyg.130 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.Charpoly.LinearMap._hyg.130 : ι) => R) R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_3))))) (fun (i : ι) => Semiring.toModule.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) _inst_4 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) (Matrix.module.{u2, u3, u3, u2} ι ι R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_3))))) (Semiring.toModule.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (LinearMap.instModuleLinearMapAddCommMonoid.{u2, u2, u2, max u3 u2, u1} R R R (ι -> R) M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.Charpoly.LinearMap._hyg.130 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.Charpoly.LinearMap._hyg.130 : ι) => R) R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_3))))) (fun (i : ι) => Semiring.toModule.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) _inst_4 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_4 (smulCommClass_self.{u2, u1} R M (CommRing.toCommMonoid.{u2} R _inst_3) (MulActionWithZero.toMulAction.{u2, u1} R M (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (NegZeroClass.toZero.{u1} M (SubNegZeroMonoid.toNegZeroClass.{u1} M (SubtractionMonoid.toSubNegZeroMonoid.{u1} M (SubtractionCommMonoid.toSubtractionMonoid.{u1} M (AddCommGroup.toDivisionAddCommMonoid.{u1} M _inst_2))))) (Module.toMulActionWithZero.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4))))) (Matrix.{u3, u3, u2} ι ι R) (fun (_x : Matrix.{u3, u3, u2} ι ι R) => (fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6193 : Matrix.{u3, u3, u2} ι ι R) => LinearMap.{u2, u2, max u3 u2, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (ι -> R) M (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.Charpoly.LinearMap._hyg.130 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.Charpoly.LinearMap._hyg.130 : ι) => R) R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_3))))) (fun (i : ι) => Semiring.toModule.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) _inst_4) _x) (LinearMap.instFunLikeLinearMap.{u2, u2, max u3 u2, max (max u3 u1) u2} R R (Matrix.{u3, u3, u2} ι ι R) (LinearMap.{u2, u2, max u3 u2, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (ι -> R) M (Pi.addCommMonoid.{u3, u2} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.Charpoly.LinearMap._hyg.130 : ι) => R) R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_3))))) (fun (i : ι) => Semiring.toModule.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) _inst_4) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Matrix.addCommMonoid.{u2, u3, u3} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_3)))))) (LinearMap.addCommMonoid.{u2, u2, max u3 u2, u1} R R (ι -> R) M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Pi.addCommMonoid.{u3, u2} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.Charpoly.LinearMap._hyg.130 : ι) => R) R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_3))))) (fun (i : ι) => Semiring.toModule.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) _inst_4 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) (Matrix.module.{u2, u3, u3, u2} ι ι R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_3))))) (Semiring.toModule.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (LinearMap.instModuleLinearMapAddCommMonoid.{u2, u2, u2, max u3 u2, u1} R R R (ι -> R) M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Pi.addCommMonoid.{u3, u2} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.Charpoly.LinearMap._hyg.130 : ι) => R) R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_3))))) (fun (i : ι) => Semiring.toModule.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) _inst_4 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_4 (smulCommClass_self.{u2, u1} R M (CommRing.toCommMonoid.{u2} R _inst_3) (MulActionWithZero.toMulAction.{u2, u1} R M (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (NegZeroClass.toZero.{u1} M (SubNegZeroMonoid.toNegZeroClass.{u1} M (SubtractionMonoid.toSubNegZeroMonoid.{u1} M (SubtractionCommMonoid.toSubtractionMonoid.{u1} M (AddCommGroup.toDivisionAddCommMonoid.{u1} M _inst_2))))) (Module.toMulActionWithZero.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) (PiToModule.fromMatrix.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)) A) w) (FunLike.coe.{max (max (succ u3) (succ u1)) (succ u2), max (succ u3) (succ u2), succ u1} ((fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6193 : ι -> M) => LinearMap.{u2, u2, max u3 u2, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (ι -> R) M (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Finsupp._hyg.14570 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Finsupp._hyg.14570 : ι) => R) R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) (fun (i : ι) => Semiring.toModule.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) _inst_4) b) (ι -> R) (fun (_x : ι -> R) => (fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6193 : ι -> R) => M) _x) (LinearMap.instFunLikeLinearMap.{u2, u2, max u3 u2, u1} R R (ι -> R) M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Pi.addCommMonoid.{u3, u2} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Finsupp._hyg.14570 : ι) => R) R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) (fun (i : ι) => Semiring.toModule.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) _inst_4 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), max (succ u1) (succ u3), max (max (succ u2) (succ u1)) (succ u3)} (LinearMap.{u2, u2, max u3 u1, max u1 u3 u2} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (ι -> M) (LinearMap.{u2, u2, max u3 u2, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (ι -> R) M (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Finsupp._hyg.14570 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Finsupp._hyg.14570 : ι) => R) R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) (fun (i : ι) => Semiring.toModule.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) _inst_4) (Pi.addCommMonoid.{u3, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Finsupp._hyg.14558 : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u1} M _inst_2)) (LinearMap.addCommMonoid.{u2, u2, max u3 u2, u1} R R (ι -> R) M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Finsupp._hyg.14570 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Finsupp._hyg.14570 : ι) => R) R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) (fun (i : ι) => Semiring.toModule.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) _inst_4 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) (Pi.module.{u3, u1, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Finsupp._hyg.14558 : ι) => M) R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (fun (i : ι) => _inst_4)) (LinearMap.instModuleLinearMapAddCommMonoid.{u2, u2, u2, max u3 u2, u1} R R R (ι -> R) M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Finsupp._hyg.14570 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Finsupp._hyg.14570 : ι) => R) R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) (fun (i : ι) => Semiring.toModule.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) _inst_4 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_4 (smulCommClass_self.{u2, u1} R M (CommRing.toCommMonoid.{u2} R _inst_3) (MulActionWithZero.toMulAction.{u2, u1} R M (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (NegZeroClass.toZero.{u1} M (SubNegZeroMonoid.toNegZeroClass.{u1} M (SubtractionMonoid.toSubNegZeroMonoid.{u1} M (SubtractionCommMonoid.toSubtractionMonoid.{u1} M (AddCommGroup.toDivisionAddCommMonoid.{u1} M _inst_2))))) (Module.toMulActionWithZero.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4))))) (ι -> M) (fun (_x : ι -> M) => (fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6193 : ι -> M) => LinearMap.{u2, u2, max u3 u2, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (ι -> R) M (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Finsupp._hyg.14570 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Finsupp._hyg.14570 : ι) => R) R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) (fun (i : ι) => Semiring.toModule.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) _inst_4) _x) (LinearMap.instFunLikeLinearMap.{u2, u2, max u1 u3, max (max u2 u1) u3} R R (ι -> M) (LinearMap.{u2, u2, max u3 u2, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (ι -> R) M (Pi.addCommMonoid.{u3, u2} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Finsupp._hyg.14570 : ι) => R) R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) (fun (i : ι) => Semiring.toModule.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) _inst_4) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Pi.addCommMonoid.{u3, u1} ι (fun (ᾰ : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u1} M _inst_2)) (LinearMap.addCommMonoid.{u2, u2, max u3 u2, u1} R R (ι -> R) M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Pi.addCommMonoid.{u3, u2} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Finsupp._hyg.14570 : ι) => R) R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) (fun (i : ι) => Semiring.toModule.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) _inst_4 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) (Pi.module.{u3, u1, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Finsupp._hyg.14558 : ι) => M) R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (fun (i : ι) => _inst_4)) (LinearMap.instModuleLinearMapAddCommMonoid.{u2, u2, u2, max u3 u2, u1} R R R (ι -> R) M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Pi.addCommMonoid.{u3, u2} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Finsupp._hyg.14570 : ι) => R) R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) (fun (i : ι) => Semiring.toModule.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) _inst_4 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_4 (smulCommClass_self.{u2, u1} R M (CommRing.toCommMonoid.{u2} R _inst_3) (MulActionWithZero.toMulAction.{u2, u1} R M (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (NegZeroClass.toZero.{u1} M (SubNegZeroMonoid.toNegZeroClass.{u1} M (SubtractionMonoid.toSubNegZeroMonoid.{u1} M (SubtractionCommMonoid.toSubtractionMonoid.{u1} M (AddCommGroup.toDivisionAddCommMonoid.{u1} M _inst_2))))) (Module.toMulActionWithZero.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) (Fintype.total.{u3, u1, u2, u2} ι M R _inst_1 (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4 R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_4 (smulCommClass_self.{u2, u1} R M (CommRing.toCommMonoid.{u2} R _inst_3) (MulActionWithZero.toMulAction.{u2, u1} R M (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (NegZeroClass.toZero.{u1} M (SubNegZeroMonoid.toNegZeroClass.{u1} M (SubtractionMonoid.toSubNegZeroMonoid.{u1} M (SubtractionCommMonoid.toSubtractionMonoid.{u1} M (AddCommGroup.toDivisionAddCommMonoid.{u1} M _inst_2))))) (Module.toMulActionWithZero.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4)))) b) (Matrix.mulVec.{u2, u3, u3} ι ι R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_3)))) _inst_1 A w))
+<too large>
Case conversion may be inaccurate. Consider using '#align pi_to_module.from_matrix_apply PiToModule.fromMatrix_applyₓ'. -/
theorem PiToModule.fromMatrix_apply [DecidableEq ι] (A : Matrix ι ι R) (w : ι → R) :
PiToModule.fromMatrix R b A w = Fintype.total R R b (A.mulVec w) :=
@@ -59,10 +56,7 @@ theorem PiToModule.fromMatrix_apply [DecidableEq ι] (A : Matrix ι ι R) (w :
#align pi_to_module.from_matrix_apply PiToModule.fromMatrix_apply
/- warning: pi_to_module.from_matrix_apply_single_one -> PiToModule.fromMatrix_apply_single_one is a dubious translation:
-lean 3 declaration is
- forall {ι : Type.{u1}} [_inst_1 : Fintype.{u1} ι] {M : Type.{u2}} [_inst_2 : AddCommGroup.{u2} M] (R : Type.{u3}) [_inst_3 : CommRing.{u3} R] [_inst_4 : Module.{u3, u2} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2)] (b : ι -> M) [_inst_5 : DecidableEq.{succ u1} ι] (A : Matrix.{u1, u1, u3} ι ι R) (j : ι), Eq.{succ u2} M (coeFn.{max (succ (max u1 u3)) (succ u2), max (succ (max u1 u3)) (succ u2)} (LinearMap.{u3, u3, max u1 u3, u2} R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) (ι -> R) M (Pi.addCommMonoid.{u1, u3} ι (fun (ᾰ : ι) => R) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} R (NonUnitalNonAssocRing.toAddCommGroup.{u3} R (NonAssocRing.toNonUnitalNonAssocRing.{u3} R (Ring.toNonAssocRing.{u3} R (CommRing.toRing.{u3} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (Pi.Function.module.{u1, u3, u3} ι R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u3} R (NonUnitalNonAssocRing.toAddCommGroup.{u3} R (NonAssocRing.toNonUnitalNonAssocRing.{u3} R (Ring.toNonAssocRing.{u3} R (CommRing.toRing.{u3} R _inst_3))))) (Semiring.toModule.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) _inst_4) (fun (_x : LinearMap.{u3, u3, max u1 u3, u2} R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) (ι -> R) M (Pi.addCommMonoid.{u1, u3} ι (fun (ᾰ : ι) => R) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} R (NonUnitalNonAssocRing.toAddCommGroup.{u3} R (NonAssocRing.toNonUnitalNonAssocRing.{u3} R (Ring.toNonAssocRing.{u3} R (CommRing.toRing.{u3} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (Pi.Function.module.{u1, u3, u3} ι R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u3} R (NonUnitalNonAssocRing.toAddCommGroup.{u3} R (NonAssocRing.toNonUnitalNonAssocRing.{u3} R (Ring.toNonAssocRing.{u3} R (CommRing.toRing.{u3} R _inst_3))))) (Semiring.toModule.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) _inst_4) => (ι -> R) -> M) (LinearMap.hasCoeToFun.{u3, u3, max u1 u3, u2} R R (ι -> R) M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Pi.addCommMonoid.{u1, u3} ι (fun (ᾰ : ι) => R) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} R (NonUnitalNonAssocRing.toAddCommGroup.{u3} R (NonAssocRing.toNonUnitalNonAssocRing.{u3} R (Ring.toNonAssocRing.{u3} R (CommRing.toRing.{u3} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (Pi.Function.module.{u1, u3, u3} ι R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u3} R (NonUnitalNonAssocRing.toAddCommGroup.{u3} R (NonAssocRing.toNonUnitalNonAssocRing.{u3} R (Ring.toNonAssocRing.{u3} R (CommRing.toRing.{u3} R _inst_3))))) (Semiring.toModule.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) _inst_4 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3))))) (coeFn.{max (succ (max u1 u3)) (succ (max (max u1 u3) u2)), max (succ (max u1 u3)) (succ (max (max u1 u3) u2))} (LinearMap.{u3, u3, max u1 u3, max (max u1 u3) u2} R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) (Matrix.{u1, u1, u3} ι ι R) (LinearMap.{u3, u3, max u1 u3, u2} R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) (ι -> R) M (Pi.addCommMonoid.{u1, u3} ι (fun (ᾰ : ι) => R) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} R (NonUnitalNonAssocRing.toAddCommGroup.{u3} R (NonAssocRing.toNonUnitalNonAssocRing.{u3} R (Ring.toNonAssocRing.{u3} R (CommRing.toRing.{u3} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (Pi.Function.module.{u1, u3, u3} ι R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u3} R (NonUnitalNonAssocRing.toAddCommGroup.{u3} R (NonAssocRing.toNonUnitalNonAssocRing.{u3} R (Ring.toNonAssocRing.{u3} R (CommRing.toRing.{u3} R _inst_3))))) (Semiring.toModule.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) _inst_4) (Matrix.addCommMonoid.{u3, u1, u1} ι ι R (AddCommGroup.toAddCommMonoid.{u3} R (NonUnitalNonAssocRing.toAddCommGroup.{u3} R (NonAssocRing.toNonUnitalNonAssocRing.{u3} R (Ring.toNonAssocRing.{u3} R (CommRing.toRing.{u3} R _inst_3)))))) (LinearMap.addCommMonoid.{u3, u3, max u1 u3, u2} R R (ι -> R) M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Pi.addCommMonoid.{u1, u3} ι (fun (ᾰ : ι) => R) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} R (NonUnitalNonAssocRing.toAddCommGroup.{u3} R (NonAssocRing.toNonUnitalNonAssocRing.{u3} R (Ring.toNonAssocRing.{u3} R (CommRing.toRing.{u3} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (Pi.Function.module.{u1, u3, u3} ι R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u3} R (NonUnitalNonAssocRing.toAddCommGroup.{u3} R (NonAssocRing.toNonUnitalNonAssocRing.{u3} R (Ring.toNonAssocRing.{u3} R (CommRing.toRing.{u3} R _inst_3))))) (Semiring.toModule.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) _inst_4 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3))))) (Matrix.module.{u3, u1, u1, u3} ι ι R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u3} R (NonUnitalNonAssocRing.toAddCommGroup.{u3} R (NonAssocRing.toNonUnitalNonAssocRing.{u3} R (Ring.toNonAssocRing.{u3} R (CommRing.toRing.{u3} R _inst_3))))) (Semiring.toModule.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) (LinearMap.module.{u3, u3, u3, max u1 u3, u2} R R R (ι -> R) M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Pi.addCommMonoid.{u1, u3} ι (fun (ᾰ : ι) => R) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} R (NonUnitalNonAssocRing.toAddCommGroup.{u3} R (NonAssocRing.toNonUnitalNonAssocRing.{u3} R (Ring.toNonAssocRing.{u3} R (CommRing.toRing.{u3} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (Pi.Function.module.{u1, u3, u3} ι R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u3} R (NonUnitalNonAssocRing.toAddCommGroup.{u3} R (NonAssocRing.toNonUnitalNonAssocRing.{u3} R (Ring.toNonAssocRing.{u3} R (CommRing.toRing.{u3} R _inst_3))))) (Semiring.toModule.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) _inst_4 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) _inst_4 (PiToModule.fromMatrix._proof_1.{u2, u3} M _inst_2 R _inst_3 _inst_4))) (fun (_x : LinearMap.{u3, u3, max u1 u3, max (max u1 u3) u2} R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) (Matrix.{u1, u1, u3} ι ι R) (LinearMap.{u3, u3, max u1 u3, u2} R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) (ι -> R) M (Pi.addCommMonoid.{u1, u3} ι (fun (ᾰ : ι) => R) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} R (NonUnitalNonAssocRing.toAddCommGroup.{u3} R (NonAssocRing.toNonUnitalNonAssocRing.{u3} R (Ring.toNonAssocRing.{u3} R (CommRing.toRing.{u3} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (Pi.Function.module.{u1, u3, u3} ι R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u3} R (NonUnitalNonAssocRing.toAddCommGroup.{u3} R (NonAssocRing.toNonUnitalNonAssocRing.{u3} R (Ring.toNonAssocRing.{u3} R (CommRing.toRing.{u3} R _inst_3))))) (Semiring.toModule.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) _inst_4) (Matrix.addCommMonoid.{u3, u1, u1} ι ι R (AddCommGroup.toAddCommMonoid.{u3} R (NonUnitalNonAssocRing.toAddCommGroup.{u3} R (NonAssocRing.toNonUnitalNonAssocRing.{u3} R (Ring.toNonAssocRing.{u3} R (CommRing.toRing.{u3} R _inst_3)))))) (LinearMap.addCommMonoid.{u3, u3, max u1 u3, u2} R R (ι -> R) M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Pi.addCommMonoid.{u1, u3} ι (fun (ᾰ : ι) => R) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} R (NonUnitalNonAssocRing.toAddCommGroup.{u3} R (NonAssocRing.toNonUnitalNonAssocRing.{u3} R (Ring.toNonAssocRing.{u3} R (CommRing.toRing.{u3} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (Pi.Function.module.{u1, u3, u3} ι R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u3} R (NonUnitalNonAssocRing.toAddCommGroup.{u3} R (NonAssocRing.toNonUnitalNonAssocRing.{u3} R (Ring.toNonAssocRing.{u3} R (CommRing.toRing.{u3} R _inst_3))))) (Semiring.toModule.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) _inst_4 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3))))) (Matrix.module.{u3, u1, u1, u3} ι ι R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u3} R (NonUnitalNonAssocRing.toAddCommGroup.{u3} R (NonAssocRing.toNonUnitalNonAssocRing.{u3} R (Ring.toNonAssocRing.{u3} R (CommRing.toRing.{u3} R _inst_3))))) (Semiring.toModule.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) (LinearMap.module.{u3, u3, u3, max u1 u3, u2} R R R (ι -> R) M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Pi.addCommMonoid.{u1, u3} ι (fun (ᾰ : ι) => R) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} R (NonUnitalNonAssocRing.toAddCommGroup.{u3} R (NonAssocRing.toNonUnitalNonAssocRing.{u3} R (Ring.toNonAssocRing.{u3} R (CommRing.toRing.{u3} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (Pi.Function.module.{u1, u3, u3} ι R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u3} R (NonUnitalNonAssocRing.toAddCommGroup.{u3} R (NonAssocRing.toNonUnitalNonAssocRing.{u3} R (Ring.toNonAssocRing.{u3} R (CommRing.toRing.{u3} R _inst_3))))) (Semiring.toModule.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) _inst_4 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) _inst_4 (PiToModule.fromMatrix._proof_1.{u2, u3} M _inst_2 R _inst_3 _inst_4))) => (Matrix.{u1, u1, u3} ι ι R) -> (LinearMap.{u3, u3, max u1 u3, u2} R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) (ι -> R) M (Pi.addCommMonoid.{u1, u3} ι (fun (ᾰ : ι) => R) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} R (NonUnitalNonAssocRing.toAddCommGroup.{u3} R (NonAssocRing.toNonUnitalNonAssocRing.{u3} R (Ring.toNonAssocRing.{u3} R (CommRing.toRing.{u3} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (Pi.Function.module.{u1, u3, u3} ι R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u3} R (NonUnitalNonAssocRing.toAddCommGroup.{u3} R (NonAssocRing.toNonUnitalNonAssocRing.{u3} R (Ring.toNonAssocRing.{u3} R (CommRing.toRing.{u3} R _inst_3))))) (Semiring.toModule.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) _inst_4)) (LinearMap.hasCoeToFun.{u3, u3, max u1 u3, max (max u1 u3) u2} R R (Matrix.{u1, u1, u3} ι ι R) (LinearMap.{u3, u3, max u1 u3, u2} R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) (ι -> R) M (Pi.addCommMonoid.{u1, u3} ι (fun (ᾰ : ι) => R) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} R (NonUnitalNonAssocRing.toAddCommGroup.{u3} R (NonAssocRing.toNonUnitalNonAssocRing.{u3} R (Ring.toNonAssocRing.{u3} R (CommRing.toRing.{u3} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (Pi.Function.module.{u1, u3, u3} ι R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u3} R (NonUnitalNonAssocRing.toAddCommGroup.{u3} R (NonAssocRing.toNonUnitalNonAssocRing.{u3} R (Ring.toNonAssocRing.{u3} R (CommRing.toRing.{u3} R _inst_3))))) (Semiring.toModule.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) _inst_4) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Matrix.addCommMonoid.{u3, u1, u1} ι ι R (AddCommGroup.toAddCommMonoid.{u3} R (NonUnitalNonAssocRing.toAddCommGroup.{u3} R (NonAssocRing.toNonUnitalNonAssocRing.{u3} R (Ring.toNonAssocRing.{u3} R (CommRing.toRing.{u3} R _inst_3)))))) (LinearMap.addCommMonoid.{u3, u3, max u1 u3, u2} R R (ι -> R) M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Pi.addCommMonoid.{u1, u3} ι (fun (ᾰ : ι) => R) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} R (NonUnitalNonAssocRing.toAddCommGroup.{u3} R (NonAssocRing.toNonUnitalNonAssocRing.{u3} R (Ring.toNonAssocRing.{u3} R (CommRing.toRing.{u3} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (Pi.Function.module.{u1, u3, u3} ι R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u3} R (NonUnitalNonAssocRing.toAddCommGroup.{u3} R (NonAssocRing.toNonUnitalNonAssocRing.{u3} R (Ring.toNonAssocRing.{u3} R (CommRing.toRing.{u3} R _inst_3))))) (Semiring.toModule.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) _inst_4 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3))))) (Matrix.module.{u3, u1, u1, u3} ι ι R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u3} R (NonUnitalNonAssocRing.toAddCommGroup.{u3} R (NonAssocRing.toNonUnitalNonAssocRing.{u3} R (Ring.toNonAssocRing.{u3} R (CommRing.toRing.{u3} R _inst_3))))) (Semiring.toModule.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) (LinearMap.module.{u3, u3, u3, max u1 u3, u2} R R R (ι -> R) M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Pi.addCommMonoid.{u1, u3} ι (fun (ᾰ : ι) => R) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} R (NonUnitalNonAssocRing.toAddCommGroup.{u3} R (NonAssocRing.toNonUnitalNonAssocRing.{u3} R (Ring.toNonAssocRing.{u3} R (CommRing.toRing.{u3} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (Pi.Function.module.{u1, u3, u3} ι R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u3} R (NonUnitalNonAssocRing.toAddCommGroup.{u3} R (NonAssocRing.toNonUnitalNonAssocRing.{u3} R (Ring.toNonAssocRing.{u3} R (CommRing.toRing.{u3} R _inst_3))))) (Semiring.toModule.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) _inst_4 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) _inst_4 (PiToModule.fromMatrix._proof_1.{u2, u3} M _inst_2 R _inst_3 _inst_4)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3))))) (PiToModule.fromMatrix.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)) A) (Pi.single.{u1, u3} ι (fun (ᾰ : ι) => R) (fun (a : ι) (b : ι) => _inst_5 a b) (fun (i : ι) => MulZeroClass.toHasZero.{u3} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u3} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u3} R (NonAssocRing.toNonUnitalNonAssocRing.{u3} R (Ring.toNonAssocRing.{u3} R (CommRing.toRing.{u3} R _inst_3)))))) j (OfNat.ofNat.{u3} R 1 (OfNat.mk.{u3} R 1 (One.one.{u3} R (AddMonoidWithOne.toOne.{u3} R (AddGroupWithOne.toAddMonoidWithOne.{u3} R (AddCommGroupWithOne.toAddGroupWithOne.{u3} R (Ring.toAddCommGroupWithOne.{u3} R (CommRing.toRing.{u3} R _inst_3)))))))))) (Finset.sum.{u2, u1} M ι (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (Finset.univ.{u1} ι _inst_1) (fun (i : ι) => SMul.smul.{u3, u2} R M (SMulZeroClass.toHasSmul.{u3, u2} R M (AddZeroClass.toHasZero.{u2} M (AddMonoid.toAddZeroClass.{u2} M (AddCommMonoid.toAddMonoid.{u2} M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2)))) (SMulWithZero.toSmulZeroClass.{u3, u2} R M (MulZeroClass.toHasZero.{u3} R (MulZeroOneClass.toMulZeroClass.{u3} R (MonoidWithZero.toMulZeroOneClass.{u3} R (Semiring.toMonoidWithZero.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))))) (AddZeroClass.toHasZero.{u2} M (AddMonoid.toAddZeroClass.{u2} M (AddCommMonoid.toAddMonoid.{u2} M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2)))) (MulActionWithZero.toSMulWithZero.{u3, u2} R M (Semiring.toMonoidWithZero.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3))) (AddZeroClass.toHasZero.{u2} M (AddMonoid.toAddZeroClass.{u2} M (AddCommMonoid.toAddMonoid.{u2} M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2)))) (Module.toMulActionWithZero.{u3, u2} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4)))) (A i j) (b i)))
-but is expected to have type
- forall {ι : Type.{u3}} [_inst_1 : Fintype.{u3} ι] {M : Type.{u1}} [_inst_2 : AddCommGroup.{u1} M] (R : Type.{u2}) [_inst_3 : CommRing.{u2} R] [_inst_4 : Module.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2)] (b : ι -> M) [_inst_5 : DecidableEq.{succ u3} ι] (A : Matrix.{u3, u3, u2} ι ι R) (j : ι), Eq.{succ u1} ((fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6193 : ι -> R) => M) (Pi.single.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.Charpoly.LinearMap._hyg.130 : ι) => R) (fun (a : ι) (b : ι) => _inst_5 a b) (fun (i : ι) => CommMonoidWithZero.toZero.{u2} R (CommSemiring.toCommMonoidWithZero.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) j (OfNat.ofNat.{u2} R 1 (One.toOfNat1.{u2} R (Semiring.toOne.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))))) (FunLike.coe.{max (max (succ u3) (succ u1)) (succ u2), max (succ u3) (succ u2), succ u1} ((fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6193 : Matrix.{u3, u3, u2} ι ι R) => LinearMap.{u2, u2, max u3 u2, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (ι -> R) M (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.Charpoly.LinearMap._hyg.130 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.Charpoly.LinearMap._hyg.130 : ι) => R) R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_3))))) (fun (i : ι) => Semiring.toModule.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) _inst_4) A) (ι -> R) (fun (_x : ι -> R) => (fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6193 : ι -> R) => M) _x) (LinearMap.instFunLikeLinearMap.{u2, u2, max u3 u2, u1} R R (ι -> R) M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Pi.addCommMonoid.{u3, u2} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.Charpoly.LinearMap._hyg.130 : ι) => R) R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_3))))) (fun (i : ι) => Semiring.toModule.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) _inst_4 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) (FunLike.coe.{max (max (succ u3) (succ u1)) (succ u2), max (succ u3) (succ u2), max (max (succ u3) (succ u1)) (succ u2)} (LinearMap.{u2, u2, max u2 u3, max u1 u3 u2} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (LinearMap.{u2, u2, max u3 u2, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (ι -> R) M (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.Charpoly.LinearMap._hyg.130 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.Charpoly.LinearMap._hyg.130 : ι) => R) R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_3))))) (fun (i : ι) => Semiring.toModule.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) _inst_4) (Matrix.addCommMonoid.{u2, u3, u3} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_3)))))) (LinearMap.addCommMonoid.{u2, u2, max u3 u2, u1} R R (ι -> R) M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.Charpoly.LinearMap._hyg.130 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.Charpoly.LinearMap._hyg.130 : ι) => R) R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_3))))) (fun (i : ι) => Semiring.toModule.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) _inst_4 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) (Matrix.module.{u2, u3, u3, u2} ι ι R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_3))))) (Semiring.toModule.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (LinearMap.instModuleLinearMapAddCommMonoid.{u2, u2, u2, max u3 u2, u1} R R R (ι -> R) M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.Charpoly.LinearMap._hyg.130 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.Charpoly.LinearMap._hyg.130 : ι) => R) R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_3))))) (fun (i : ι) => Semiring.toModule.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) _inst_4 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_4 (smulCommClass_self.{u2, u1} R M (CommRing.toCommMonoid.{u2} R _inst_3) (MulActionWithZero.toMulAction.{u2, u1} R M (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (NegZeroClass.toZero.{u1} M (SubNegZeroMonoid.toNegZeroClass.{u1} M (SubtractionMonoid.toSubNegZeroMonoid.{u1} M (SubtractionCommMonoid.toSubtractionMonoid.{u1} M (AddCommGroup.toDivisionAddCommMonoid.{u1} M _inst_2))))) (Module.toMulActionWithZero.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4))))) (Matrix.{u3, u3, u2} ι ι R) (fun (_x : Matrix.{u3, u3, u2} ι ι R) => (fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6193 : Matrix.{u3, u3, u2} ι ι R) => LinearMap.{u2, u2, max u3 u2, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (ι -> R) M (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.Charpoly.LinearMap._hyg.130 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.Charpoly.LinearMap._hyg.130 : ι) => R) R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_3))))) (fun (i : ι) => Semiring.toModule.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) _inst_4) _x) (LinearMap.instFunLikeLinearMap.{u2, u2, max u3 u2, max (max u3 u1) u2} R R (Matrix.{u3, u3, u2} ι ι R) (LinearMap.{u2, u2, max u3 u2, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (ι -> R) M (Pi.addCommMonoid.{u3, u2} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.Charpoly.LinearMap._hyg.130 : ι) => R) R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_3))))) (fun (i : ι) => Semiring.toModule.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) _inst_4) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Matrix.addCommMonoid.{u2, u3, u3} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_3)))))) (LinearMap.addCommMonoid.{u2, u2, max u3 u2, u1} R R (ι -> R) M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Pi.addCommMonoid.{u3, u2} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.Charpoly.LinearMap._hyg.130 : ι) => R) R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_3))))) (fun (i : ι) => Semiring.toModule.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) _inst_4 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) (Matrix.module.{u2, u3, u3, u2} ι ι R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_3))))) (Semiring.toModule.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (LinearMap.instModuleLinearMapAddCommMonoid.{u2, u2, u2, max u3 u2, u1} R R R (ι -> R) M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Pi.addCommMonoid.{u3, u2} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.Charpoly.LinearMap._hyg.130 : ι) => R) R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_3))))) (fun (i : ι) => Semiring.toModule.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) _inst_4 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_4 (smulCommClass_self.{u2, u1} R M (CommRing.toCommMonoid.{u2} R _inst_3) (MulActionWithZero.toMulAction.{u2, u1} R M (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (NegZeroClass.toZero.{u1} M (SubNegZeroMonoid.toNegZeroClass.{u1} M (SubtractionMonoid.toSubNegZeroMonoid.{u1} M (SubtractionCommMonoid.toSubtractionMonoid.{u1} M (AddCommGroup.toDivisionAddCommMonoid.{u1} M _inst_2))))) (Module.toMulActionWithZero.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) (PiToModule.fromMatrix.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)) A) (Pi.single.{u3, u2} ι (fun (ᾰ : ι) => R) (fun (a : ι) (b : ι) => _inst_5 a b) (fun (i : ι) => CommMonoidWithZero.toZero.{u2} R (CommSemiring.toCommMonoidWithZero.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) j (OfNat.ofNat.{u2} R 1 (One.toOfNat1.{u2} R (Semiring.toOne.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))))) (Finset.sum.{u1, u3} M ι (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (Finset.univ.{u3} ι _inst_1) (fun (i : ι) => HSMul.hSMul.{u2, u1, u1} R M M (instHSMul.{u2, u1} R M (SMulZeroClass.toSMul.{u2, u1} R M (NegZeroClass.toZero.{u1} M (SubNegZeroMonoid.toNegZeroClass.{u1} M (SubtractionMonoid.toSubNegZeroMonoid.{u1} M (SubtractionCommMonoid.toSubtractionMonoid.{u1} M (AddCommGroup.toDivisionAddCommMonoid.{u1} M _inst_2))))) (SMulWithZero.toSMulZeroClass.{u2, u1} R M (CommMonoidWithZero.toZero.{u2} R (CommSemiring.toCommMonoidWithZero.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (NegZeroClass.toZero.{u1} M (SubNegZeroMonoid.toNegZeroClass.{u1} M (SubtractionMonoid.toSubNegZeroMonoid.{u1} M (SubtractionCommMonoid.toSubtractionMonoid.{u1} M (AddCommGroup.toDivisionAddCommMonoid.{u1} M _inst_2))))) (MulActionWithZero.toSMulWithZero.{u2, u1} R M (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (NegZeroClass.toZero.{u1} M (SubNegZeroMonoid.toNegZeroClass.{u1} M (SubtractionMonoid.toSubNegZeroMonoid.{u1} M (SubtractionCommMonoid.toSubtractionMonoid.{u1} M (AddCommGroup.toDivisionAddCommMonoid.{u1} M _inst_2))))) (Module.toMulActionWithZero.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4))))) (A i j) (b i)))
+<too large>
Case conversion may be inaccurate. Consider using '#align pi_to_module.from_matrix_apply_single_one PiToModule.fromMatrix_apply_single_oneₓ'. -/
theorem PiToModule.fromMatrix_apply_single_one [DecidableEq ι] (A : Matrix ι ι R) (j : ι) :
PiToModule.fromMatrix R b A (Pi.single j 1) = ∑ i : ι, A i j • b i :=
@@ -80,10 +74,7 @@ def PiToModule.fromEnd : Module.End R M →ₗ[R] (ι → R) →ₗ[R] M :=
-/
/- warning: pi_to_module.from_End_apply -> PiToModule.fromEnd_apply is a dubious translation:
-lean 3 declaration is
- forall {ι : Type.{u1}} [_inst_1 : Fintype.{u1} ι] {M : Type.{u2}} [_inst_2 : AddCommGroup.{u2} M] (R : Type.{u3}) [_inst_3 : CommRing.{u3} R] [_inst_4 : Module.{u3, u2} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2)] (b : ι -> M) (f : Module.End.{u3, u2} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (w : ι -> R), Eq.{succ u2} M (coeFn.{max (succ (max u1 u3)) (succ u2), max (succ (max u1 u3)) (succ u2)} (LinearMap.{u3, u3, max u1 u3, u2} R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) (ι -> R) M (Pi.addCommMonoid.{u1, u3} ι (fun (ᾰ : ι) => R) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} R (NonUnitalNonAssocRing.toAddCommGroup.{u3} R (NonAssocRing.toNonUnitalNonAssocRing.{u3} R (Ring.toNonAssocRing.{u3} R (CommRing.toRing.{u3} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (Pi.Function.module.{u1, u3, u3} ι R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u3} R (NonUnitalNonAssocRing.toAddCommGroup.{u3} R (NonAssocRing.toNonUnitalNonAssocRing.{u3} R (Ring.toNonAssocRing.{u3} R (CommRing.toRing.{u3} R _inst_3))))) (Semiring.toModule.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) _inst_4) (fun (_x : LinearMap.{u3, u3, max u1 u3, u2} R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) (ι -> R) M (Pi.addCommMonoid.{u1, u3} ι (fun (ᾰ : ι) => R) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} R (NonUnitalNonAssocRing.toAddCommGroup.{u3} R (NonAssocRing.toNonUnitalNonAssocRing.{u3} R (Ring.toNonAssocRing.{u3} R (CommRing.toRing.{u3} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (Pi.Function.module.{u1, u3, u3} ι R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u3} R (NonUnitalNonAssocRing.toAddCommGroup.{u3} R (NonAssocRing.toNonUnitalNonAssocRing.{u3} R (Ring.toNonAssocRing.{u3} R (CommRing.toRing.{u3} R _inst_3))))) (Semiring.toModule.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) _inst_4) => (ι -> R) -> M) (LinearMap.hasCoeToFun.{u3, u3, max u1 u3, u2} R R (ι -> R) M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Pi.addCommMonoid.{u1, u3} ι (fun (ᾰ : ι) => R) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} R (NonUnitalNonAssocRing.toAddCommGroup.{u3} R (NonAssocRing.toNonUnitalNonAssocRing.{u3} R (Ring.toNonAssocRing.{u3} R (CommRing.toRing.{u3} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (Pi.Function.module.{u1, u3, u3} ι R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u3} R (NonUnitalNonAssocRing.toAddCommGroup.{u3} R (NonAssocRing.toNonUnitalNonAssocRing.{u3} R (Ring.toNonAssocRing.{u3} R (CommRing.toRing.{u3} R _inst_3))))) (Semiring.toModule.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) _inst_4 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3))))) (coeFn.{max (succ u2) (succ (max (max u1 u3) u2)), max (succ u2) (succ (max (max u1 u3) u2))} (LinearMap.{u3, u3, u2, max (max u1 u3) u2} R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) (Module.End.{u3, u2} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (LinearMap.{u3, u3, max u1 u3, u2} R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) (ι -> R) M (Pi.addCommMonoid.{u1, u3} ι (fun (ᾰ : ι) => R) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} R (NonUnitalNonAssocRing.toAddCommGroup.{u3} R (NonAssocRing.toNonUnitalNonAssocRing.{u3} R (Ring.toNonAssocRing.{u3} R (CommRing.toRing.{u3} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (Pi.Function.module.{u1, u3, u3} ι R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u3} R (NonUnitalNonAssocRing.toAddCommGroup.{u3} R (NonAssocRing.toNonUnitalNonAssocRing.{u3} R (Ring.toNonAssocRing.{u3} R (CommRing.toRing.{u3} R _inst_3))))) (Semiring.toModule.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) _inst_4) (LinearMap.addCommMonoid.{u3, u3, u2, u2} R R M M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4 _inst_4 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3))))) (LinearMap.addCommMonoid.{u3, u3, max u1 u3, u2} R R (ι -> R) M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Pi.addCommMonoid.{u1, u3} ι (fun (ᾰ : ι) => R) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} R (NonUnitalNonAssocRing.toAddCommGroup.{u3} R (NonAssocRing.toNonUnitalNonAssocRing.{u3} R (Ring.toNonAssocRing.{u3} R (CommRing.toRing.{u3} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (Pi.Function.module.{u1, u3, u3} ι R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u3} R (NonUnitalNonAssocRing.toAddCommGroup.{u3} R (NonAssocRing.toNonUnitalNonAssocRing.{u3} R (Ring.toNonAssocRing.{u3} R (CommRing.toRing.{u3} R _inst_3))))) (Semiring.toModule.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) _inst_4 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3))))) (LinearMap.module.{u3, u3, u3, u2, u2} R R R M M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4 _inst_4 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) _inst_4 (PiToModule.fromEnd._proof_1.{u2, u3} M _inst_2 R _inst_3 _inst_4)) (LinearMap.module.{u3, u3, u3, max u1 u3, u2} R R R (ι -> R) M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Pi.addCommMonoid.{u1, u3} ι (fun (ᾰ : ι) => R) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} R (NonUnitalNonAssocRing.toAddCommGroup.{u3} R (NonAssocRing.toNonUnitalNonAssocRing.{u3} R (Ring.toNonAssocRing.{u3} R (CommRing.toRing.{u3} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (Pi.Function.module.{u1, u3, u3} ι R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u3} R (NonUnitalNonAssocRing.toAddCommGroup.{u3} R (NonAssocRing.toNonUnitalNonAssocRing.{u3} R (Ring.toNonAssocRing.{u3} R (CommRing.toRing.{u3} R _inst_3))))) (Semiring.toModule.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) _inst_4 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) _inst_4 (PiToModule.fromEnd._proof_2.{u2, u3} M _inst_2 R _inst_3 _inst_4))) (fun (_x : LinearMap.{u3, u3, u2, max (max u1 u3) u2} R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) (Module.End.{u3, u2} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (LinearMap.{u3, u3, max u1 u3, u2} R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) (ι -> R) M (Pi.addCommMonoid.{u1, u3} ι (fun (ᾰ : ι) => R) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} R (NonUnitalNonAssocRing.toAddCommGroup.{u3} R (NonAssocRing.toNonUnitalNonAssocRing.{u3} R (Ring.toNonAssocRing.{u3} R (CommRing.toRing.{u3} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (Pi.Function.module.{u1, u3, u3} ι R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u3} R (NonUnitalNonAssocRing.toAddCommGroup.{u3} R (NonAssocRing.toNonUnitalNonAssocRing.{u3} R (Ring.toNonAssocRing.{u3} R (CommRing.toRing.{u3} R _inst_3))))) (Semiring.toModule.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) _inst_4) (LinearMap.addCommMonoid.{u3, u3, u2, u2} R R M M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4 _inst_4 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3))))) (LinearMap.addCommMonoid.{u3, u3, max u1 u3, u2} R R (ι -> R) M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Pi.addCommMonoid.{u1, u3} ι (fun (ᾰ : ι) => R) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} R (NonUnitalNonAssocRing.toAddCommGroup.{u3} R (NonAssocRing.toNonUnitalNonAssocRing.{u3} R (Ring.toNonAssocRing.{u3} R (CommRing.toRing.{u3} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (Pi.Function.module.{u1, u3, u3} ι R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u3} R (NonUnitalNonAssocRing.toAddCommGroup.{u3} R (NonAssocRing.toNonUnitalNonAssocRing.{u3} R (Ring.toNonAssocRing.{u3} R (CommRing.toRing.{u3} R _inst_3))))) (Semiring.toModule.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) _inst_4 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3))))) (LinearMap.module.{u3, u3, u3, u2, u2} R R R M M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4 _inst_4 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) _inst_4 (PiToModule.fromEnd._proof_1.{u2, u3} M _inst_2 R _inst_3 _inst_4)) (LinearMap.module.{u3, u3, u3, max u1 u3, u2} R R R (ι -> R) M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Pi.addCommMonoid.{u1, u3} ι (fun (ᾰ : ι) => R) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} R (NonUnitalNonAssocRing.toAddCommGroup.{u3} R (NonAssocRing.toNonUnitalNonAssocRing.{u3} R (Ring.toNonAssocRing.{u3} R (CommRing.toRing.{u3} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (Pi.Function.module.{u1, u3, u3} ι R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u3} R (NonUnitalNonAssocRing.toAddCommGroup.{u3} R (NonAssocRing.toNonUnitalNonAssocRing.{u3} R (Ring.toNonAssocRing.{u3} R (CommRing.toRing.{u3} R _inst_3))))) (Semiring.toModule.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) _inst_4 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) _inst_4 (PiToModule.fromEnd._proof_2.{u2, u3} M _inst_2 R _inst_3 _inst_4))) => (Module.End.{u3, u2} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) -> (LinearMap.{u3, u3, max u1 u3, u2} R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) (ι -> R) M (Pi.addCommMonoid.{u1, u3} ι (fun (ᾰ : ι) => R) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} R (NonUnitalNonAssocRing.toAddCommGroup.{u3} R (NonAssocRing.toNonUnitalNonAssocRing.{u3} R (Ring.toNonAssocRing.{u3} R (CommRing.toRing.{u3} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (Pi.Function.module.{u1, u3, u3} ι R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u3} R (NonUnitalNonAssocRing.toAddCommGroup.{u3} R (NonAssocRing.toNonUnitalNonAssocRing.{u3} R (Ring.toNonAssocRing.{u3} R (CommRing.toRing.{u3} R _inst_3))))) (Semiring.toModule.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) _inst_4)) (LinearMap.hasCoeToFun.{u3, u3, u2, max (max u1 u3) u2} R R (Module.End.{u3, u2} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (LinearMap.{u3, u3, max u1 u3, u2} R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) (ι -> R) M (Pi.addCommMonoid.{u1, u3} ι (fun (ᾰ : ι) => R) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} R (NonUnitalNonAssocRing.toAddCommGroup.{u3} R (NonAssocRing.toNonUnitalNonAssocRing.{u3} R (Ring.toNonAssocRing.{u3} R (CommRing.toRing.{u3} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (Pi.Function.module.{u1, u3, u3} ι R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u3} R (NonUnitalNonAssocRing.toAddCommGroup.{u3} R (NonAssocRing.toNonUnitalNonAssocRing.{u3} R (Ring.toNonAssocRing.{u3} R (CommRing.toRing.{u3} R _inst_3))))) (Semiring.toModule.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) _inst_4) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (LinearMap.addCommMonoid.{u3, u3, u2, u2} R R M M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4 _inst_4 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3))))) (LinearMap.addCommMonoid.{u3, u3, max u1 u3, u2} R R (ι -> R) M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Pi.addCommMonoid.{u1, u3} ι (fun (ᾰ : ι) => R) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} R (NonUnitalNonAssocRing.toAddCommGroup.{u3} R (NonAssocRing.toNonUnitalNonAssocRing.{u3} R (Ring.toNonAssocRing.{u3} R (CommRing.toRing.{u3} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (Pi.Function.module.{u1, u3, u3} ι R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u3} R (NonUnitalNonAssocRing.toAddCommGroup.{u3} R (NonAssocRing.toNonUnitalNonAssocRing.{u3} R (Ring.toNonAssocRing.{u3} R (CommRing.toRing.{u3} R _inst_3))))) (Semiring.toModule.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) _inst_4 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3))))) (LinearMap.module.{u3, u3, u3, u2, u2} R R R M M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4 _inst_4 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) _inst_4 (PiToModule.fromEnd._proof_1.{u2, u3} M _inst_2 R _inst_3 _inst_4)) (LinearMap.module.{u3, u3, u3, max u1 u3, u2} R R R (ι -> R) M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Pi.addCommMonoid.{u1, u3} ι (fun (ᾰ : ι) => R) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} R (NonUnitalNonAssocRing.toAddCommGroup.{u3} R (NonAssocRing.toNonUnitalNonAssocRing.{u3} R (Ring.toNonAssocRing.{u3} R (CommRing.toRing.{u3} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (Pi.Function.module.{u1, u3, u3} ι R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u3} R (NonUnitalNonAssocRing.toAddCommGroup.{u3} R (NonAssocRing.toNonUnitalNonAssocRing.{u3} R (Ring.toNonAssocRing.{u3} R (CommRing.toRing.{u3} R _inst_3))))) (Semiring.toModule.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) _inst_4 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) _inst_4 (PiToModule.fromEnd._proof_2.{u2, u3} M _inst_2 R _inst_3 _inst_4)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3))))) (PiToModule.fromEnd.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b) f) w) (coeFn.{succ u2, succ u2} (Module.End.{u3, u2} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (fun (_x : LinearMap.{u3, u3, u2, u2} R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4 _inst_4) => M -> M) (LinearMap.hasCoeToFun.{u3, u3, u2, u2} R R M M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4 _inst_4 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3))))) f (coeFn.{max (succ (max u1 u3)) (succ u2), max (succ (max u1 u3)) (succ u2)} (LinearMap.{u3, u3, max u1 u3, u2} R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) (ι -> R) M (Pi.addCommMonoid.{u1, u3} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (Pi.Function.module.{u1, u3, u3} ι R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3))))) (Semiring.toModule.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) _inst_4) (fun (_x : LinearMap.{u3, u3, max u1 u3, u2} R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) (ι -> R) M (Pi.addCommMonoid.{u1, u3} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (Pi.Function.module.{u1, u3, u3} ι R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3))))) (Semiring.toModule.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) _inst_4) => (ι -> R) -> M) (LinearMap.hasCoeToFun.{u3, u3, max u1 u3, u2} R R (ι -> R) M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Pi.addCommMonoid.{u1, u3} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (Pi.Function.module.{u1, u3, u3} ι R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3))))) (Semiring.toModule.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) _inst_4 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3))))) (coeFn.{max (succ (max u1 u2)) (succ (max (max u1 u3) u2)), max (succ (max u1 u2)) (succ (max (max u1 u3) u2))} (LinearMap.{u3, u3, max u1 u2, max (max u1 u3) u2} R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) (ι -> M) (LinearMap.{u3, u3, max u1 u3, u2} R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) (ι -> R) M (Pi.addCommMonoid.{u1, u3} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (Pi.Function.module.{u1, u3, u3} ι R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3))))) (Semiring.toModule.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) _inst_4) (Pi.addCommMonoid.{u1, u2} ι (fun (ᾰ : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u2} M _inst_2)) (LinearMap.addCommMonoid.{u3, u3, max u1 u3, u2} R R (ι -> R) M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Pi.addCommMonoid.{u1, u3} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (Pi.Function.module.{u1, u3, u3} ι R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3))))) (Semiring.toModule.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) _inst_4 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3))))) (Pi.Function.module.{u1, u3, u2} ι R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (LinearMap.module.{u3, u3, u3, max u1 u3, u2} R R R (ι -> R) M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Pi.addCommMonoid.{u1, u3} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (Pi.Function.module.{u1, u3, u3} ι R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3))))) (Semiring.toModule.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) _inst_4 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) _inst_4 (smulCommClass_self.{u3, u2} R M (CommRing.toCommMonoid.{u3} R _inst_3) (MulActionWithZero.toMulAction.{u3, u2} R M (Semiring.toMonoidWithZero.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3))) (AddZeroClass.toHasZero.{u2} M (AddMonoid.toAddZeroClass.{u2} M (AddCommMonoid.toAddMonoid.{u2} M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2)))) (Module.toMulActionWithZero.{u3, u2} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4))))) (fun (_x : LinearMap.{u3, u3, max u1 u2, max (max u1 u3) u2} R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) (ι -> M) (LinearMap.{u3, u3, max u1 u3, u2} R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) (ι -> R) M (Pi.addCommMonoid.{u1, u3} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (Pi.Function.module.{u1, u3, u3} ι R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3))))) (Semiring.toModule.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) _inst_4) (Pi.addCommMonoid.{u1, u2} ι (fun (ᾰ : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u2} M _inst_2)) (LinearMap.addCommMonoid.{u3, u3, max u1 u3, u2} R R (ι -> R) M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Pi.addCommMonoid.{u1, u3} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (Pi.Function.module.{u1, u3, u3} ι R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3))))) (Semiring.toModule.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) _inst_4 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3))))) (Pi.Function.module.{u1, u3, u2} ι R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (LinearMap.module.{u3, u3, u3, max u1 u3, u2} R R R (ι -> R) M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Pi.addCommMonoid.{u1, u3} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (Pi.Function.module.{u1, u3, u3} ι R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3))))) (Semiring.toModule.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) _inst_4 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) _inst_4 (smulCommClass_self.{u3, u2} R M (CommRing.toCommMonoid.{u3} R _inst_3) (MulActionWithZero.toMulAction.{u3, u2} R M (Semiring.toMonoidWithZero.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3))) (AddZeroClass.toHasZero.{u2} M (AddMonoid.toAddZeroClass.{u2} M (AddCommMonoid.toAddMonoid.{u2} M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2)))) (Module.toMulActionWithZero.{u3, u2} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4))))) => (ι -> M) -> (LinearMap.{u3, u3, max u1 u3, u2} R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) (ι -> R) M (Pi.addCommMonoid.{u1, u3} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (Pi.Function.module.{u1, u3, u3} ι R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3))))) (Semiring.toModule.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) _inst_4)) (LinearMap.hasCoeToFun.{u3, u3, max u1 u2, max (max u1 u3) u2} R R (ι -> M) (LinearMap.{u3, u3, max u1 u3, u2} R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) (ι -> R) M (Pi.addCommMonoid.{u1, u3} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (Pi.Function.module.{u1, u3, u3} ι R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3))))) (Semiring.toModule.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) _inst_4) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Pi.addCommMonoid.{u1, u2} ι (fun (ᾰ : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u2} M _inst_2)) (LinearMap.addCommMonoid.{u3, u3, max u1 u3, u2} R R (ι -> R) M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Pi.addCommMonoid.{u1, u3} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (Pi.Function.module.{u1, u3, u3} ι R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3))))) (Semiring.toModule.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) _inst_4 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3))))) (Pi.Function.module.{u1, u3, u2} ι R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (LinearMap.module.{u3, u3, u3, max u1 u3, u2} R R R (ι -> R) M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Pi.addCommMonoid.{u1, u3} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (Pi.Function.module.{u1, u3, u3} ι R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3))))) (Semiring.toModule.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) _inst_4 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) _inst_4 (smulCommClass_self.{u3, u2} R M (CommRing.toCommMonoid.{u3} R _inst_3) (MulActionWithZero.toMulAction.{u3, u2} R M (Semiring.toMonoidWithZero.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3))) (AddZeroClass.toHasZero.{u2} M (AddMonoid.toAddZeroClass.{u2} M (AddCommMonoid.toAddMonoid.{u2} M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2)))) (Module.toMulActionWithZero.{u3, u2} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4)))) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3))))) (Fintype.total.{u1, u2, u3, u3} ι M R _inst_1 (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4 R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) _inst_4 (smulCommClass_self.{u3, u2} R M (CommRing.toCommMonoid.{u3} R _inst_3) (MulActionWithZero.toMulAction.{u3, u2} R M (Semiring.toMonoidWithZero.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3))) (AddZeroClass.toHasZero.{u2} M (AddMonoid.toAddZeroClass.{u2} M (AddCommMonoid.toAddMonoid.{u2} M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2)))) (Module.toMulActionWithZero.{u3, u2} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4)))) b) w))
-but is expected to have type
- forall {ι : Type.{u1}} [_inst_1 : Fintype.{u1} ι] {M : Type.{u2}} [_inst_2 : AddCommGroup.{u2} M] (R : Type.{u3}) [_inst_3 : CommRing.{u3} R] [_inst_4 : Module.{u3, u2} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2)] (b : ι -> M) (f : Module.End.{u3, u2} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (w : ι -> R), Eq.{succ u2} ((fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6193 : ι -> R) => M) w) (FunLike.coe.{max (max (succ u1) (succ u2)) (succ u3), max (succ u1) (succ u3), succ u2} ((fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6193 : Module.End.{u3, u2} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) => LinearMap.{u3, u3, max u1 u3, u2} R R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (ι -> R) M (Pi.addCommMonoid.{u1, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.Charpoly.LinearMap._hyg.392 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u3} R (NonAssocRing.toNonUnitalNonAssocRing.{u3} R (Ring.toNonAssocRing.{u3} R (CommRing.toRing.{u3} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (Pi.module.{u1, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.Charpoly.LinearMap._hyg.392 : ι) => R) R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u3} R (NonAssocRing.toNonUnitalNonAssocRing.{u3} R (Ring.toNonAssocRing.{u3} R (CommRing.toRing.{u3} R _inst_3))))) (fun (i : ι) => Semiring.toModule.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) _inst_4) f) (ι -> R) (fun (_x : ι -> R) => (fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6193 : ι -> R) => M) _x) (LinearMap.instFunLikeLinearMap.{u3, u3, max u1 u3, u2} R R (ι -> R) M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Pi.addCommMonoid.{u1, u3} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u3} R (NonAssocRing.toNonUnitalNonAssocRing.{u3} R (Ring.toNonAssocRing.{u3} R (CommRing.toRing.{u3} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (Pi.module.{u1, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.Charpoly.LinearMap._hyg.392 : ι) => R) R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u3} R (NonAssocRing.toNonUnitalNonAssocRing.{u3} R (Ring.toNonAssocRing.{u3} R (CommRing.toRing.{u3} R _inst_3))))) (fun (i : ι) => Semiring.toModule.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) _inst_4 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))))) (FunLike.coe.{max (max (succ u1) (succ u2)) (succ u3), succ u2, max (max (succ u1) (succ u2)) (succ u3)} (LinearMap.{u3, u3, u2, max u2 u1 u3} R R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (Module.End.{u3, u2} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (LinearMap.{u3, u3, max u1 u3, u2} R R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (ι -> R) M (Pi.addCommMonoid.{u1, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.Charpoly.LinearMap._hyg.392 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u3} R (NonAssocRing.toNonUnitalNonAssocRing.{u3} R (Ring.toNonAssocRing.{u3} R (CommRing.toRing.{u3} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (Pi.module.{u1, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.Charpoly.LinearMap._hyg.392 : ι) => R) R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u3} R (NonAssocRing.toNonUnitalNonAssocRing.{u3} R (Ring.toNonAssocRing.{u3} R (CommRing.toRing.{u3} R _inst_3))))) (fun (i : ι) => Semiring.toModule.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) _inst_4) (LinearMap.addCommMonoid.{u3, u3, u2, u2} R R M M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4 _inst_4 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))))) (LinearMap.addCommMonoid.{u3, u3, max u1 u3, u2} R R (ι -> R) M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Pi.addCommMonoid.{u1, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.Charpoly.LinearMap._hyg.392 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u3} R (NonAssocRing.toNonUnitalNonAssocRing.{u3} R (Ring.toNonAssocRing.{u3} R (CommRing.toRing.{u3} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (Pi.module.{u1, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.Charpoly.LinearMap._hyg.392 : ι) => R) R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u3} R (NonAssocRing.toNonUnitalNonAssocRing.{u3} R (Ring.toNonAssocRing.{u3} R (CommRing.toRing.{u3} R _inst_3))))) (fun (i : ι) => Semiring.toModule.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) _inst_4 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u3, u3, u3, u2, u2} R R R M M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4 _inst_4 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_4 (smulCommClass_self.{u3, u2} R M (CommRing.toCommMonoid.{u3} R _inst_3) (MulActionWithZero.toMulAction.{u3, u2} R M (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))) (NegZeroClass.toZero.{u2} M (SubNegZeroMonoid.toNegZeroClass.{u2} M (SubtractionMonoid.toSubNegZeroMonoid.{u2} M (SubtractionCommMonoid.toSubtractionMonoid.{u2} M (AddCommGroup.toDivisionAddCommMonoid.{u2} M _inst_2))))) (Module.toMulActionWithZero.{u3, u2} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4)))) (LinearMap.instModuleLinearMapAddCommMonoid.{u3, u3, u3, max u1 u3, u2} R R R (ι -> R) M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Pi.addCommMonoid.{u1, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.Charpoly.LinearMap._hyg.392 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u3} R (NonAssocRing.toNonUnitalNonAssocRing.{u3} R (Ring.toNonAssocRing.{u3} R (CommRing.toRing.{u3} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (Pi.module.{u1, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.Charpoly.LinearMap._hyg.392 : ι) => R) R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u3} R (NonAssocRing.toNonUnitalNonAssocRing.{u3} R (Ring.toNonAssocRing.{u3} R (CommRing.toRing.{u3} R _inst_3))))) (fun (i : ι) => Semiring.toModule.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) _inst_4 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_4 (smulCommClass_self.{u3, u2} R M (CommRing.toCommMonoid.{u3} R _inst_3) (MulActionWithZero.toMulAction.{u3, u2} R M (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))) (NegZeroClass.toZero.{u2} M (SubNegZeroMonoid.toNegZeroClass.{u2} M (SubtractionMonoid.toSubNegZeroMonoid.{u2} M (SubtractionCommMonoid.toSubtractionMonoid.{u2} M (AddCommGroup.toDivisionAddCommMonoid.{u2} M _inst_2))))) (Module.toMulActionWithZero.{u3, u2} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4))))) (Module.End.{u3, u2} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (fun (_x : Module.End.{u3, u2} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) => (fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6193 : Module.End.{u3, u2} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) => LinearMap.{u3, u3, max u1 u3, u2} R R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (ι -> R) M (Pi.addCommMonoid.{u1, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.Charpoly.LinearMap._hyg.392 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u3} R (NonAssocRing.toNonUnitalNonAssocRing.{u3} R (Ring.toNonAssocRing.{u3} R (CommRing.toRing.{u3} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (Pi.module.{u1, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.Charpoly.LinearMap._hyg.392 : ι) => R) R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u3} R (NonAssocRing.toNonUnitalNonAssocRing.{u3} R (Ring.toNonAssocRing.{u3} R (CommRing.toRing.{u3} R _inst_3))))) (fun (i : ι) => Semiring.toModule.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) _inst_4) _x) (LinearMap.instFunLikeLinearMap.{u3, u3, u2, max (max u1 u2) u3} R R (Module.End.{u3, u2} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (LinearMap.{u3, u3, max u1 u3, u2} R R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (ι -> R) M (Pi.addCommMonoid.{u1, u3} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u3} R (NonAssocRing.toNonUnitalNonAssocRing.{u3} R (Ring.toNonAssocRing.{u3} R (CommRing.toRing.{u3} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (Pi.module.{u1, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.Charpoly.LinearMap._hyg.392 : ι) => R) R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u3} R (NonAssocRing.toNonUnitalNonAssocRing.{u3} R (Ring.toNonAssocRing.{u3} R (CommRing.toRing.{u3} R _inst_3))))) (fun (i : ι) => Semiring.toModule.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) _inst_4) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (LinearMap.addCommMonoid.{u3, u3, u2, u2} R R M M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4 _inst_4 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))))) (LinearMap.addCommMonoid.{u3, u3, max u1 u3, u2} R R (ι -> R) M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Pi.addCommMonoid.{u1, u3} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u3} R (NonAssocRing.toNonUnitalNonAssocRing.{u3} R (Ring.toNonAssocRing.{u3} R (CommRing.toRing.{u3} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (Pi.module.{u1, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.Charpoly.LinearMap._hyg.392 : ι) => R) R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u3} R (NonAssocRing.toNonUnitalNonAssocRing.{u3} R (Ring.toNonAssocRing.{u3} R (CommRing.toRing.{u3} R _inst_3))))) (fun (i : ι) => Semiring.toModule.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) _inst_4 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u3, u3, u3, u2, u2} R R R M M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4 _inst_4 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_4 (smulCommClass_self.{u3, u2} R M (CommRing.toCommMonoid.{u3} R _inst_3) (MulActionWithZero.toMulAction.{u3, u2} R M (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))) (NegZeroClass.toZero.{u2} M (SubNegZeroMonoid.toNegZeroClass.{u2} M (SubtractionMonoid.toSubNegZeroMonoid.{u2} M (SubtractionCommMonoid.toSubtractionMonoid.{u2} M (AddCommGroup.toDivisionAddCommMonoid.{u2} M _inst_2))))) (Module.toMulActionWithZero.{u3, u2} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4)))) (LinearMap.instModuleLinearMapAddCommMonoid.{u3, u3, u3, max u1 u3, u2} R R R (ι -> R) M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Pi.addCommMonoid.{u1, u3} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u3} R (NonAssocRing.toNonUnitalNonAssocRing.{u3} R (Ring.toNonAssocRing.{u3} R (CommRing.toRing.{u3} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (Pi.module.{u1, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.Charpoly.LinearMap._hyg.392 : ι) => R) R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u3} R (NonAssocRing.toNonUnitalNonAssocRing.{u3} R (Ring.toNonAssocRing.{u3} R (CommRing.toRing.{u3} R _inst_3))))) (fun (i : ι) => Semiring.toModule.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) _inst_4 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_4 (smulCommClass_self.{u3, u2} R M (CommRing.toCommMonoid.{u3} R _inst_3) (MulActionWithZero.toMulAction.{u3, u2} R M (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))) (NegZeroClass.toZero.{u2} M (SubNegZeroMonoid.toNegZeroClass.{u2} M (SubtractionMonoid.toSubNegZeroMonoid.{u2} M (SubtractionCommMonoid.toSubtractionMonoid.{u2} M (AddCommGroup.toDivisionAddCommMonoid.{u2} M _inst_2))))) (Module.toMulActionWithZero.{u3, u2} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4)))) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))))) (PiToModule.fromEnd.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b) f) w) (FunLike.coe.{succ u2, succ u2, succ u2} (Module.End.{u3, u2} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6193 : M) => M) _x) (LinearMap.instFunLikeLinearMap.{u3, u3, u2, u2} R R M M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4 _inst_4 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))))) f (FunLike.coe.{max (max (succ u1) (succ u2)) (succ u3), max (succ u1) (succ u3), succ u2} ((fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6193 : ι -> M) => LinearMap.{u3, u3, max u1 u3, u2} R R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (ι -> R) M (Pi.addCommMonoid.{u1, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Finsupp._hyg.14570 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (Pi.module.{u1, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Finsupp._hyg.14570 : ι) => R) R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))))) (fun (i : ι) => Semiring.toModule.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) _inst_4) b) (ι -> R) (fun (_x : ι -> R) => (fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6193 : ι -> R) => M) _x) (LinearMap.instFunLikeLinearMap.{u3, u3, max u1 u3, u2} R R (ι -> R) M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Pi.addCommMonoid.{u1, u3} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (Pi.module.{u1, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Finsupp._hyg.14570 : ι) => R) R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))))) (fun (i : ι) => Semiring.toModule.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) _inst_4 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))))) (FunLike.coe.{max (max (succ u3) (succ u2)) (succ u1), max (succ u2) (succ u1), max (max (succ u3) (succ u2)) (succ u1)} (LinearMap.{u3, u3, max u1 u2, max u2 u1 u3} R R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (ι -> M) (LinearMap.{u3, u3, max u1 u3, u2} R R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (ι -> R) M (Pi.addCommMonoid.{u1, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Finsupp._hyg.14570 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (Pi.module.{u1, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Finsupp._hyg.14570 : ι) => R) R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))))) (fun (i : ι) => Semiring.toModule.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) _inst_4) (Pi.addCommMonoid.{u1, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Finsupp._hyg.14558 : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u2} M _inst_2)) (LinearMap.addCommMonoid.{u3, u3, max u1 u3, u2} R R (ι -> R) M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Pi.addCommMonoid.{u1, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Finsupp._hyg.14570 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (Pi.module.{u1, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Finsupp._hyg.14570 : ι) => R) R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))))) (fun (i : ι) => Semiring.toModule.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) _inst_4 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))))) (Pi.module.{u1, u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Finsupp._hyg.14558 : ι) => M) R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (fun (i : ι) => _inst_4)) (LinearMap.instModuleLinearMapAddCommMonoid.{u3, u3, u3, max u1 u3, u2} R R R (ι -> R) M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Pi.addCommMonoid.{u1, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Finsupp._hyg.14570 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (Pi.module.{u1, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Finsupp._hyg.14570 : ι) => R) R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))))) (fun (i : ι) => Semiring.toModule.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) _inst_4 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_4 (smulCommClass_self.{u3, u2} R M (CommRing.toCommMonoid.{u3} R _inst_3) (MulActionWithZero.toMulAction.{u3, u2} R M (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))) (NegZeroClass.toZero.{u2} M (SubNegZeroMonoid.toNegZeroClass.{u2} M (SubtractionMonoid.toSubNegZeroMonoid.{u2} M (SubtractionCommMonoid.toSubtractionMonoid.{u2} M (AddCommGroup.toDivisionAddCommMonoid.{u2} M _inst_2))))) (Module.toMulActionWithZero.{u3, u2} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4))))) (ι -> M) (fun (_x : ι -> M) => (fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6193 : ι -> M) => LinearMap.{u3, u3, max u1 u3, u2} R R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (ι -> R) M (Pi.addCommMonoid.{u1, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Finsupp._hyg.14570 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (Pi.module.{u1, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Finsupp._hyg.14570 : ι) => R) R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))))) (fun (i : ι) => Semiring.toModule.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) _inst_4) _x) (LinearMap.instFunLikeLinearMap.{u3, u3, max u2 u1, max (max u3 u2) u1} R R (ι -> M) (LinearMap.{u3, u3, max u1 u3, u2} R R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (ι -> R) M (Pi.addCommMonoid.{u1, u3} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (Pi.module.{u1, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Finsupp._hyg.14570 : ι) => R) R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))))) (fun (i : ι) => Semiring.toModule.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) _inst_4) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Pi.addCommMonoid.{u1, u2} ι (fun (ᾰ : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u2} M _inst_2)) (LinearMap.addCommMonoid.{u3, u3, max u1 u3, u2} R R (ι -> R) M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Pi.addCommMonoid.{u1, u3} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (Pi.module.{u1, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Finsupp._hyg.14570 : ι) => R) R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))))) (fun (i : ι) => Semiring.toModule.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) _inst_4 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))))) (Pi.module.{u1, u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Finsupp._hyg.14558 : ι) => M) R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (fun (i : ι) => _inst_4)) (LinearMap.instModuleLinearMapAddCommMonoid.{u3, u3, u3, max u1 u3, u2} R R R (ι -> R) M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Pi.addCommMonoid.{u1, u3} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (Pi.module.{u1, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Finsupp._hyg.14570 : ι) => R) R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))))) (fun (i : ι) => Semiring.toModule.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) _inst_4 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_4 (smulCommClass_self.{u3, u2} R M (CommRing.toCommMonoid.{u3} R _inst_3) (MulActionWithZero.toMulAction.{u3, u2} R M (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))) (NegZeroClass.toZero.{u2} M (SubNegZeroMonoid.toNegZeroClass.{u2} M (SubtractionMonoid.toSubNegZeroMonoid.{u2} M (SubtractionCommMonoid.toSubtractionMonoid.{u2} M (AddCommGroup.toDivisionAddCommMonoid.{u2} M _inst_2))))) (Module.toMulActionWithZero.{u3, u2} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4)))) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))))) (Fintype.total.{u1, u2, u3, u3} ι M R _inst_1 (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4 R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_4 (smulCommClass_self.{u3, u2} R M (CommRing.toCommMonoid.{u3} R _inst_3) (MulActionWithZero.toMulAction.{u3, u2} R M (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))) (NegZeroClass.toZero.{u2} M (SubNegZeroMonoid.toNegZeroClass.{u2} M (SubtractionMonoid.toSubNegZeroMonoid.{u2} M (SubtractionCommMonoid.toSubtractionMonoid.{u2} M (AddCommGroup.toDivisionAddCommMonoid.{u2} M _inst_2))))) (Module.toMulActionWithZero.{u3, u2} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4)))) b) w))
+<too large>
Case conversion may be inaccurate. Consider using '#align pi_to_module.from_End_apply PiToModule.fromEnd_applyₓ'. -/
theorem PiToModule.fromEnd_apply (f : Module.End R M) (w : ι → R) :
PiToModule.fromEnd R b f w = f (Fintype.total R R b w) :=
@@ -91,10 +82,7 @@ theorem PiToModule.fromEnd_apply (f : Module.End R M) (w : ι → R) :
#align pi_to_module.from_End_apply PiToModule.fromEnd_apply
/- warning: pi_to_module.from_End_apply_single_one -> PiToModule.fromEnd_apply_single_one is a dubious translation:
-lean 3 declaration is
- forall {ι : Type.{u1}} [_inst_1 : Fintype.{u1} ι] {M : Type.{u2}} [_inst_2 : AddCommGroup.{u2} M] (R : Type.{u3}) [_inst_3 : CommRing.{u3} R] [_inst_4 : Module.{u3, u2} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2)] (b : ι -> M) [_inst_5 : DecidableEq.{succ u1} ι] (f : Module.End.{u3, u2} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (i : ι), Eq.{succ u2} M (coeFn.{max (succ (max u1 u3)) (succ u2), max (succ (max u1 u3)) (succ u2)} (LinearMap.{u3, u3, max u1 u3, u2} R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) (ι -> R) M (Pi.addCommMonoid.{u1, u3} ι (fun (ᾰ : ι) => R) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} R (NonUnitalNonAssocRing.toAddCommGroup.{u3} R (NonAssocRing.toNonUnitalNonAssocRing.{u3} R (Ring.toNonAssocRing.{u3} R (CommRing.toRing.{u3} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (Pi.Function.module.{u1, u3, u3} ι R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u3} R (NonUnitalNonAssocRing.toAddCommGroup.{u3} R (NonAssocRing.toNonUnitalNonAssocRing.{u3} R (Ring.toNonAssocRing.{u3} R (CommRing.toRing.{u3} R _inst_3))))) (Semiring.toModule.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) _inst_4) (fun (_x : LinearMap.{u3, u3, max u1 u3, u2} R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) (ι -> R) M (Pi.addCommMonoid.{u1, u3} ι (fun (ᾰ : ι) => R) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} R (NonUnitalNonAssocRing.toAddCommGroup.{u3} R (NonAssocRing.toNonUnitalNonAssocRing.{u3} R (Ring.toNonAssocRing.{u3} R (CommRing.toRing.{u3} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (Pi.Function.module.{u1, u3, u3} ι R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u3} R (NonUnitalNonAssocRing.toAddCommGroup.{u3} R (NonAssocRing.toNonUnitalNonAssocRing.{u3} R (Ring.toNonAssocRing.{u3} R (CommRing.toRing.{u3} R _inst_3))))) (Semiring.toModule.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) _inst_4) => (ι -> R) -> M) (LinearMap.hasCoeToFun.{u3, u3, max u1 u3, u2} R R (ι -> R) M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Pi.addCommMonoid.{u1, u3} ι (fun (ᾰ : ι) => R) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} R (NonUnitalNonAssocRing.toAddCommGroup.{u3} R (NonAssocRing.toNonUnitalNonAssocRing.{u3} R (Ring.toNonAssocRing.{u3} R (CommRing.toRing.{u3} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (Pi.Function.module.{u1, u3, u3} ι R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u3} R (NonUnitalNonAssocRing.toAddCommGroup.{u3} R (NonAssocRing.toNonUnitalNonAssocRing.{u3} R (Ring.toNonAssocRing.{u3} R (CommRing.toRing.{u3} R _inst_3))))) (Semiring.toModule.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) _inst_4 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3))))) (coeFn.{max (succ u2) (succ (max (max u1 u3) u2)), max (succ u2) (succ (max (max u1 u3) u2))} (LinearMap.{u3, u3, u2, max (max u1 u3) u2} R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) (Module.End.{u3, u2} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (LinearMap.{u3, u3, max u1 u3, u2} R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) (ι -> R) M (Pi.addCommMonoid.{u1, u3} ι (fun (ᾰ : ι) => R) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} R (NonUnitalNonAssocRing.toAddCommGroup.{u3} R (NonAssocRing.toNonUnitalNonAssocRing.{u3} R (Ring.toNonAssocRing.{u3} R (CommRing.toRing.{u3} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (Pi.Function.module.{u1, u3, u3} ι R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u3} R (NonUnitalNonAssocRing.toAddCommGroup.{u3} R (NonAssocRing.toNonUnitalNonAssocRing.{u3} R (Ring.toNonAssocRing.{u3} R (CommRing.toRing.{u3} R _inst_3))))) (Semiring.toModule.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) _inst_4) (LinearMap.addCommMonoid.{u3, u3, u2, u2} R R M M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4 _inst_4 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3))))) (LinearMap.addCommMonoid.{u3, u3, max u1 u3, u2} R R (ι -> R) M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Pi.addCommMonoid.{u1, u3} ι (fun (ᾰ : ι) => R) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} R (NonUnitalNonAssocRing.toAddCommGroup.{u3} R (NonAssocRing.toNonUnitalNonAssocRing.{u3} R (Ring.toNonAssocRing.{u3} R (CommRing.toRing.{u3} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (Pi.Function.module.{u1, u3, u3} ι R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u3} R (NonUnitalNonAssocRing.toAddCommGroup.{u3} R (NonAssocRing.toNonUnitalNonAssocRing.{u3} R (Ring.toNonAssocRing.{u3} R (CommRing.toRing.{u3} R _inst_3))))) (Semiring.toModule.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) _inst_4 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3))))) (LinearMap.module.{u3, u3, u3, u2, u2} R R R M M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4 _inst_4 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) _inst_4 (PiToModule.fromEnd._proof_1.{u2, u3} M _inst_2 R _inst_3 _inst_4)) (LinearMap.module.{u3, u3, u3, max u1 u3, u2} R R R (ι -> R) M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Pi.addCommMonoid.{u1, u3} ι (fun (ᾰ : ι) => R) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} R (NonUnitalNonAssocRing.toAddCommGroup.{u3} R (NonAssocRing.toNonUnitalNonAssocRing.{u3} R (Ring.toNonAssocRing.{u3} R (CommRing.toRing.{u3} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (Pi.Function.module.{u1, u3, u3} ι R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u3} R (NonUnitalNonAssocRing.toAddCommGroup.{u3} R (NonAssocRing.toNonUnitalNonAssocRing.{u3} R (Ring.toNonAssocRing.{u3} R (CommRing.toRing.{u3} R _inst_3))))) (Semiring.toModule.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) _inst_4 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) _inst_4 (PiToModule.fromEnd._proof_2.{u2, u3} M _inst_2 R _inst_3 _inst_4))) (fun (_x : LinearMap.{u3, u3, u2, max (max u1 u3) u2} R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) (Module.End.{u3, u2} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (LinearMap.{u3, u3, max u1 u3, u2} R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) (ι -> R) M (Pi.addCommMonoid.{u1, u3} ι (fun (ᾰ : ι) => R) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} R (NonUnitalNonAssocRing.toAddCommGroup.{u3} R (NonAssocRing.toNonUnitalNonAssocRing.{u3} R (Ring.toNonAssocRing.{u3} R (CommRing.toRing.{u3} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (Pi.Function.module.{u1, u3, u3} ι R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u3} R (NonUnitalNonAssocRing.toAddCommGroup.{u3} R (NonAssocRing.toNonUnitalNonAssocRing.{u3} R (Ring.toNonAssocRing.{u3} R (CommRing.toRing.{u3} R _inst_3))))) (Semiring.toModule.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) _inst_4) (LinearMap.addCommMonoid.{u3, u3, u2, u2} R R M M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4 _inst_4 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3))))) (LinearMap.addCommMonoid.{u3, u3, max u1 u3, u2} R R (ι -> R) M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Pi.addCommMonoid.{u1, u3} ι (fun (ᾰ : ι) => R) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} R (NonUnitalNonAssocRing.toAddCommGroup.{u3} R (NonAssocRing.toNonUnitalNonAssocRing.{u3} R (Ring.toNonAssocRing.{u3} R (CommRing.toRing.{u3} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (Pi.Function.module.{u1, u3, u3} ι R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u3} R (NonUnitalNonAssocRing.toAddCommGroup.{u3} R (NonAssocRing.toNonUnitalNonAssocRing.{u3} R (Ring.toNonAssocRing.{u3} R (CommRing.toRing.{u3} R _inst_3))))) (Semiring.toModule.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) _inst_4 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3))))) (LinearMap.module.{u3, u3, u3, u2, u2} R R R M M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4 _inst_4 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) _inst_4 (PiToModule.fromEnd._proof_1.{u2, u3} M _inst_2 R _inst_3 _inst_4)) (LinearMap.module.{u3, u3, u3, max u1 u3, u2} R R R (ι -> R) M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Pi.addCommMonoid.{u1, u3} ι (fun (ᾰ : ι) => R) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} R (NonUnitalNonAssocRing.toAddCommGroup.{u3} R (NonAssocRing.toNonUnitalNonAssocRing.{u3} R (Ring.toNonAssocRing.{u3} R (CommRing.toRing.{u3} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (Pi.Function.module.{u1, u3, u3} ι R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u3} R (NonUnitalNonAssocRing.toAddCommGroup.{u3} R (NonAssocRing.toNonUnitalNonAssocRing.{u3} R (Ring.toNonAssocRing.{u3} R (CommRing.toRing.{u3} R _inst_3))))) (Semiring.toModule.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) _inst_4 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) _inst_4 (PiToModule.fromEnd._proof_2.{u2, u3} M _inst_2 R _inst_3 _inst_4))) => (Module.End.{u3, u2} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) -> (LinearMap.{u3, u3, max u1 u3, u2} R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) (ι -> R) M (Pi.addCommMonoid.{u1, u3} ι (fun (ᾰ : ι) => R) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} R (NonUnitalNonAssocRing.toAddCommGroup.{u3} R (NonAssocRing.toNonUnitalNonAssocRing.{u3} R (Ring.toNonAssocRing.{u3} R (CommRing.toRing.{u3} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (Pi.Function.module.{u1, u3, u3} ι R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u3} R (NonUnitalNonAssocRing.toAddCommGroup.{u3} R (NonAssocRing.toNonUnitalNonAssocRing.{u3} R (Ring.toNonAssocRing.{u3} R (CommRing.toRing.{u3} R _inst_3))))) (Semiring.toModule.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) _inst_4)) (LinearMap.hasCoeToFun.{u3, u3, u2, max (max u1 u3) u2} R R (Module.End.{u3, u2} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (LinearMap.{u3, u3, max u1 u3, u2} R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) (ι -> R) M (Pi.addCommMonoid.{u1, u3} ι (fun (ᾰ : ι) => R) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} R (NonUnitalNonAssocRing.toAddCommGroup.{u3} R (NonAssocRing.toNonUnitalNonAssocRing.{u3} R (Ring.toNonAssocRing.{u3} R (CommRing.toRing.{u3} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (Pi.Function.module.{u1, u3, u3} ι R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u3} R (NonUnitalNonAssocRing.toAddCommGroup.{u3} R (NonAssocRing.toNonUnitalNonAssocRing.{u3} R (Ring.toNonAssocRing.{u3} R (CommRing.toRing.{u3} R _inst_3))))) (Semiring.toModule.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) _inst_4) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (LinearMap.addCommMonoid.{u3, u3, u2, u2} R R M M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4 _inst_4 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3))))) (LinearMap.addCommMonoid.{u3, u3, max u1 u3, u2} R R (ι -> R) M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Pi.addCommMonoid.{u1, u3} ι (fun (ᾰ : ι) => R) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} R (NonUnitalNonAssocRing.toAddCommGroup.{u3} R (NonAssocRing.toNonUnitalNonAssocRing.{u3} R (Ring.toNonAssocRing.{u3} R (CommRing.toRing.{u3} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (Pi.Function.module.{u1, u3, u3} ι R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u3} R (NonUnitalNonAssocRing.toAddCommGroup.{u3} R (NonAssocRing.toNonUnitalNonAssocRing.{u3} R (Ring.toNonAssocRing.{u3} R (CommRing.toRing.{u3} R _inst_3))))) (Semiring.toModule.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) _inst_4 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3))))) (LinearMap.module.{u3, u3, u3, u2, u2} R R R M M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4 _inst_4 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) _inst_4 (PiToModule.fromEnd._proof_1.{u2, u3} M _inst_2 R _inst_3 _inst_4)) (LinearMap.module.{u3, u3, u3, max u1 u3, u2} R R R (ι -> R) M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Pi.addCommMonoid.{u1, u3} ι (fun (ᾰ : ι) => R) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} R (NonUnitalNonAssocRing.toAddCommGroup.{u3} R (NonAssocRing.toNonUnitalNonAssocRing.{u3} R (Ring.toNonAssocRing.{u3} R (CommRing.toRing.{u3} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (Pi.Function.module.{u1, u3, u3} ι R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u3} R (NonUnitalNonAssocRing.toAddCommGroup.{u3} R (NonAssocRing.toNonUnitalNonAssocRing.{u3} R (Ring.toNonAssocRing.{u3} R (CommRing.toRing.{u3} R _inst_3))))) (Semiring.toModule.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) _inst_4 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) _inst_4 (PiToModule.fromEnd._proof_2.{u2, u3} M _inst_2 R _inst_3 _inst_4)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3))))) (PiToModule.fromEnd.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b) f) (Pi.single.{u1, u3} ι (fun (ᾰ : ι) => R) (fun (a : ι) (b : ι) => _inst_5 a b) (fun (i : ι) => MulZeroClass.toHasZero.{u3} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u3} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u3} R (NonAssocRing.toNonUnitalNonAssocRing.{u3} R (Ring.toNonAssocRing.{u3} R (CommRing.toRing.{u3} R _inst_3)))))) i (OfNat.ofNat.{u3} R 1 (OfNat.mk.{u3} R 1 (One.one.{u3} R (AddMonoidWithOne.toOne.{u3} R (AddGroupWithOne.toAddMonoidWithOne.{u3} R (AddCommGroupWithOne.toAddGroupWithOne.{u3} R (Ring.toAddCommGroupWithOne.{u3} R (CommRing.toRing.{u3} R _inst_3)))))))))) (coeFn.{succ u2, succ u2} (Module.End.{u3, u2} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (fun (_x : LinearMap.{u3, u3, u2, u2} R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4 _inst_4) => M -> M) (LinearMap.hasCoeToFun.{u3, u3, u2, u2} R R M M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4 _inst_4 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3))))) f (b i))
-but is expected to have type
- forall {ι : Type.{u3}} [_inst_1 : Fintype.{u3} ι] {M : Type.{u1}} [_inst_2 : AddCommGroup.{u1} M] (R : Type.{u2}) [_inst_3 : CommRing.{u2} R] [_inst_4 : Module.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2)] (b : ι -> M) [_inst_5 : DecidableEq.{succ u3} ι] (f : Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (i : ι), Eq.{succ u1} ((fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6193 : ι -> R) => M) (Pi.single.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.Charpoly.LinearMap._hyg.392 : ι) => R) (fun (a : ι) (b : ι) => _inst_5 a b) (fun (i : ι) => CommMonoidWithZero.toZero.{u2} R (CommSemiring.toCommMonoidWithZero.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) i (OfNat.ofNat.{u2} R 1 (One.toOfNat1.{u2} R (Semiring.toOne.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))))) (FunLike.coe.{max (max (succ u3) (succ u1)) (succ u2), max (succ u3) (succ u2), succ u1} ((fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6193 : Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) => LinearMap.{u2, u2, max u3 u2, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (ι -> R) M (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.Charpoly.LinearMap._hyg.392 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.Charpoly.LinearMap._hyg.392 : ι) => R) R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_3))))) (fun (i : ι) => Semiring.toModule.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) _inst_4) f) (ι -> R) (fun (_x : ι -> R) => (fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6193 : ι -> R) => M) _x) (LinearMap.instFunLikeLinearMap.{u2, u2, max u3 u2, u1} R R (ι -> R) M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Pi.addCommMonoid.{u3, u2} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.Charpoly.LinearMap._hyg.392 : ι) => R) R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_3))))) (fun (i : ι) => Semiring.toModule.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) _inst_4 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) (FunLike.coe.{max (max (succ u3) (succ u1)) (succ u2), succ u1, max (max (succ u3) (succ u1)) (succ u2)} (LinearMap.{u2, u2, u1, max u1 u3 u2} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (LinearMap.{u2, u2, max u3 u2, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (ι -> R) M (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.Charpoly.LinearMap._hyg.392 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.Charpoly.LinearMap._hyg.392 : ι) => R) R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_3))))) (fun (i : ι) => Semiring.toModule.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) _inst_4) (LinearMap.addCommMonoid.{u2, u2, u1, u1} R R M M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4 _inst_4 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) (LinearMap.addCommMonoid.{u2, u2, max u3 u2, u1} R R (ι -> R) M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.Charpoly.LinearMap._hyg.392 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.Charpoly.LinearMap._hyg.392 : ι) => R) R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_3))))) (fun (i : ι) => Semiring.toModule.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) _inst_4 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u2, u2, u2, u1, u1} R R R M M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4 _inst_4 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_4 (smulCommClass_self.{u2, u1} R M (CommRing.toCommMonoid.{u2} R _inst_3) (MulActionWithZero.toMulAction.{u2, u1} R M (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (NegZeroClass.toZero.{u1} M (SubNegZeroMonoid.toNegZeroClass.{u1} M (SubtractionMonoid.toSubNegZeroMonoid.{u1} M (SubtractionCommMonoid.toSubtractionMonoid.{u1} M (AddCommGroup.toDivisionAddCommMonoid.{u1} M _inst_2))))) (Module.toMulActionWithZero.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4)))) (LinearMap.instModuleLinearMapAddCommMonoid.{u2, u2, u2, max u3 u2, u1} R R R (ι -> R) M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.Charpoly.LinearMap._hyg.392 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.Charpoly.LinearMap._hyg.392 : ι) => R) R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_3))))) (fun (i : ι) => Semiring.toModule.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) _inst_4 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_4 (smulCommClass_self.{u2, u1} R M (CommRing.toCommMonoid.{u2} R _inst_3) (MulActionWithZero.toMulAction.{u2, u1} R M (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (NegZeroClass.toZero.{u1} M (SubNegZeroMonoid.toNegZeroClass.{u1} M (SubtractionMonoid.toSubNegZeroMonoid.{u1} M (SubtractionCommMonoid.toSubtractionMonoid.{u1} M (AddCommGroup.toDivisionAddCommMonoid.{u1} M _inst_2))))) (Module.toMulActionWithZero.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4))))) (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (fun (_x : Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) => (fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6193 : Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) => LinearMap.{u2, u2, max u3 u2, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (ι -> R) M (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.Charpoly.LinearMap._hyg.392 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.Charpoly.LinearMap._hyg.392 : ι) => R) R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_3))))) (fun (i : ι) => Semiring.toModule.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) _inst_4) _x) (LinearMap.instFunLikeLinearMap.{u2, u2, u1, max (max u3 u1) u2} R R (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (LinearMap.{u2, u2, max u3 u2, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (ι -> R) M (Pi.addCommMonoid.{u3, u2} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.Charpoly.LinearMap._hyg.392 : ι) => R) R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_3))))) (fun (i : ι) => Semiring.toModule.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) _inst_4) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (LinearMap.addCommMonoid.{u2, u2, u1, u1} R R M M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4 _inst_4 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) (LinearMap.addCommMonoid.{u2, u2, max u3 u2, u1} R R (ι -> R) M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Pi.addCommMonoid.{u3, u2} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.Charpoly.LinearMap._hyg.392 : ι) => R) R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_3))))) (fun (i : ι) => Semiring.toModule.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) _inst_4 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u2, u2, u2, u1, u1} R R R M M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4 _inst_4 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_4 (smulCommClass_self.{u2, u1} R M (CommRing.toCommMonoid.{u2} R _inst_3) (MulActionWithZero.toMulAction.{u2, u1} R M (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (NegZeroClass.toZero.{u1} M (SubNegZeroMonoid.toNegZeroClass.{u1} M (SubtractionMonoid.toSubNegZeroMonoid.{u1} M (SubtractionCommMonoid.toSubtractionMonoid.{u1} M (AddCommGroup.toDivisionAddCommMonoid.{u1} M _inst_2))))) (Module.toMulActionWithZero.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4)))) (LinearMap.instModuleLinearMapAddCommMonoid.{u2, u2, u2, max u3 u2, u1} R R R (ι -> R) M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Pi.addCommMonoid.{u3, u2} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.Charpoly.LinearMap._hyg.392 : ι) => R) R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_3))))) (fun (i : ι) => Semiring.toModule.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) _inst_4 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_4 (smulCommClass_self.{u2, u1} R M (CommRing.toCommMonoid.{u2} R _inst_3) (MulActionWithZero.toMulAction.{u2, u1} R M (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (NegZeroClass.toZero.{u1} M (SubNegZeroMonoid.toNegZeroClass.{u1} M (SubtractionMonoid.toSubNegZeroMonoid.{u1} M (SubtractionCommMonoid.toSubtractionMonoid.{u1} M (AddCommGroup.toDivisionAddCommMonoid.{u1} M _inst_2))))) (Module.toMulActionWithZero.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) (PiToModule.fromEnd.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b) f) (Pi.single.{u3, u2} ι (fun (ᾰ : ι) => R) (fun (a : ι) (b : ι) => _inst_5 a b) (fun (i : ι) => CommMonoidWithZero.toZero.{u2} R (CommSemiring.toCommMonoidWithZero.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) i (OfNat.ofNat.{u2} R 1 (One.toOfNat1.{u2} R (Semiring.toOne.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))))) (FunLike.coe.{succ u1, succ u1, succ u1} (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6193 : M) => M) _x) (LinearMap.instFunLikeLinearMap.{u2, u2, u1, u1} R R M M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4 _inst_4 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) f (b i))
+<too large>
Case conversion may be inaccurate. Consider using '#align pi_to_module.from_End_apply_single_one PiToModule.fromEnd_apply_single_oneₓ'. -/
theorem PiToModule.fromEnd_apply_single_one [DecidableEq ι] (f : Module.End R M) (i : ι) :
PiToModule.fromEnd R b f (Pi.single i 1) = f (b i) :=
@@ -106,10 +94,7 @@ theorem PiToModule.fromEnd_apply_single_one [DecidableEq ι] (f : Module.End R M
#align pi_to_module.from_End_apply_single_one PiToModule.fromEnd_apply_single_one
/- warning: pi_to_module.from_End_injective -> PiToModule.fromEnd_injective is a dubious translation:
-lean 3 declaration is
- forall {ι : Type.{u1}} [_inst_1 : Fintype.{u1} ι] {M : Type.{u2}} [_inst_2 : AddCommGroup.{u2} M] (R : Type.{u3}) [_inst_3 : CommRing.{u3} R] [_inst_4 : Module.{u3, u2} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2)] (b : ι -> M), (Eq.{succ u2} (Submodule.{u3, u2} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (Submodule.span.{u3, u2} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4 (Set.range.{u2, succ u1} M ι b)) (Top.top.{u2} (Submodule.{u3, u2} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (Submodule.hasTop.{u3, u2} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4))) -> (Function.Injective.{succ u2, max (succ (max u1 u3)) (succ u2)} (Module.End.{u3, u2} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (LinearMap.{u3, u3, max u1 u3, u2} R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) (ι -> R) M (Pi.addCommMonoid.{u1, u3} ι (fun (ᾰ : ι) => R) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} R (NonUnitalNonAssocRing.toAddCommGroup.{u3} R (NonAssocRing.toNonUnitalNonAssocRing.{u3} R (Ring.toNonAssocRing.{u3} R (CommRing.toRing.{u3} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (Pi.Function.module.{u1, u3, u3} ι R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u3} R (NonUnitalNonAssocRing.toAddCommGroup.{u3} R (NonAssocRing.toNonUnitalNonAssocRing.{u3} R (Ring.toNonAssocRing.{u3} R (CommRing.toRing.{u3} R _inst_3))))) (Semiring.toModule.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) _inst_4) (coeFn.{max (succ u2) (succ (max (max u1 u3) u2)), max (succ u2) (succ (max (max u1 u3) u2))} (LinearMap.{u3, u3, u2, max (max u1 u3) u2} R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) (Module.End.{u3, u2} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (LinearMap.{u3, u3, max u1 u3, u2} R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) (ι -> R) M (Pi.addCommMonoid.{u1, u3} ι (fun (ᾰ : ι) => R) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} R (NonUnitalNonAssocRing.toAddCommGroup.{u3} R (NonAssocRing.toNonUnitalNonAssocRing.{u3} R (Ring.toNonAssocRing.{u3} R (CommRing.toRing.{u3} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (Pi.Function.module.{u1, u3, u3} ι R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u3} R (NonUnitalNonAssocRing.toAddCommGroup.{u3} R (NonAssocRing.toNonUnitalNonAssocRing.{u3} R (Ring.toNonAssocRing.{u3} R (CommRing.toRing.{u3} R _inst_3))))) (Semiring.toModule.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) _inst_4) (LinearMap.addCommMonoid.{u3, u3, u2, u2} R R M M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4 _inst_4 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3))))) (LinearMap.addCommMonoid.{u3, u3, max u1 u3, u2} R R (ι -> R) M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Pi.addCommMonoid.{u1, u3} ι (fun (ᾰ : ι) => R) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} R (NonUnitalNonAssocRing.toAddCommGroup.{u3} R (NonAssocRing.toNonUnitalNonAssocRing.{u3} R (Ring.toNonAssocRing.{u3} R (CommRing.toRing.{u3} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (Pi.Function.module.{u1, u3, u3} ι R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u3} R (NonUnitalNonAssocRing.toAddCommGroup.{u3} R (NonAssocRing.toNonUnitalNonAssocRing.{u3} R (Ring.toNonAssocRing.{u3} R (CommRing.toRing.{u3} R _inst_3))))) (Semiring.toModule.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) _inst_4 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3))))) (LinearMap.module.{u3, u3, u3, u2, u2} R R R M M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4 _inst_4 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) _inst_4 (PiToModule.fromEnd._proof_1.{u2, u3} M _inst_2 R _inst_3 _inst_4)) (LinearMap.module.{u3, u3, u3, max u1 u3, u2} R R R (ι -> R) M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Pi.addCommMonoid.{u1, u3} ι (fun (ᾰ : ι) => R) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} R (NonUnitalNonAssocRing.toAddCommGroup.{u3} R (NonAssocRing.toNonUnitalNonAssocRing.{u3} R (Ring.toNonAssocRing.{u3} R (CommRing.toRing.{u3} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (Pi.Function.module.{u1, u3, u3} ι R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u3} R (NonUnitalNonAssocRing.toAddCommGroup.{u3} R (NonAssocRing.toNonUnitalNonAssocRing.{u3} R (Ring.toNonAssocRing.{u3} R (CommRing.toRing.{u3} R _inst_3))))) (Semiring.toModule.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) _inst_4 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) _inst_4 (PiToModule.fromEnd._proof_2.{u2, u3} M _inst_2 R _inst_3 _inst_4))) (fun (_x : LinearMap.{u3, u3, u2, max (max u1 u3) u2} R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) (Module.End.{u3, u2} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (LinearMap.{u3, u3, max u1 u3, u2} R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) (ι -> R) M (Pi.addCommMonoid.{u1, u3} ι (fun (ᾰ : ι) => R) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} R (NonUnitalNonAssocRing.toAddCommGroup.{u3} R (NonAssocRing.toNonUnitalNonAssocRing.{u3} R (Ring.toNonAssocRing.{u3} R (CommRing.toRing.{u3} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (Pi.Function.module.{u1, u3, u3} ι R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u3} R (NonUnitalNonAssocRing.toAddCommGroup.{u3} R (NonAssocRing.toNonUnitalNonAssocRing.{u3} R (Ring.toNonAssocRing.{u3} R (CommRing.toRing.{u3} R _inst_3))))) (Semiring.toModule.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) _inst_4) (LinearMap.addCommMonoid.{u3, u3, u2, u2} R R M M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4 _inst_4 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3))))) (LinearMap.addCommMonoid.{u3, u3, max u1 u3, u2} R R (ι -> R) M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Pi.addCommMonoid.{u1, u3} ι (fun (ᾰ : ι) => R) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} R (NonUnitalNonAssocRing.toAddCommGroup.{u3} R (NonAssocRing.toNonUnitalNonAssocRing.{u3} R (Ring.toNonAssocRing.{u3} R (CommRing.toRing.{u3} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (Pi.Function.module.{u1, u3, u3} ι R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u3} R (NonUnitalNonAssocRing.toAddCommGroup.{u3} R (NonAssocRing.toNonUnitalNonAssocRing.{u3} R (Ring.toNonAssocRing.{u3} R (CommRing.toRing.{u3} R _inst_3))))) (Semiring.toModule.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) _inst_4 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3))))) (LinearMap.module.{u3, u3, u3, u2, u2} R R R M M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4 _inst_4 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) _inst_4 (PiToModule.fromEnd._proof_1.{u2, u3} M _inst_2 R _inst_3 _inst_4)) (LinearMap.module.{u3, u3, u3, max u1 u3, u2} R R R (ι -> R) M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Pi.addCommMonoid.{u1, u3} ι (fun (ᾰ : ι) => R) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} R (NonUnitalNonAssocRing.toAddCommGroup.{u3} R (NonAssocRing.toNonUnitalNonAssocRing.{u3} R (Ring.toNonAssocRing.{u3} R (CommRing.toRing.{u3} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (Pi.Function.module.{u1, u3, u3} ι R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u3} R (NonUnitalNonAssocRing.toAddCommGroup.{u3} R (NonAssocRing.toNonUnitalNonAssocRing.{u3} R (Ring.toNonAssocRing.{u3} R (CommRing.toRing.{u3} R _inst_3))))) (Semiring.toModule.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) _inst_4 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) _inst_4 (PiToModule.fromEnd._proof_2.{u2, u3} M _inst_2 R _inst_3 _inst_4))) => (Module.End.{u3, u2} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) -> (LinearMap.{u3, u3, max u1 u3, u2} R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) (ι -> R) M (Pi.addCommMonoid.{u1, u3} ι (fun (ᾰ : ι) => R) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} R (NonUnitalNonAssocRing.toAddCommGroup.{u3} R (NonAssocRing.toNonUnitalNonAssocRing.{u3} R (Ring.toNonAssocRing.{u3} R (CommRing.toRing.{u3} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (Pi.Function.module.{u1, u3, u3} ι R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u3} R (NonUnitalNonAssocRing.toAddCommGroup.{u3} R (NonAssocRing.toNonUnitalNonAssocRing.{u3} R (Ring.toNonAssocRing.{u3} R (CommRing.toRing.{u3} R _inst_3))))) (Semiring.toModule.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) _inst_4)) (LinearMap.hasCoeToFun.{u3, u3, u2, max (max u1 u3) u2} R R (Module.End.{u3, u2} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (LinearMap.{u3, u3, max u1 u3, u2} R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) (ι -> R) M (Pi.addCommMonoid.{u1, u3} ι (fun (ᾰ : ι) => R) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} R (NonUnitalNonAssocRing.toAddCommGroup.{u3} R (NonAssocRing.toNonUnitalNonAssocRing.{u3} R (Ring.toNonAssocRing.{u3} R (CommRing.toRing.{u3} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (Pi.Function.module.{u1, u3, u3} ι R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u3} R (NonUnitalNonAssocRing.toAddCommGroup.{u3} R (NonAssocRing.toNonUnitalNonAssocRing.{u3} R (Ring.toNonAssocRing.{u3} R (CommRing.toRing.{u3} R _inst_3))))) (Semiring.toModule.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) _inst_4) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (LinearMap.addCommMonoid.{u3, u3, u2, u2} R R M M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4 _inst_4 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3))))) (LinearMap.addCommMonoid.{u3, u3, max u1 u3, u2} R R (ι -> R) M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Pi.addCommMonoid.{u1, u3} ι (fun (ᾰ : ι) => R) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} R (NonUnitalNonAssocRing.toAddCommGroup.{u3} R (NonAssocRing.toNonUnitalNonAssocRing.{u3} R (Ring.toNonAssocRing.{u3} R (CommRing.toRing.{u3} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (Pi.Function.module.{u1, u3, u3} ι R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u3} R (NonUnitalNonAssocRing.toAddCommGroup.{u3} R (NonAssocRing.toNonUnitalNonAssocRing.{u3} R (Ring.toNonAssocRing.{u3} R (CommRing.toRing.{u3} R _inst_3))))) (Semiring.toModule.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) _inst_4 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3))))) (LinearMap.module.{u3, u3, u3, u2, u2} R R R M M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4 _inst_4 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) _inst_4 (PiToModule.fromEnd._proof_1.{u2, u3} M _inst_2 R _inst_3 _inst_4)) (LinearMap.module.{u3, u3, u3, max u1 u3, u2} R R R (ι -> R) M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Pi.addCommMonoid.{u1, u3} ι (fun (ᾰ : ι) => R) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} R (NonUnitalNonAssocRing.toAddCommGroup.{u3} R (NonAssocRing.toNonUnitalNonAssocRing.{u3} R (Ring.toNonAssocRing.{u3} R (CommRing.toRing.{u3} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (Pi.Function.module.{u1, u3, u3} ι R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u3} R (NonUnitalNonAssocRing.toAddCommGroup.{u3} R (NonAssocRing.toNonUnitalNonAssocRing.{u3} R (Ring.toNonAssocRing.{u3} R (CommRing.toRing.{u3} R _inst_3))))) (Semiring.toModule.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) _inst_4 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) _inst_4 (PiToModule.fromEnd._proof_2.{u2, u3} M _inst_2 R _inst_3 _inst_4)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3))))) (PiToModule.fromEnd.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b)))
-but is expected to have type
- forall {ι : Type.{u1}} [_inst_1 : Fintype.{u1} ι] {M : Type.{u3}} [_inst_2 : AddCommGroup.{u3} M] (R : Type.{u2}) [_inst_3 : CommRing.{u2} R] [_inst_4 : Module.{u2, u3} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2)] (b : ι -> M), (Eq.{succ u3} (Submodule.{u2, u3} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_4) (Submodule.span.{u2, u3} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_4 (Set.range.{u3, succ u1} M ι b)) (Top.top.{u3} (Submodule.{u2, u3} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_4) (Submodule.instTopSubmodule.{u2, u3} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_4))) -> (Function.Injective.{succ u3, max (max (succ u1) (succ u3)) (succ u2)} (Module.End.{u2, u3} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_4) (LinearMap.{u2, u2, max u1 u2, u3} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (ι -> R) M (Pi.addCommMonoid.{u1, u2} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (Pi.module.{u1, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.Charpoly.LinearMap._hyg.392 : ι) => R) R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_3))))) (fun (i : ι) => Semiring.toModule.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) _inst_4) (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u3, max (max (succ u1) (succ u3)) (succ u2)} (LinearMap.{u2, u2, u3, max u3 u1 u2} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Module.End.{u2, u3} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_4) (LinearMap.{u2, u2, max u1 u2, u3} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (ι -> R) M (Pi.addCommMonoid.{u1, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.Charpoly.LinearMap._hyg.392 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (Pi.module.{u1, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.Charpoly.LinearMap._hyg.392 : ι) => R) R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_3))))) (fun (i : ι) => Semiring.toModule.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) _inst_4) (LinearMap.addCommMonoid.{u2, u2, u3, u3} R R M M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_4 _inst_4 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) (LinearMap.addCommMonoid.{u2, u2, max u1 u2, u3} R R (ι -> R) M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Pi.addCommMonoid.{u1, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.Charpoly.LinearMap._hyg.392 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (Pi.module.{u1, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.Charpoly.LinearMap._hyg.392 : ι) => R) R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_3))))) (fun (i : ι) => Semiring.toModule.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) _inst_4 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u2, u2, u2, u3, u3} R R R M M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_4 _inst_4 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_4 (smulCommClass_self.{u2, u3} R M (CommRing.toCommMonoid.{u2} R _inst_3) (MulActionWithZero.toMulAction.{u2, u3} R M (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (NegZeroClass.toZero.{u3} M (SubNegZeroMonoid.toNegZeroClass.{u3} M (SubtractionMonoid.toSubNegZeroMonoid.{u3} M (SubtractionCommMonoid.toSubtractionMonoid.{u3} M (AddCommGroup.toDivisionAddCommMonoid.{u3} M _inst_2))))) (Module.toMulActionWithZero.{u2, u3} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_4)))) (LinearMap.instModuleLinearMapAddCommMonoid.{u2, u2, u2, max u1 u2, u3} R R R (ι -> R) M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Pi.addCommMonoid.{u1, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.Charpoly.LinearMap._hyg.392 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (Pi.module.{u1, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.Charpoly.LinearMap._hyg.392 : ι) => R) R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_3))))) (fun (i : ι) => Semiring.toModule.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) _inst_4 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_4 (smulCommClass_self.{u2, u3} R M (CommRing.toCommMonoid.{u2} R _inst_3) (MulActionWithZero.toMulAction.{u2, u3} R M (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (NegZeroClass.toZero.{u3} M (SubNegZeroMonoid.toNegZeroClass.{u3} M (SubtractionMonoid.toSubNegZeroMonoid.{u3} M (SubtractionCommMonoid.toSubtractionMonoid.{u3} M (AddCommGroup.toDivisionAddCommMonoid.{u3} M _inst_2))))) (Module.toMulActionWithZero.{u2, u3} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_4))))) (Module.End.{u2, u3} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_4) (fun (_x : Module.End.{u2, u3} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_4) => (fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6193 : Module.End.{u2, u3} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_4) => LinearMap.{u2, u2, max u1 u2, u3} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (ι -> R) M (Pi.addCommMonoid.{u1, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.Charpoly.LinearMap._hyg.392 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (Pi.module.{u1, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.Charpoly.LinearMap._hyg.392 : ι) => R) R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_3))))) (fun (i : ι) => Semiring.toModule.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) _inst_4) _x) (LinearMap.instFunLikeLinearMap.{u2, u2, u3, max (max u1 u3) u2} R R (Module.End.{u2, u3} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_4) (LinearMap.{u2, u2, max u1 u2, u3} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (ι -> R) M (Pi.addCommMonoid.{u1, u2} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (Pi.module.{u1, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.Charpoly.LinearMap._hyg.392 : ι) => R) R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_3))))) (fun (i : ι) => Semiring.toModule.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) _inst_4) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (LinearMap.addCommMonoid.{u2, u2, u3, u3} R R M M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_4 _inst_4 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) (LinearMap.addCommMonoid.{u2, u2, max u1 u2, u3} R R (ι -> R) M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Pi.addCommMonoid.{u1, u2} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (Pi.module.{u1, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.Charpoly.LinearMap._hyg.392 : ι) => R) R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_3))))) (fun (i : ι) => Semiring.toModule.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) _inst_4 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u2, u2, u2, u3, u3} R R R M M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_4 _inst_4 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_4 (smulCommClass_self.{u2, u3} R M (CommRing.toCommMonoid.{u2} R _inst_3) (MulActionWithZero.toMulAction.{u2, u3} R M (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (NegZeroClass.toZero.{u3} M (SubNegZeroMonoid.toNegZeroClass.{u3} M (SubtractionMonoid.toSubNegZeroMonoid.{u3} M (SubtractionCommMonoid.toSubtractionMonoid.{u3} M (AddCommGroup.toDivisionAddCommMonoid.{u3} M _inst_2))))) (Module.toMulActionWithZero.{u2, u3} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_4)))) (LinearMap.instModuleLinearMapAddCommMonoid.{u2, u2, u2, max u1 u2, u3} R R R (ι -> R) M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Pi.addCommMonoid.{u1, u2} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (Pi.module.{u1, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.Charpoly.LinearMap._hyg.392 : ι) => R) R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_3))))) (fun (i : ι) => Semiring.toModule.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) _inst_4 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_4 (smulCommClass_self.{u2, u3} R M (CommRing.toCommMonoid.{u2} R _inst_3) (MulActionWithZero.toMulAction.{u2, u3} R M (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (NegZeroClass.toZero.{u3} M (SubNegZeroMonoid.toNegZeroClass.{u3} M (SubtractionMonoid.toSubNegZeroMonoid.{u3} M (SubtractionCommMonoid.toSubtractionMonoid.{u3} M (AddCommGroup.toDivisionAddCommMonoid.{u3} M _inst_2))))) (Module.toMulActionWithZero.{u2, u3} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_4)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) (PiToModule.fromEnd.{u1, u3, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b)))
+<too large>
Case conversion may be inaccurate. Consider using '#align pi_to_module.from_End_injective PiToModule.fromEnd_injectiveₓ'. -/
theorem PiToModule.fromEnd_injective (hb : Submodule.span R (Set.range b) = ⊤) :
Function.Injective (PiToModule.fromEnd R b) :=
@@ -138,10 +123,7 @@ def Matrix.Represents (A : Matrix ι ι R) (f : Module.End R M) : Prop :=
variable {b}
/- warning: matrix.represents.congr_fun -> Matrix.Represents.congr_fun is a dubious translation:
-lean 3 declaration is
- forall {ι : Type.{u1}} [_inst_1 : Fintype.{u1} ι] {M : Type.{u2}} [_inst_2 : AddCommGroup.{u2} M] {R : Type.{u3}} [_inst_3 : CommRing.{u3} R] [_inst_4 : Module.{u3, u2} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2)] {b : ι -> M} [_inst_5 : DecidableEq.{succ u1} ι] {A : Matrix.{u1, u1, u3} ι ι R} {f : Module.End.{u3, u2} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4}, (Matrix.Represents.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b) A f) -> (forall (x : ι -> R), Eq.{succ u2} M (coeFn.{max (succ (max u1 u3)) (succ u2), max (succ (max u1 u3)) (succ u2)} (LinearMap.{u3, u3, max u1 u3, u2} R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) (ι -> R) M (Pi.addCommMonoid.{u1, u3} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (Pi.Function.module.{u1, u3, u3} ι R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3))))) (Semiring.toModule.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) _inst_4) (fun (_x : LinearMap.{u3, u3, max u1 u3, u2} R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) (ι -> R) M (Pi.addCommMonoid.{u1, u3} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (Pi.Function.module.{u1, u3, u3} ι R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3))))) (Semiring.toModule.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) _inst_4) => (ι -> R) -> M) (LinearMap.hasCoeToFun.{u3, u3, max u1 u3, u2} R R (ι -> R) M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Pi.addCommMonoid.{u1, u3} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (Pi.Function.module.{u1, u3, u3} ι R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3))))) (Semiring.toModule.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) _inst_4 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3))))) (coeFn.{max (succ (max u1 u2)) (succ (max (max u1 u3) u2)), max (succ (max u1 u2)) (succ (max (max u1 u3) u2))} (LinearMap.{u3, u3, max u1 u2, max (max u1 u3) u2} R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) (ι -> M) (LinearMap.{u3, u3, max u1 u3, u2} R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) (ι -> R) M (Pi.addCommMonoid.{u1, u3} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (Pi.Function.module.{u1, u3, u3} ι R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3))))) (Semiring.toModule.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) _inst_4) (Pi.addCommMonoid.{u1, u2} ι (fun (ᾰ : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u2} M _inst_2)) (LinearMap.addCommMonoid.{u3, u3, max u1 u3, u2} R R (ι -> R) M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Pi.addCommMonoid.{u1, u3} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (Pi.Function.module.{u1, u3, u3} ι R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3))))) (Semiring.toModule.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) _inst_4 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3))))) (Pi.Function.module.{u1, u3, u2} ι R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (LinearMap.module.{u3, u3, u3, max u1 u3, u2} R R R (ι -> R) M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Pi.addCommMonoid.{u1, u3} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (Pi.Function.module.{u1, u3, u3} ι R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3))))) (Semiring.toModule.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) _inst_4 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) _inst_4 (smulCommClass_self.{u3, u2} R M (CommRing.toCommMonoid.{u3} R _inst_3) (MulActionWithZero.toMulAction.{u3, u2} R M (Semiring.toMonoidWithZero.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3))) (AddZeroClass.toHasZero.{u2} M (AddMonoid.toAddZeroClass.{u2} M (AddCommMonoid.toAddMonoid.{u2} M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2)))) (Module.toMulActionWithZero.{u3, u2} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4))))) (fun (_x : LinearMap.{u3, u3, max u1 u2, max (max u1 u3) u2} R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) (ι -> M) (LinearMap.{u3, u3, max u1 u3, u2} R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) (ι -> R) M (Pi.addCommMonoid.{u1, u3} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (Pi.Function.module.{u1, u3, u3} ι R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3))))) (Semiring.toModule.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) _inst_4) (Pi.addCommMonoid.{u1, u2} ι (fun (ᾰ : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u2} M _inst_2)) (LinearMap.addCommMonoid.{u3, u3, max u1 u3, u2} R R (ι -> R) M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Pi.addCommMonoid.{u1, u3} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (Pi.Function.module.{u1, u3, u3} ι R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3))))) (Semiring.toModule.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) _inst_4 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3))))) (Pi.Function.module.{u1, u3, u2} ι R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (LinearMap.module.{u3, u3, u3, max u1 u3, u2} R R R (ι -> R) M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Pi.addCommMonoid.{u1, u3} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (Pi.Function.module.{u1, u3, u3} ι R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3))))) (Semiring.toModule.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) _inst_4 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) _inst_4 (smulCommClass_self.{u3, u2} R M (CommRing.toCommMonoid.{u3} R _inst_3) (MulActionWithZero.toMulAction.{u3, u2} R M (Semiring.toMonoidWithZero.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3))) (AddZeroClass.toHasZero.{u2} M (AddMonoid.toAddZeroClass.{u2} M (AddCommMonoid.toAddMonoid.{u2} M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2)))) (Module.toMulActionWithZero.{u3, u2} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4))))) => (ι -> M) -> (LinearMap.{u3, u3, max u1 u3, u2} R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) (ι -> R) M (Pi.addCommMonoid.{u1, u3} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (Pi.Function.module.{u1, u3, u3} ι R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3))))) (Semiring.toModule.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) _inst_4)) (LinearMap.hasCoeToFun.{u3, u3, max u1 u2, max (max u1 u3) u2} R R (ι -> M) (LinearMap.{u3, u3, max u1 u3, u2} R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) (ι -> R) M (Pi.addCommMonoid.{u1, u3} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (Pi.Function.module.{u1, u3, u3} ι R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3))))) (Semiring.toModule.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) _inst_4) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Pi.addCommMonoid.{u1, u2} ι (fun (ᾰ : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u2} M _inst_2)) (LinearMap.addCommMonoid.{u3, u3, max u1 u3, u2} R R (ι -> R) M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Pi.addCommMonoid.{u1, u3} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (Pi.Function.module.{u1, u3, u3} ι R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3))))) (Semiring.toModule.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) _inst_4 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3))))) (Pi.Function.module.{u1, u3, u2} ι R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (LinearMap.module.{u3, u3, u3, max u1 u3, u2} R R R (ι -> R) M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Pi.addCommMonoid.{u1, u3} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (Pi.Function.module.{u1, u3, u3} ι R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3))))) (Semiring.toModule.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) _inst_4 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) _inst_4 (smulCommClass_self.{u3, u2} R M (CommRing.toCommMonoid.{u3} R _inst_3) (MulActionWithZero.toMulAction.{u3, u2} R M (Semiring.toMonoidWithZero.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3))) (AddZeroClass.toHasZero.{u2} M (AddMonoid.toAddZeroClass.{u2} M (AddCommMonoid.toAddMonoid.{u2} M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2)))) (Module.toMulActionWithZero.{u3, u2} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4)))) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3))))) (Fintype.total.{u1, u2, u3, u3} ι M R _inst_1 (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4 R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) _inst_4 (smulCommClass_self.{u3, u2} R M (CommRing.toCommMonoid.{u3} R _inst_3) (MulActionWithZero.toMulAction.{u3, u2} R M (Semiring.toMonoidWithZero.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3))) (AddZeroClass.toHasZero.{u2} M (AddMonoid.toAddZeroClass.{u2} M (AddCommMonoid.toAddMonoid.{u2} M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2)))) (Module.toMulActionWithZero.{u3, u2} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4)))) b) (Matrix.mulVec.{u3, u1, u1} ι ι R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u3} R (NonAssocRing.toNonUnitalNonAssocRing.{u3} R (Ring.toNonAssocRing.{u3} R (CommRing.toRing.{u3} R _inst_3)))) _inst_1 A x)) (coeFn.{succ u2, succ u2} (Module.End.{u3, u2} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (fun (_x : LinearMap.{u3, u3, u2, u2} R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4 _inst_4) => M -> M) (LinearMap.hasCoeToFun.{u3, u3, u2, u2} R R M M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4 _inst_4 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3))))) f (coeFn.{max (succ (max u1 u3)) (succ u2), max (succ (max u1 u3)) (succ u2)} (LinearMap.{u3, u3, max u1 u3, u2} R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) (ι -> R) M (Pi.addCommMonoid.{u1, u3} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (Pi.Function.module.{u1, u3, u3} ι R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3))))) (Semiring.toModule.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) _inst_4) (fun (_x : LinearMap.{u3, u3, max u1 u3, u2} R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) (ι -> R) M (Pi.addCommMonoid.{u1, u3} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (Pi.Function.module.{u1, u3, u3} ι R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3))))) (Semiring.toModule.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) _inst_4) => (ι -> R) -> M) (LinearMap.hasCoeToFun.{u3, u3, max u1 u3, u2} R R (ι -> R) M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Pi.addCommMonoid.{u1, u3} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (Pi.Function.module.{u1, u3, u3} ι R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3))))) (Semiring.toModule.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) _inst_4 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3))))) (coeFn.{max (succ (max u1 u2)) (succ (max (max u1 u3) u2)), max (succ (max u1 u2)) (succ (max (max u1 u3) u2))} (LinearMap.{u3, u3, max u1 u2, max (max u1 u3) u2} R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) (ι -> M) (LinearMap.{u3, u3, max u1 u3, u2} R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) (ι -> R) M (Pi.addCommMonoid.{u1, u3} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (Pi.Function.module.{u1, u3, u3} ι R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3))))) (Semiring.toModule.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) _inst_4) (Pi.addCommMonoid.{u1, u2} ι (fun (ᾰ : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u2} M _inst_2)) (LinearMap.addCommMonoid.{u3, u3, max u1 u3, u2} R R (ι -> R) M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Pi.addCommMonoid.{u1, u3} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (Pi.Function.module.{u1, u3, u3} ι R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3))))) (Semiring.toModule.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) _inst_4 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3))))) (Pi.Function.module.{u1, u3, u2} ι R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (LinearMap.module.{u3, u3, u3, max u1 u3, u2} R R R (ι -> R) M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Pi.addCommMonoid.{u1, u3} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (Pi.Function.module.{u1, u3, u3} ι R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3))))) (Semiring.toModule.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) _inst_4 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) _inst_4 (smulCommClass_self.{u3, u2} R M (CommRing.toCommMonoid.{u3} R _inst_3) (MulActionWithZero.toMulAction.{u3, u2} R M (Semiring.toMonoidWithZero.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3))) (AddZeroClass.toHasZero.{u2} M (AddMonoid.toAddZeroClass.{u2} M (AddCommMonoid.toAddMonoid.{u2} M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2)))) (Module.toMulActionWithZero.{u3, u2} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4))))) (fun (_x : LinearMap.{u3, u3, max u1 u2, max (max u1 u3) u2} R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) (ι -> M) (LinearMap.{u3, u3, max u1 u3, u2} R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) (ι -> R) M (Pi.addCommMonoid.{u1, u3} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (Pi.Function.module.{u1, u3, u3} ι R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3))))) (Semiring.toModule.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) _inst_4) (Pi.addCommMonoid.{u1, u2} ι (fun (ᾰ : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u2} M _inst_2)) (LinearMap.addCommMonoid.{u3, u3, max u1 u3, u2} R R (ι -> R) M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Pi.addCommMonoid.{u1, u3} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (Pi.Function.module.{u1, u3, u3} ι R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3))))) (Semiring.toModule.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) _inst_4 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3))))) (Pi.Function.module.{u1, u3, u2} ι R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (LinearMap.module.{u3, u3, u3, max u1 u3, u2} R R R (ι -> R) M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Pi.addCommMonoid.{u1, u3} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (Pi.Function.module.{u1, u3, u3} ι R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3))))) (Semiring.toModule.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) _inst_4 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) _inst_4 (smulCommClass_self.{u3, u2} R M (CommRing.toCommMonoid.{u3} R _inst_3) (MulActionWithZero.toMulAction.{u3, u2} R M (Semiring.toMonoidWithZero.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3))) (AddZeroClass.toHasZero.{u2} M (AddMonoid.toAddZeroClass.{u2} M (AddCommMonoid.toAddMonoid.{u2} M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2)))) (Module.toMulActionWithZero.{u3, u2} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4))))) => (ι -> M) -> (LinearMap.{u3, u3, max u1 u3, u2} R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) (ι -> R) M (Pi.addCommMonoid.{u1, u3} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (Pi.Function.module.{u1, u3, u3} ι R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3))))) (Semiring.toModule.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) _inst_4)) (LinearMap.hasCoeToFun.{u3, u3, max u1 u2, max (max u1 u3) u2} R R (ι -> M) (LinearMap.{u3, u3, max u1 u3, u2} R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) (ι -> R) M (Pi.addCommMonoid.{u1, u3} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (Pi.Function.module.{u1, u3, u3} ι R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3))))) (Semiring.toModule.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) _inst_4) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Pi.addCommMonoid.{u1, u2} ι (fun (ᾰ : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u2} M _inst_2)) (LinearMap.addCommMonoid.{u3, u3, max u1 u3, u2} R R (ι -> R) M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Pi.addCommMonoid.{u1, u3} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (Pi.Function.module.{u1, u3, u3} ι R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3))))) (Semiring.toModule.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) _inst_4 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3))))) (Pi.Function.module.{u1, u3, u2} ι R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (LinearMap.module.{u3, u3, u3, max u1 u3, u2} R R R (ι -> R) M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Pi.addCommMonoid.{u1, u3} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (Pi.Function.module.{u1, u3, u3} ι R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3))))) (Semiring.toModule.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) _inst_4 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) _inst_4 (smulCommClass_self.{u3, u2} R M (CommRing.toCommMonoid.{u3} R _inst_3) (MulActionWithZero.toMulAction.{u3, u2} R M (Semiring.toMonoidWithZero.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3))) (AddZeroClass.toHasZero.{u2} M (AddMonoid.toAddZeroClass.{u2} M (AddCommMonoid.toAddMonoid.{u2} M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2)))) (Module.toMulActionWithZero.{u3, u2} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4)))) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3))))) (Fintype.total.{u1, u2, u3, u3} ι M R _inst_1 (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4 R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) _inst_4 (smulCommClass_self.{u3, u2} R M (CommRing.toCommMonoid.{u3} R _inst_3) (MulActionWithZero.toMulAction.{u3, u2} R M (Semiring.toMonoidWithZero.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3))) (AddZeroClass.toHasZero.{u2} M (AddMonoid.toAddZeroClass.{u2} M (AddCommMonoid.toAddMonoid.{u2} M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2)))) (Module.toMulActionWithZero.{u3, u2} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4)))) b) x)))
-but is expected to have type
- forall {ι : Type.{u3}} [_inst_1 : Fintype.{u3} ι] {M : Type.{u1}} [_inst_2 : AddCommGroup.{u1} M] {R : Type.{u2}} [_inst_3 : CommRing.{u2} R] [_inst_4 : Module.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2)] {b : ι -> M} [_inst_5 : DecidableEq.{succ u3} ι] {A : Matrix.{u3, u3, u2} ι ι R} {f : Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4}, (Matrix.Represents.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b) A f) -> (forall (x : ι -> R), Eq.{succ u1} ((fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6193 : ι -> R) => M) (Matrix.mulVec.{u2, u3, u3} ι ι R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_3)))) _inst_1 A x)) (FunLike.coe.{max (max (succ u3) (succ u1)) (succ u2), max (succ u3) (succ u2), succ u1} ((fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6193 : ι -> M) => LinearMap.{u2, u2, max u3 u2, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (ι -> R) M (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Finsupp._hyg.14570 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Finsupp._hyg.14570 : ι) => R) R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) (fun (i : ι) => Semiring.toModule.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) _inst_4) b) (ι -> R) (fun (_x : ι -> R) => (fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6193 : ι -> R) => M) _x) (LinearMap.instFunLikeLinearMap.{u2, u2, max u3 u2, u1} R R (ι -> R) M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Pi.addCommMonoid.{u3, u2} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Finsupp._hyg.14570 : ι) => R) R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) (fun (i : ι) => Semiring.toModule.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) _inst_4 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), max (succ u1) (succ u3), max (max (succ u2) (succ u1)) (succ u3)} (LinearMap.{u2, u2, max u3 u1, max u1 u3 u2} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (ι -> M) (LinearMap.{u2, u2, max u3 u2, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (ι -> R) M (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Finsupp._hyg.14570 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Finsupp._hyg.14570 : ι) => R) R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) (fun (i : ι) => Semiring.toModule.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) _inst_4) (Pi.addCommMonoid.{u3, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Finsupp._hyg.14558 : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u1} M _inst_2)) (LinearMap.addCommMonoid.{u2, u2, max u3 u2, u1} R R (ι -> R) M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Finsupp._hyg.14570 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Finsupp._hyg.14570 : ι) => R) R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) (fun (i : ι) => Semiring.toModule.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) _inst_4 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) (Pi.module.{u3, u1, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Finsupp._hyg.14558 : ι) => M) R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (fun (i : ι) => _inst_4)) (LinearMap.instModuleLinearMapAddCommMonoid.{u2, u2, u2, max u3 u2, u1} R R R (ι -> R) M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Finsupp._hyg.14570 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Finsupp._hyg.14570 : ι) => R) R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) (fun (i : ι) => Semiring.toModule.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) _inst_4 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_4 (smulCommClass_self.{u2, u1} R M (CommRing.toCommMonoid.{u2} R _inst_3) (MulActionWithZero.toMulAction.{u2, u1} R M (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (NegZeroClass.toZero.{u1} M (SubNegZeroMonoid.toNegZeroClass.{u1} M (SubtractionMonoid.toSubNegZeroMonoid.{u1} M (SubtractionCommMonoid.toSubtractionMonoid.{u1} M (AddCommGroup.toDivisionAddCommMonoid.{u1} M _inst_2))))) (Module.toMulActionWithZero.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4))))) (ι -> M) (fun (_x : ι -> M) => (fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6193 : ι -> M) => LinearMap.{u2, u2, max u3 u2, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (ι -> R) M (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Finsupp._hyg.14570 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Finsupp._hyg.14570 : ι) => R) R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) (fun (i : ι) => Semiring.toModule.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) _inst_4) _x) (LinearMap.instFunLikeLinearMap.{u2, u2, max u1 u3, max (max u2 u1) u3} R R (ι -> M) (LinearMap.{u2, u2, max u3 u2, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (ι -> R) M (Pi.addCommMonoid.{u3, u2} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Finsupp._hyg.14570 : ι) => R) R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) (fun (i : ι) => Semiring.toModule.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) _inst_4) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Pi.addCommMonoid.{u3, u1} ι (fun (ᾰ : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u1} M _inst_2)) (LinearMap.addCommMonoid.{u2, u2, max u3 u2, u1} R R (ι -> R) M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Pi.addCommMonoid.{u3, u2} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Finsupp._hyg.14570 : ι) => R) R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) (fun (i : ι) => Semiring.toModule.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) _inst_4 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) (Pi.module.{u3, u1, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Finsupp._hyg.14558 : ι) => M) R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (fun (i : ι) => _inst_4)) (LinearMap.instModuleLinearMapAddCommMonoid.{u2, u2, u2, max u3 u2, u1} R R R (ι -> R) M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Pi.addCommMonoid.{u3, u2} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Finsupp._hyg.14570 : ι) => R) R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) (fun (i : ι) => Semiring.toModule.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) _inst_4 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_4 (smulCommClass_self.{u2, u1} R M (CommRing.toCommMonoid.{u2} R _inst_3) (MulActionWithZero.toMulAction.{u2, u1} R M (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (NegZeroClass.toZero.{u1} M (SubNegZeroMonoid.toNegZeroClass.{u1} M (SubtractionMonoid.toSubNegZeroMonoid.{u1} M (SubtractionCommMonoid.toSubtractionMonoid.{u1} M (AddCommGroup.toDivisionAddCommMonoid.{u1} M _inst_2))))) (Module.toMulActionWithZero.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) (Fintype.total.{u3, u1, u2, u2} ι M R _inst_1 (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4 R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_4 (smulCommClass_self.{u2, u1} R M (CommRing.toCommMonoid.{u2} R _inst_3) (MulActionWithZero.toMulAction.{u2, u1} R M (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (NegZeroClass.toZero.{u1} M (SubNegZeroMonoid.toNegZeroClass.{u1} M (SubtractionMonoid.toSubNegZeroMonoid.{u1} M (SubtractionCommMonoid.toSubtractionMonoid.{u1} M (AddCommGroup.toDivisionAddCommMonoid.{u1} M _inst_2))))) (Module.toMulActionWithZero.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4)))) b) (Matrix.mulVec.{u2, u3, u3} ι ι R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_3)))) _inst_1 A x)) (FunLike.coe.{succ u1, succ u1, succ u1} (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6193 : M) => M) _x) (LinearMap.instFunLikeLinearMap.{u2, u2, u1, u1} R R M M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4 _inst_4 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) f (FunLike.coe.{max (max (succ u3) (succ u1)) (succ u2), max (succ u3) (succ u2), succ u1} ((fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6193 : ι -> M) => LinearMap.{u2, u2, max u3 u2, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (ι -> R) M (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Finsupp._hyg.14570 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Finsupp._hyg.14570 : ι) => R) R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) (fun (i : ι) => Semiring.toModule.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) _inst_4) b) (ι -> R) (fun (_x : ι -> R) => (fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6193 : ι -> R) => M) _x) (LinearMap.instFunLikeLinearMap.{u2, u2, max u3 u2, u1} R R (ι -> R) M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Pi.addCommMonoid.{u3, u2} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Finsupp._hyg.14570 : ι) => R) R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) (fun (i : ι) => Semiring.toModule.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) _inst_4 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), max (succ u1) (succ u3), max (max (succ u2) (succ u1)) (succ u3)} (LinearMap.{u2, u2, max u3 u1, max u1 u3 u2} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (ι -> M) (LinearMap.{u2, u2, max u3 u2, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (ι -> R) M (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Finsupp._hyg.14570 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Finsupp._hyg.14570 : ι) => R) R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) (fun (i : ι) => Semiring.toModule.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) _inst_4) (Pi.addCommMonoid.{u3, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Finsupp._hyg.14558 : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u1} M _inst_2)) (LinearMap.addCommMonoid.{u2, u2, max u3 u2, u1} R R (ι -> R) M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Finsupp._hyg.14570 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Finsupp._hyg.14570 : ι) => R) R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) (fun (i : ι) => Semiring.toModule.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) _inst_4 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) (Pi.module.{u3, u1, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Finsupp._hyg.14558 : ι) => M) R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (fun (i : ι) => _inst_4)) (LinearMap.instModuleLinearMapAddCommMonoid.{u2, u2, u2, max u3 u2, u1} R R R (ι -> R) M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Finsupp._hyg.14570 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Finsupp._hyg.14570 : ι) => R) R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) (fun (i : ι) => Semiring.toModule.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) _inst_4 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_4 (smulCommClass_self.{u2, u1} R M (CommRing.toCommMonoid.{u2} R _inst_3) (MulActionWithZero.toMulAction.{u2, u1} R M (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (NegZeroClass.toZero.{u1} M (SubNegZeroMonoid.toNegZeroClass.{u1} M (SubtractionMonoid.toSubNegZeroMonoid.{u1} M (SubtractionCommMonoid.toSubtractionMonoid.{u1} M (AddCommGroup.toDivisionAddCommMonoid.{u1} M _inst_2))))) (Module.toMulActionWithZero.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4))))) (ι -> M) (fun (_x : ι -> M) => (fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6193 : ι -> M) => LinearMap.{u2, u2, max u3 u2, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (ι -> R) M (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Finsupp._hyg.14570 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Finsupp._hyg.14570 : ι) => R) R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) (fun (i : ι) => Semiring.toModule.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) _inst_4) _x) (LinearMap.instFunLikeLinearMap.{u2, u2, max u1 u3, max (max u2 u1) u3} R R (ι -> M) (LinearMap.{u2, u2, max u3 u2, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (ι -> R) M (Pi.addCommMonoid.{u3, u2} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Finsupp._hyg.14570 : ι) => R) R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) (fun (i : ι) => Semiring.toModule.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) _inst_4) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Pi.addCommMonoid.{u3, u1} ι (fun (ᾰ : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u1} M _inst_2)) (LinearMap.addCommMonoid.{u2, u2, max u3 u2, u1} R R (ι -> R) M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Pi.addCommMonoid.{u3, u2} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Finsupp._hyg.14570 : ι) => R) R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) (fun (i : ι) => Semiring.toModule.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) _inst_4 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) (Pi.module.{u3, u1, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Finsupp._hyg.14558 : ι) => M) R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (fun (i : ι) => _inst_4)) (LinearMap.instModuleLinearMapAddCommMonoid.{u2, u2, u2, max u3 u2, u1} R R R (ι -> R) M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Pi.addCommMonoid.{u3, u2} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Finsupp._hyg.14570 : ι) => R) R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) (fun (i : ι) => Semiring.toModule.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) _inst_4 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_4 (smulCommClass_self.{u2, u1} R M (CommRing.toCommMonoid.{u2} R _inst_3) (MulActionWithZero.toMulAction.{u2, u1} R M (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (NegZeroClass.toZero.{u1} M (SubNegZeroMonoid.toNegZeroClass.{u1} M (SubtractionMonoid.toSubNegZeroMonoid.{u1} M (SubtractionCommMonoid.toSubtractionMonoid.{u1} M (AddCommGroup.toDivisionAddCommMonoid.{u1} M _inst_2))))) (Module.toMulActionWithZero.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) (Fintype.total.{u3, u1, u2, u2} ι M R _inst_1 (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4 R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_4 (smulCommClass_self.{u2, u1} R M (CommRing.toCommMonoid.{u2} R _inst_3) (MulActionWithZero.toMulAction.{u2, u1} R M (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (NegZeroClass.toZero.{u1} M (SubNegZeroMonoid.toNegZeroClass.{u1} M (SubtractionMonoid.toSubNegZeroMonoid.{u1} M (SubtractionCommMonoid.toSubtractionMonoid.{u1} M (AddCommGroup.toDivisionAddCommMonoid.{u1} M _inst_2))))) (Module.toMulActionWithZero.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4)))) b) x)))
+<too large>
Case conversion may be inaccurate. Consider using '#align matrix.represents.congr_fun Matrix.Represents.congr_funₓ'. -/
theorem Matrix.Represents.congr_fun {A : Matrix ι ι R} {f : Module.End R M} (h : A.Represents b f)
(x) : Fintype.total R R b (A.mulVec x) = f (Fintype.total R R b x) :=
@@ -149,10 +131,7 @@ theorem Matrix.Represents.congr_fun {A : Matrix ι ι R} {f : Module.End R M} (h
#align matrix.represents.congr_fun Matrix.Represents.congr_fun
/- warning: matrix.represents_iff -> Matrix.represents_iff is a dubious translation:
-lean 3 declaration is
- forall {ι : Type.{u1}} [_inst_1 : Fintype.{u1} ι] {M : Type.{u2}} [_inst_2 : AddCommGroup.{u2} M] {R : Type.{u3}} [_inst_3 : CommRing.{u3} R] [_inst_4 : Module.{u3, u2} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2)] {b : ι -> M} [_inst_5 : DecidableEq.{succ u1} ι] {A : Matrix.{u1, u1, u3} ι ι R} {f : Module.End.{u3, u2} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4}, Iff (Matrix.Represents.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b) A f) (forall (x : ι -> R), Eq.{succ u2} M (coeFn.{max (succ (max u1 u3)) (succ u2), max (succ (max u1 u3)) (succ u2)} (LinearMap.{u3, u3, max u1 u3, u2} R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) (ι -> R) M (Pi.addCommMonoid.{u1, u3} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (Pi.Function.module.{u1, u3, u3} ι R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3))))) (Semiring.toModule.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) _inst_4) (fun (_x : LinearMap.{u3, u3, max u1 u3, u2} R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) (ι -> R) M (Pi.addCommMonoid.{u1, u3} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (Pi.Function.module.{u1, u3, u3} ι R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3))))) (Semiring.toModule.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) _inst_4) => (ι -> R) -> M) (LinearMap.hasCoeToFun.{u3, u3, max u1 u3, u2} R R (ι -> R) M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Pi.addCommMonoid.{u1, u3} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (Pi.Function.module.{u1, u3, u3} ι R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3))))) (Semiring.toModule.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) _inst_4 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3))))) (coeFn.{max (succ (max u1 u2)) (succ (max (max u1 u3) u2)), max (succ (max u1 u2)) (succ (max (max u1 u3) u2))} (LinearMap.{u3, u3, max u1 u2, max (max u1 u3) u2} R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) (ι -> M) (LinearMap.{u3, u3, max u1 u3, u2} R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) (ι -> R) M (Pi.addCommMonoid.{u1, u3} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (Pi.Function.module.{u1, u3, u3} ι R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3))))) (Semiring.toModule.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) _inst_4) (Pi.addCommMonoid.{u1, u2} ι (fun (ᾰ : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u2} M _inst_2)) (LinearMap.addCommMonoid.{u3, u3, max u1 u3, u2} R R (ι -> R) M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Pi.addCommMonoid.{u1, u3} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (Pi.Function.module.{u1, u3, u3} ι R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3))))) (Semiring.toModule.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) _inst_4 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3))))) (Pi.Function.module.{u1, u3, u2} ι R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (LinearMap.module.{u3, u3, u3, max u1 u3, u2} R R R (ι -> R) M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Pi.addCommMonoid.{u1, u3} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (Pi.Function.module.{u1, u3, u3} ι R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3))))) (Semiring.toModule.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) _inst_4 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) _inst_4 (smulCommClass_self.{u3, u2} R M (CommRing.toCommMonoid.{u3} R _inst_3) (MulActionWithZero.toMulAction.{u3, u2} R M (Semiring.toMonoidWithZero.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3))) (AddZeroClass.toHasZero.{u2} M (AddMonoid.toAddZeroClass.{u2} M (AddCommMonoid.toAddMonoid.{u2} M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2)))) (Module.toMulActionWithZero.{u3, u2} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4))))) (fun (_x : LinearMap.{u3, u3, max u1 u2, max (max u1 u3) u2} R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) (ι -> M) (LinearMap.{u3, u3, max u1 u3, u2} R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) (ι -> R) M (Pi.addCommMonoid.{u1, u3} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (Pi.Function.module.{u1, u3, u3} ι R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3))))) (Semiring.toModule.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) _inst_4) (Pi.addCommMonoid.{u1, u2} ι (fun (ᾰ : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u2} M _inst_2)) (LinearMap.addCommMonoid.{u3, u3, max u1 u3, u2} R R (ι -> R) M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Pi.addCommMonoid.{u1, u3} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (Pi.Function.module.{u1, u3, u3} ι R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3))))) (Semiring.toModule.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) _inst_4 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3))))) (Pi.Function.module.{u1, u3, u2} ι R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (LinearMap.module.{u3, u3, u3, max u1 u3, u2} R R R (ι -> R) M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Pi.addCommMonoid.{u1, u3} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (Pi.Function.module.{u1, u3, u3} ι R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3))))) (Semiring.toModule.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) _inst_4 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) _inst_4 (smulCommClass_self.{u3, u2} R M (CommRing.toCommMonoid.{u3} R _inst_3) (MulActionWithZero.toMulAction.{u3, u2} R M (Semiring.toMonoidWithZero.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3))) (AddZeroClass.toHasZero.{u2} M (AddMonoid.toAddZeroClass.{u2} M (AddCommMonoid.toAddMonoid.{u2} M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2)))) (Module.toMulActionWithZero.{u3, u2} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4))))) => (ι -> M) -> (LinearMap.{u3, u3, max u1 u3, u2} R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) (ι -> R) M (Pi.addCommMonoid.{u1, u3} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (Pi.Function.module.{u1, u3, u3} ι R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3))))) (Semiring.toModule.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) _inst_4)) (LinearMap.hasCoeToFun.{u3, u3, max u1 u2, max (max u1 u3) u2} R R (ι -> M) (LinearMap.{u3, u3, max u1 u3, u2} R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) (ι -> R) M (Pi.addCommMonoid.{u1, u3} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (Pi.Function.module.{u1, u3, u3} ι R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3))))) (Semiring.toModule.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) _inst_4) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Pi.addCommMonoid.{u1, u2} ι (fun (ᾰ : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u2} M _inst_2)) (LinearMap.addCommMonoid.{u3, u3, max u1 u3, u2} R R (ι -> R) M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Pi.addCommMonoid.{u1, u3} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (Pi.Function.module.{u1, u3, u3} ι R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3))))) (Semiring.toModule.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) _inst_4 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3))))) (Pi.Function.module.{u1, u3, u2} ι R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (LinearMap.module.{u3, u3, u3, max u1 u3, u2} R R R (ι -> R) M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Pi.addCommMonoid.{u1, u3} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (Pi.Function.module.{u1, u3, u3} ι R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3))))) (Semiring.toModule.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) _inst_4 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) _inst_4 (smulCommClass_self.{u3, u2} R M (CommRing.toCommMonoid.{u3} R _inst_3) (MulActionWithZero.toMulAction.{u3, u2} R M (Semiring.toMonoidWithZero.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3))) (AddZeroClass.toHasZero.{u2} M (AddMonoid.toAddZeroClass.{u2} M (AddCommMonoid.toAddMonoid.{u2} M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2)))) (Module.toMulActionWithZero.{u3, u2} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4)))) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3))))) (Fintype.total.{u1, u2, u3, u3} ι M R _inst_1 (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4 R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) _inst_4 (smulCommClass_self.{u3, u2} R M (CommRing.toCommMonoid.{u3} R _inst_3) (MulActionWithZero.toMulAction.{u3, u2} R M (Semiring.toMonoidWithZero.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3))) (AddZeroClass.toHasZero.{u2} M (AddMonoid.toAddZeroClass.{u2} M (AddCommMonoid.toAddMonoid.{u2} M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2)))) (Module.toMulActionWithZero.{u3, u2} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4)))) b) (Matrix.mulVec.{u3, u1, u1} ι ι R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u3} R (NonAssocRing.toNonUnitalNonAssocRing.{u3} R (Ring.toNonAssocRing.{u3} R (CommRing.toRing.{u3} R _inst_3)))) _inst_1 A x)) (coeFn.{succ u2, succ u2} (Module.End.{u3, u2} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (fun (_x : LinearMap.{u3, u3, u2, u2} R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4 _inst_4) => M -> M) (LinearMap.hasCoeToFun.{u3, u3, u2, u2} R R M M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4 _inst_4 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3))))) f (coeFn.{max (succ (max u1 u3)) (succ u2), max (succ (max u1 u3)) (succ u2)} (LinearMap.{u3, u3, max u1 u3, u2} R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) (ι -> R) M (Pi.addCommMonoid.{u1, u3} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (Pi.Function.module.{u1, u3, u3} ι R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3))))) (Semiring.toModule.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) _inst_4) (fun (_x : LinearMap.{u3, u3, max u1 u3, u2} R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) (ι -> R) M (Pi.addCommMonoid.{u1, u3} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (Pi.Function.module.{u1, u3, u3} ι R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3))))) (Semiring.toModule.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) _inst_4) => (ι -> R) -> M) (LinearMap.hasCoeToFun.{u3, u3, max u1 u3, u2} R R (ι -> R) M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Pi.addCommMonoid.{u1, u3} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (Pi.Function.module.{u1, u3, u3} ι R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3))))) (Semiring.toModule.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) _inst_4 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3))))) (coeFn.{max (succ (max u1 u2)) (succ (max (max u1 u3) u2)), max (succ (max u1 u2)) (succ (max (max u1 u3) u2))} (LinearMap.{u3, u3, max u1 u2, max (max u1 u3) u2} R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) (ι -> M) (LinearMap.{u3, u3, max u1 u3, u2} R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) (ι -> R) M (Pi.addCommMonoid.{u1, u3} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (Pi.Function.module.{u1, u3, u3} ι R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3))))) (Semiring.toModule.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) _inst_4) (Pi.addCommMonoid.{u1, u2} ι (fun (ᾰ : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u2} M _inst_2)) (LinearMap.addCommMonoid.{u3, u3, max u1 u3, u2} R R (ι -> R) M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Pi.addCommMonoid.{u1, u3} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (Pi.Function.module.{u1, u3, u3} ι R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3))))) (Semiring.toModule.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) _inst_4 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3))))) (Pi.Function.module.{u1, u3, u2} ι R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (LinearMap.module.{u3, u3, u3, max u1 u3, u2} R R R (ι -> R) M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Pi.addCommMonoid.{u1, u3} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (Pi.Function.module.{u1, u3, u3} ι R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3))))) (Semiring.toModule.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) _inst_4 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) _inst_4 (smulCommClass_self.{u3, u2} R M (CommRing.toCommMonoid.{u3} R _inst_3) (MulActionWithZero.toMulAction.{u3, u2} R M (Semiring.toMonoidWithZero.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3))) (AddZeroClass.toHasZero.{u2} M (AddMonoid.toAddZeroClass.{u2} M (AddCommMonoid.toAddMonoid.{u2} M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2)))) (Module.toMulActionWithZero.{u3, u2} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4))))) (fun (_x : LinearMap.{u3, u3, max u1 u2, max (max u1 u3) u2} R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) (ι -> M) (LinearMap.{u3, u3, max u1 u3, u2} R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) (ι -> R) M (Pi.addCommMonoid.{u1, u3} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (Pi.Function.module.{u1, u3, u3} ι R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3))))) (Semiring.toModule.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) _inst_4) (Pi.addCommMonoid.{u1, u2} ι (fun (ᾰ : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u2} M _inst_2)) (LinearMap.addCommMonoid.{u3, u3, max u1 u3, u2} R R (ι -> R) M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Pi.addCommMonoid.{u1, u3} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (Pi.Function.module.{u1, u3, u3} ι R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3))))) (Semiring.toModule.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) _inst_4 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3))))) (Pi.Function.module.{u1, u3, u2} ι R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (LinearMap.module.{u3, u3, u3, max u1 u3, u2} R R R (ι -> R) M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Pi.addCommMonoid.{u1, u3} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (Pi.Function.module.{u1, u3, u3} ι R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3))))) (Semiring.toModule.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) _inst_4 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) _inst_4 (smulCommClass_self.{u3, u2} R M (CommRing.toCommMonoid.{u3} R _inst_3) (MulActionWithZero.toMulAction.{u3, u2} R M (Semiring.toMonoidWithZero.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3))) (AddZeroClass.toHasZero.{u2} M (AddMonoid.toAddZeroClass.{u2} M (AddCommMonoid.toAddMonoid.{u2} M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2)))) (Module.toMulActionWithZero.{u3, u2} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4))))) => (ι -> M) -> (LinearMap.{u3, u3, max u1 u3, u2} R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) (ι -> R) M (Pi.addCommMonoid.{u1, u3} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (Pi.Function.module.{u1, u3, u3} ι R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3))))) (Semiring.toModule.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) _inst_4)) (LinearMap.hasCoeToFun.{u3, u3, max u1 u2, max (max u1 u3) u2} R R (ι -> M) (LinearMap.{u3, u3, max u1 u3, u2} R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) (ι -> R) M (Pi.addCommMonoid.{u1, u3} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (Pi.Function.module.{u1, u3, u3} ι R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3))))) (Semiring.toModule.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) _inst_4) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Pi.addCommMonoid.{u1, u2} ι (fun (ᾰ : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u2} M _inst_2)) (LinearMap.addCommMonoid.{u3, u3, max u1 u3, u2} R R (ι -> R) M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Pi.addCommMonoid.{u1, u3} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (Pi.Function.module.{u1, u3, u3} ι R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3))))) (Semiring.toModule.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) _inst_4 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3))))) (Pi.Function.module.{u1, u3, u2} ι R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (LinearMap.module.{u3, u3, u3, max u1 u3, u2} R R R (ι -> R) M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Pi.addCommMonoid.{u1, u3} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (Pi.Function.module.{u1, u3, u3} ι R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3))))) (Semiring.toModule.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) _inst_4 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) _inst_4 (smulCommClass_self.{u3, u2} R M (CommRing.toCommMonoid.{u3} R _inst_3) (MulActionWithZero.toMulAction.{u3, u2} R M (Semiring.toMonoidWithZero.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3))) (AddZeroClass.toHasZero.{u2} M (AddMonoid.toAddZeroClass.{u2} M (AddCommMonoid.toAddMonoid.{u2} M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2)))) (Module.toMulActionWithZero.{u3, u2} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4)))) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3))))) (Fintype.total.{u1, u2, u3, u3} ι M R _inst_1 (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4 R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) _inst_4 (smulCommClass_self.{u3, u2} R M (CommRing.toCommMonoid.{u3} R _inst_3) (MulActionWithZero.toMulAction.{u3, u2} R M (Semiring.toMonoidWithZero.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3))) (AddZeroClass.toHasZero.{u2} M (AddMonoid.toAddZeroClass.{u2} M (AddCommMonoid.toAddMonoid.{u2} M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2)))) (Module.toMulActionWithZero.{u3, u2} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4)))) b) x)))
-but is expected to have type
- forall {ι : Type.{u3}} [_inst_1 : Fintype.{u3} ι] {M : Type.{u1}} [_inst_2 : AddCommGroup.{u1} M] {R : Type.{u2}} [_inst_3 : CommRing.{u2} R] [_inst_4 : Module.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2)] {b : ι -> M} [_inst_5 : DecidableEq.{succ u3} ι] {A : Matrix.{u3, u3, u2} ι ι R} {f : Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4}, Iff (Matrix.Represents.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b) A f) (forall (x : ι -> R), Eq.{succ u1} ((fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6193 : ι -> R) => M) (Matrix.mulVec.{u2, u3, u3} ι ι R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_3)))) _inst_1 A x)) (FunLike.coe.{max (max (succ u3) (succ u1)) (succ u2), max (succ u3) (succ u2), succ u1} ((fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6193 : ι -> M) => LinearMap.{u2, u2, max u3 u2, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (ι -> R) M (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Finsupp._hyg.14570 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Finsupp._hyg.14570 : ι) => R) R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) (fun (i : ι) => Semiring.toModule.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) _inst_4) b) (ι -> R) (fun (_x : ι -> R) => (fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6193 : ι -> R) => M) _x) (LinearMap.instFunLikeLinearMap.{u2, u2, max u3 u2, u1} R R (ι -> R) M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Pi.addCommMonoid.{u3, u2} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Finsupp._hyg.14570 : ι) => R) R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) (fun (i : ι) => Semiring.toModule.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) _inst_4 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), max (succ u1) (succ u3), max (max (succ u2) (succ u1)) (succ u3)} (LinearMap.{u2, u2, max u3 u1, max u1 u3 u2} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (ι -> M) (LinearMap.{u2, u2, max u3 u2, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (ι -> R) M (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Finsupp._hyg.14570 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Finsupp._hyg.14570 : ι) => R) R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) (fun (i : ι) => Semiring.toModule.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) _inst_4) (Pi.addCommMonoid.{u3, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Finsupp._hyg.14558 : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u1} M _inst_2)) (LinearMap.addCommMonoid.{u2, u2, max u3 u2, u1} R R (ι -> R) M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Finsupp._hyg.14570 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Finsupp._hyg.14570 : ι) => R) R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) (fun (i : ι) => Semiring.toModule.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) _inst_4 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) (Pi.module.{u3, u1, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Finsupp._hyg.14558 : ι) => M) R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (fun (i : ι) => _inst_4)) (LinearMap.instModuleLinearMapAddCommMonoid.{u2, u2, u2, max u3 u2, u1} R R R (ι -> R) M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Finsupp._hyg.14570 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Finsupp._hyg.14570 : ι) => R) R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) (fun (i : ι) => Semiring.toModule.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) _inst_4 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_4 (smulCommClass_self.{u2, u1} R M (CommRing.toCommMonoid.{u2} R _inst_3) (MulActionWithZero.toMulAction.{u2, u1} R M (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (NegZeroClass.toZero.{u1} M (SubNegZeroMonoid.toNegZeroClass.{u1} M (SubtractionMonoid.toSubNegZeroMonoid.{u1} M (SubtractionCommMonoid.toSubtractionMonoid.{u1} M (AddCommGroup.toDivisionAddCommMonoid.{u1} M _inst_2))))) (Module.toMulActionWithZero.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4))))) (ι -> M) (fun (_x : ι -> M) => (fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6193 : ι -> M) => LinearMap.{u2, u2, max u3 u2, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (ι -> R) M (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Finsupp._hyg.14570 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Finsupp._hyg.14570 : ι) => R) R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) (fun (i : ι) => Semiring.toModule.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) _inst_4) _x) (LinearMap.instFunLikeLinearMap.{u2, u2, max u1 u3, max (max u2 u1) u3} R R (ι -> M) (LinearMap.{u2, u2, max u3 u2, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (ι -> R) M (Pi.addCommMonoid.{u3, u2} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Finsupp._hyg.14570 : ι) => R) R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) (fun (i : ι) => Semiring.toModule.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) _inst_4) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Pi.addCommMonoid.{u3, u1} ι (fun (ᾰ : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u1} M _inst_2)) (LinearMap.addCommMonoid.{u2, u2, max u3 u2, u1} R R (ι -> R) M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Pi.addCommMonoid.{u3, u2} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Finsupp._hyg.14570 : ι) => R) R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) (fun (i : ι) => Semiring.toModule.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) _inst_4 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) (Pi.module.{u3, u1, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Finsupp._hyg.14558 : ι) => M) R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (fun (i : ι) => _inst_4)) (LinearMap.instModuleLinearMapAddCommMonoid.{u2, u2, u2, max u3 u2, u1} R R R (ι -> R) M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Pi.addCommMonoid.{u3, u2} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Finsupp._hyg.14570 : ι) => R) R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) (fun (i : ι) => Semiring.toModule.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) _inst_4 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_4 (smulCommClass_self.{u2, u1} R M (CommRing.toCommMonoid.{u2} R _inst_3) (MulActionWithZero.toMulAction.{u2, u1} R M (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (NegZeroClass.toZero.{u1} M (SubNegZeroMonoid.toNegZeroClass.{u1} M (SubtractionMonoid.toSubNegZeroMonoid.{u1} M (SubtractionCommMonoid.toSubtractionMonoid.{u1} M (AddCommGroup.toDivisionAddCommMonoid.{u1} M _inst_2))))) (Module.toMulActionWithZero.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) (Fintype.total.{u3, u1, u2, u2} ι M R _inst_1 (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4 R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_4 (smulCommClass_self.{u2, u1} R M (CommRing.toCommMonoid.{u2} R _inst_3) (MulActionWithZero.toMulAction.{u2, u1} R M (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (NegZeroClass.toZero.{u1} M (SubNegZeroMonoid.toNegZeroClass.{u1} M (SubtractionMonoid.toSubNegZeroMonoid.{u1} M (SubtractionCommMonoid.toSubtractionMonoid.{u1} M (AddCommGroup.toDivisionAddCommMonoid.{u1} M _inst_2))))) (Module.toMulActionWithZero.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4)))) b) (Matrix.mulVec.{u2, u3, u3} ι ι R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_3)))) _inst_1 A x)) (FunLike.coe.{succ u1, succ u1, succ u1} (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6193 : M) => M) _x) (LinearMap.instFunLikeLinearMap.{u2, u2, u1, u1} R R M M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4 _inst_4 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) f (FunLike.coe.{max (max (succ u3) (succ u1)) (succ u2), max (succ u3) (succ u2), succ u1} ((fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6193 : ι -> M) => LinearMap.{u2, u2, max u3 u2, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (ι -> R) M (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Finsupp._hyg.14570 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Finsupp._hyg.14570 : ι) => R) R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) (fun (i : ι) => Semiring.toModule.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) _inst_4) b) (ι -> R) (fun (_x : ι -> R) => (fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6193 : ι -> R) => M) _x) (LinearMap.instFunLikeLinearMap.{u2, u2, max u3 u2, u1} R R (ι -> R) M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Pi.addCommMonoid.{u3, u2} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Finsupp._hyg.14570 : ι) => R) R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) (fun (i : ι) => Semiring.toModule.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) _inst_4 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), max (succ u1) (succ u3), max (max (succ u2) (succ u1)) (succ u3)} (LinearMap.{u2, u2, max u3 u1, max u1 u3 u2} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (ι -> M) (LinearMap.{u2, u2, max u3 u2, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (ι -> R) M (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Finsupp._hyg.14570 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Finsupp._hyg.14570 : ι) => R) R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) (fun (i : ι) => Semiring.toModule.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) _inst_4) (Pi.addCommMonoid.{u3, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Finsupp._hyg.14558 : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u1} M _inst_2)) (LinearMap.addCommMonoid.{u2, u2, max u3 u2, u1} R R (ι -> R) M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Finsupp._hyg.14570 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Finsupp._hyg.14570 : ι) => R) R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) (fun (i : ι) => Semiring.toModule.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) _inst_4 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) (Pi.module.{u3, u1, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Finsupp._hyg.14558 : ι) => M) R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (fun (i : ι) => _inst_4)) (LinearMap.instModuleLinearMapAddCommMonoid.{u2, u2, u2, max u3 u2, u1} R R R (ι -> R) M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Finsupp._hyg.14570 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Finsupp._hyg.14570 : ι) => R) R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) (fun (i : ι) => Semiring.toModule.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) _inst_4 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_4 (smulCommClass_self.{u2, u1} R M (CommRing.toCommMonoid.{u2} R _inst_3) (MulActionWithZero.toMulAction.{u2, u1} R M (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (NegZeroClass.toZero.{u1} M (SubNegZeroMonoid.toNegZeroClass.{u1} M (SubtractionMonoid.toSubNegZeroMonoid.{u1} M (SubtractionCommMonoid.toSubtractionMonoid.{u1} M (AddCommGroup.toDivisionAddCommMonoid.{u1} M _inst_2))))) (Module.toMulActionWithZero.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4))))) (ι -> M) (fun (_x : ι -> M) => (fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6193 : ι -> M) => LinearMap.{u2, u2, max u3 u2, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (ι -> R) M (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Finsupp._hyg.14570 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Finsupp._hyg.14570 : ι) => R) R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) (fun (i : ι) => Semiring.toModule.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) _inst_4) _x) (LinearMap.instFunLikeLinearMap.{u2, u2, max u1 u3, max (max u2 u1) u3} R R (ι -> M) (LinearMap.{u2, u2, max u3 u2, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (ι -> R) M (Pi.addCommMonoid.{u3, u2} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Finsupp._hyg.14570 : ι) => R) R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) (fun (i : ι) => Semiring.toModule.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) _inst_4) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Pi.addCommMonoid.{u3, u1} ι (fun (ᾰ : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u1} M _inst_2)) (LinearMap.addCommMonoid.{u2, u2, max u3 u2, u1} R R (ι -> R) M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Pi.addCommMonoid.{u3, u2} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Finsupp._hyg.14570 : ι) => R) R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) (fun (i : ι) => Semiring.toModule.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) _inst_4 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) (Pi.module.{u3, u1, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Finsupp._hyg.14558 : ι) => M) R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (fun (i : ι) => _inst_4)) (LinearMap.instModuleLinearMapAddCommMonoid.{u2, u2, u2, max u3 u2, u1} R R R (ι -> R) M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Pi.addCommMonoid.{u3, u2} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Finsupp._hyg.14570 : ι) => R) R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) (fun (i : ι) => Semiring.toModule.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) _inst_4 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_4 (smulCommClass_self.{u2, u1} R M (CommRing.toCommMonoid.{u2} R _inst_3) (MulActionWithZero.toMulAction.{u2, u1} R M (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (NegZeroClass.toZero.{u1} M (SubNegZeroMonoid.toNegZeroClass.{u1} M (SubtractionMonoid.toSubNegZeroMonoid.{u1} M (SubtractionCommMonoid.toSubtractionMonoid.{u1} M (AddCommGroup.toDivisionAddCommMonoid.{u1} M _inst_2))))) (Module.toMulActionWithZero.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) (Fintype.total.{u3, u1, u2, u2} ι M R _inst_1 (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4 R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_4 (smulCommClass_self.{u2, u1} R M (CommRing.toCommMonoid.{u2} R _inst_3) (MulActionWithZero.toMulAction.{u2, u1} R M (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (NegZeroClass.toZero.{u1} M (SubNegZeroMonoid.toNegZeroClass.{u1} M (SubtractionMonoid.toSubNegZeroMonoid.{u1} M (SubtractionCommMonoid.toSubtractionMonoid.{u1} M (AddCommGroup.toDivisionAddCommMonoid.{u1} M _inst_2))))) (Module.toMulActionWithZero.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4)))) b) x)))
+<too large>
Case conversion may be inaccurate. Consider using '#align matrix.represents_iff Matrix.represents_iffₓ'. -/
theorem Matrix.represents_iff {A : Matrix ι ι R} {f : Module.End R M} :
A.Represents b f ↔ ∀ x, Fintype.total R R b (A.mulVec x) = f (Fintype.total R R b x) :=
@@ -160,10 +139,7 @@ theorem Matrix.represents_iff {A : Matrix ι ι R} {f : Module.End R M} :
#align matrix.represents_iff Matrix.represents_iff
/- warning: matrix.represents_iff' -> Matrix.represents_iff' is a dubious translation:
-lean 3 declaration is
- forall {ι : Type.{u1}} [_inst_1 : Fintype.{u1} ι] {M : Type.{u2}} [_inst_2 : AddCommGroup.{u2} M] {R : Type.{u3}} [_inst_3 : CommRing.{u3} R] [_inst_4 : Module.{u3, u2} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2)] {b : ι -> M} [_inst_5 : DecidableEq.{succ u1} ι] {A : Matrix.{u1, u1, u3} ι ι R} {f : Module.End.{u3, u2} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4}, Iff (Matrix.Represents.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b) A f) (forall (j : ι), Eq.{succ u2} M (Finset.sum.{u2, u1} M ι (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (Finset.univ.{u1} ι _inst_1) (fun (i : ι) => SMul.smul.{u3, u2} R M (SMulZeroClass.toHasSmul.{u3, u2} R M (AddZeroClass.toHasZero.{u2} M (AddMonoid.toAddZeroClass.{u2} M (AddCommMonoid.toAddMonoid.{u2} M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2)))) (SMulWithZero.toSmulZeroClass.{u3, u2} R M (MulZeroClass.toHasZero.{u3} R (MulZeroOneClass.toMulZeroClass.{u3} R (MonoidWithZero.toMulZeroOneClass.{u3} R (Semiring.toMonoidWithZero.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))))) (AddZeroClass.toHasZero.{u2} M (AddMonoid.toAddZeroClass.{u2} M (AddCommMonoid.toAddMonoid.{u2} M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2)))) (MulActionWithZero.toSMulWithZero.{u3, u2} R M (Semiring.toMonoidWithZero.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3))) (AddZeroClass.toHasZero.{u2} M (AddMonoid.toAddZeroClass.{u2} M (AddCommMonoid.toAddMonoid.{u2} M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2)))) (Module.toMulActionWithZero.{u3, u2} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4)))) (A i j) (b i))) (coeFn.{succ u2, succ u2} (Module.End.{u3, u2} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (fun (_x : LinearMap.{u3, u3, u2, u2} R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4 _inst_4) => M -> M) (LinearMap.hasCoeToFun.{u3, u3, u2, u2} R R M M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4 _inst_4 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3))))) f (b j)))
-but is expected to have type
- forall {ι : Type.{u3}} [_inst_1 : Fintype.{u3} ι] {M : Type.{u1}} [_inst_2 : AddCommGroup.{u1} M] {R : Type.{u2}} [_inst_3 : CommRing.{u2} R] [_inst_4 : Module.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2)] {b : ι -> M} [_inst_5 : DecidableEq.{succ u3} ι] {A : Matrix.{u3, u3, u2} ι ι R} {f : Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4}, Iff (Matrix.Represents.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b) A f) (forall (j : ι), Eq.{succ u1} M (Finset.sum.{u1, u3} M ι (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (Finset.univ.{u3} ι _inst_1) (fun (i : ι) => HSMul.hSMul.{u2, u1, u1} R M M (instHSMul.{u2, u1} R M (SMulZeroClass.toSMul.{u2, u1} R M (NegZeroClass.toZero.{u1} M (SubNegZeroMonoid.toNegZeroClass.{u1} M (SubtractionMonoid.toSubNegZeroMonoid.{u1} M (SubtractionCommMonoid.toSubtractionMonoid.{u1} M (AddCommGroup.toDivisionAddCommMonoid.{u1} M _inst_2))))) (SMulWithZero.toSMulZeroClass.{u2, u1} R M (CommMonoidWithZero.toZero.{u2} R (CommSemiring.toCommMonoidWithZero.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (NegZeroClass.toZero.{u1} M (SubNegZeroMonoid.toNegZeroClass.{u1} M (SubtractionMonoid.toSubNegZeroMonoid.{u1} M (SubtractionCommMonoid.toSubtractionMonoid.{u1} M (AddCommGroup.toDivisionAddCommMonoid.{u1} M _inst_2))))) (MulActionWithZero.toSMulWithZero.{u2, u1} R M (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (NegZeroClass.toZero.{u1} M (SubNegZeroMonoid.toNegZeroClass.{u1} M (SubtractionMonoid.toSubNegZeroMonoid.{u1} M (SubtractionCommMonoid.toSubtractionMonoid.{u1} M (AddCommGroup.toDivisionAddCommMonoid.{u1} M _inst_2))))) (Module.toMulActionWithZero.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4))))) (A i j) (b i))) (FunLike.coe.{succ u1, succ u1, succ u1} (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6193 : M) => M) _x) (LinearMap.instFunLikeLinearMap.{u2, u2, u1, u1} R R M M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4 _inst_4 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) f (b j)))
+<too large>
Case conversion may be inaccurate. Consider using '#align matrix.represents_iff' Matrix.represents_iff'ₓ'. -/
theorem Matrix.represents_iff' {A : Matrix ι ι R} {f : Module.End R M} :
A.Represents b f ↔ ∀ j, (∑ i : ι, A i j • b i) = f (b j) :=
@@ -211,10 +187,7 @@ theorem Matrix.Represents.one : (1 : Matrix ι ι R).Represents b 1 :=
#align matrix.represents.one Matrix.Represents.one
/- warning: matrix.represents.add -> Matrix.Represents.add is a dubious translation:
-lean 3 declaration is
- forall {ι : Type.{u1}} [_inst_1 : Fintype.{u1} ι] {M : Type.{u2}} [_inst_2 : AddCommGroup.{u2} M] {R : Type.{u3}} [_inst_3 : CommRing.{u3} R] [_inst_4 : Module.{u3, u2} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2)] {b : ι -> M} [_inst_5 : DecidableEq.{succ u1} ι] {A : Matrix.{u1, u1, u3} ι ι R} {A' : Matrix.{u1, u1, u3} ι ι R} {f : Module.End.{u3, u2} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4} {f' : Module.End.{u3, u2} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4}, (Matrix.Represents.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b) A f) -> (Matrix.Represents.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b) A' f') -> (Matrix.Represents.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b) (HAdd.hAdd.{max u1 u3, max u1 u3, max u1 u3} (Matrix.{u1, u1, u3} ι ι R) (Matrix.{u1, u1, u3} ι ι R) (Matrix.{u1, u1, u3} ι ι R) (instHAdd.{max u1 u3} (Matrix.{u1, u1, u3} ι ι R) (Matrix.hasAdd.{u3, u1, u1} ι ι R (Distrib.toHasAdd.{u3} R (Ring.toDistrib.{u3} R (CommRing.toRing.{u3} R _inst_3))))) A A') (HAdd.hAdd.{u2, u2, u2} (Module.End.{u3, u2} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (Module.End.{u3, u2} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (Module.End.{u3, u2} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (instHAdd.{u2} (Module.End.{u3, u2} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (LinearMap.hasAdd.{u3, u3, u2, u2} R R M M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4 _inst_4 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))))) f f'))
-but is expected to have type
- forall {ι : Type.{u3}} [_inst_1 : Fintype.{u3} ι] {M : Type.{u1}} [_inst_2 : AddCommGroup.{u1} M] {R : Type.{u2}} [_inst_3 : CommRing.{u2} R] [_inst_4 : Module.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2)] {b : ι -> M} [_inst_5 : DecidableEq.{succ u3} ι] {A : Matrix.{u3, u3, u2} ι ι R} {A' : Matrix.{u3, u3, u2} ι ι R} {f : Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4} {f' : Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4}, (Matrix.Represents.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b) A f) -> (Matrix.Represents.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b) A' f') -> (Matrix.Represents.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b) (HAdd.hAdd.{max u3 u2, max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Matrix.{u3, u3, u2} ι ι R) (Matrix.{u3, u3, u2} ι ι R) (instHAdd.{max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Matrix.add.{u2, u3, u3} ι ι R (Distrib.toAdd.{u2} R (NonUnitalNonAssocSemiring.toDistrib.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_3)))))))) A A') (HAdd.hAdd.{u1, u1, u1} (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (instHAdd.{u1} (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (LinearMap.instAddLinearMap.{u2, u2, u1, u1} R R M M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4 _inst_4 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))))) f f'))
+<too large>
Case conversion may be inaccurate. Consider using '#align matrix.represents.add Matrix.Represents.addₓ'. -/
theorem Matrix.Represents.add {A A' : Matrix ι ι R} {f f' : Module.End R M} (h : A.Represents b f)
(h' : Matrix.Represents b A' f') : (A + A').Represents b (f + f') := by
@@ -232,10 +205,7 @@ theorem Matrix.Represents.zero : (0 : Matrix ι ι R).Represents b 0 := by delta
#align matrix.represents.zero Matrix.Represents.zero
/- warning: matrix.represents.smul -> Matrix.Represents.smul is a dubious translation:
-lean 3 declaration is
- forall {ι : Type.{u1}} [_inst_1 : Fintype.{u1} ι] {M : Type.{u2}} [_inst_2 : AddCommGroup.{u2} M] {R : Type.{u3}} [_inst_3 : CommRing.{u3} R] [_inst_4 : Module.{u3, u2} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2)] {b : ι -> M} [_inst_5 : DecidableEq.{succ u1} ι] {A : Matrix.{u1, u1, u3} ι ι R} {f : Module.End.{u3, u2} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4}, (Matrix.Represents.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b) A f) -> (forall (r : R), Matrix.Represents.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b) (SMul.smul.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (Matrix.hasSmul.{u3, u1, u1, u3} ι ι R R (Mul.toSMul.{u3} R (Distrib.toHasMul.{u3} R (Ring.toDistrib.{u3} R (CommRing.toRing.{u3} R _inst_3))))) r A) (SMul.smul.{u3, u2} R (Module.End.{u3, u2} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (LinearMap.hasSmul.{u3, u3, u3, u2, u2} R R R M M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4 _inst_4 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) (Ring.toMonoid.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Module.toDistribMulAction.{u3, u2} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (smulCommClass_self.{u3, u2} R M (CommRing.toCommMonoid.{u3} R _inst_3) (MulActionWithZero.toMulAction.{u3, u2} R M (Semiring.toMonoidWithZero.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3))) (AddZeroClass.toHasZero.{u2} M (AddMonoid.toAddZeroClass.{u2} M (AddCommMonoid.toAddMonoid.{u2} M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2)))) (Module.toMulActionWithZero.{u3, u2} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4)))) r f))
-but is expected to have type
- forall {ι : Type.{u3}} [_inst_1 : Fintype.{u3} ι] {M : Type.{u1}} [_inst_2 : AddCommGroup.{u1} M] {R : Type.{u2}} [_inst_3 : CommRing.{u2} R] [_inst_4 : Module.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2)] {b : ι -> M} [_inst_5 : DecidableEq.{succ u3} ι] {A : Matrix.{u3, u3, u2} ι ι R} {f : Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4}, (Matrix.Represents.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b) A f) -> (forall (r : R), Matrix.Represents.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b) (HSMul.hSMul.{u2, max u3 u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (Matrix.{u3, u3, u2} ι ι R) (instHSMul.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (Matrix.smul.{u2, u3, u3, u2} ι ι R R (Algebra.toSMul.{u2, u2} R R (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) r A) (HSMul.hSMul.{u2, u1, u1} R (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (instHSMul.{u2, u1} R (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (LinearMap.instSMulLinearMap.{u2, u2, u2, u1, u1} R R R M M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4 _inst_4 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Module.toDistribMulAction.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (smulCommClass_self.{u2, u1} R M (CommRing.toCommMonoid.{u2} R _inst_3) (MulActionWithZero.toMulAction.{u2, u1} R M (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (NegZeroClass.toZero.{u1} M (SubNegZeroMonoid.toNegZeroClass.{u1} M (SubtractionMonoid.toSubNegZeroMonoid.{u1} M (SubtractionCommMonoid.toSubtractionMonoid.{u1} M (AddCommGroup.toDivisionAddCommMonoid.{u1} M _inst_2))))) (Module.toMulActionWithZero.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4))))) r f))
+<too large>
Case conversion may be inaccurate. Consider using '#align matrix.represents.smul Matrix.Represents.smulₓ'. -/
theorem Matrix.Represents.smul {A : Matrix ι ι R} {f : Module.End R M} (h : A.Represents b f)
(r : R) : (r • A).Represents b (r • f) := by delta Matrix.Represents at h⊢;
@@ -274,10 +244,7 @@ def Matrix.isRepresentation : Subalgebra R (Matrix ι ι R)
#align matrix.is_representation Matrix.isRepresentation
/- warning: matrix.is_representation.to_End -> Matrix.isRepresentation.toEnd is a dubious translation:
-lean 3 declaration is
- forall {ι : Type.{u1}} [_inst_1 : Fintype.{u1} ι] {M : Type.{u2}} [_inst_2 : AddCommGroup.{u2} M] (R : Type.{u3}) [_inst_3 : CommRing.{u3} R] [_inst_4 : Module.{u3, u2} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2)] (b : ι -> M), (Eq.{succ u2} (Submodule.{u3, u2} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (Submodule.span.{u3, u2} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4 (Set.range.{u2, succ u1} M ι b)) (Top.top.{u2} (Submodule.{u3, u2} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (Submodule.hasTop.{u3, u2} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4))) -> (forall [_inst_5 : DecidableEq.{succ u1} ι], AlgHom.{u3, max u1 u3, u2} R (coeSort.{succ (max u1 u3), succ (succ (max u1 u3))} (Subalgebra.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b)) (Matrix.algebra.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b) (CommRing.toCommSemiring.{u3} R _inst_3) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) Type.{max u1 u3} (SetLike.hasCoeToSort.{max u1 u3, max u1 u3} (Subalgebra.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b)) (Matrix.algebra.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b) (CommRing.toCommSemiring.{u3} R _inst_3) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.setLike.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b)) (Matrix.algebra.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b) (CommRing.toCommSemiring.{u3} R _inst_3) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))))) (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))) (Module.End.{u3, u2} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (CommRing.toCommSemiring.{u3} R _inst_3) (Subalgebra.toSemiring.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b)) (Matrix.algebra.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b) (CommRing.toCommSemiring.{u3} R _inst_3) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))) (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))) (Module.End.semiring.{u3, u2} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (Subalgebra.algebra.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b)) (Matrix.algebra.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b) (CommRing.toCommSemiring.{u3} R _inst_3) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))) (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))) (Module.End.algebra.{u3, u2} R M (CommRing.toCommSemiring.{u3} R _inst_3) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4))
-but is expected to have type
- forall {ι : Type.{u1}} [_inst_1 : Fintype.{u1} ι] {M : Type.{u2}} [_inst_2 : AddCommGroup.{u2} M] (R : Type.{u3}) [_inst_3 : CommRing.{u3} R] [_inst_4 : Module.{u3, u2} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2)] (b : ι -> M), (Eq.{succ u2} (Submodule.{u3, u2} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (Submodule.span.{u3, u2} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4 (Set.range.{u2, succ u1} M ι b)) (Top.top.{u2} (Submodule.{u3, u2} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (Submodule.instTopSubmodule.{u3, u2} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4))) -> (forall [_inst_5 : DecidableEq.{succ u1} ι], AlgHom.{u3, max u1 u3, u2} R (Subtype.{succ (max u1 u3)} (Matrix.{u1, u1, u3} ι ι R) (fun (x : Matrix.{u1, u1, u3} ι ι R) => Membership.mem.{max u1 u3, max u1 u3} (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.{u3, max u3 u1} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (SetLike.instMembership.{max u1 u3, max u1 u3} (Subalgebra.{u3, max u3 u1} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))))) x (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (Module.End.{u3, u2} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (CommRing.toCommSemiring.{u3} R _inst_3) (Subalgebra.toSemiring.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))) (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))) (Module.End.semiring.{u3, u2} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (Subalgebra.algebra.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))) (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))) (Module.instAlgebraEndToSemiringSemiring.{u3, u2} R M (CommRing.toCommSemiring.{u3} R _inst_3) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4))
+<too large>
Case conversion may be inaccurate. Consider using '#align matrix.is_representation.to_End Matrix.isRepresentation.toEndₓ'. -/
/-- The map sending a matrix to the endomorphism it represents. This is an `R`-algebra morphism. -/
noncomputable def Matrix.isRepresentation.toEnd : Matrix.isRepresentation R b →ₐ[R] Module.End R M
@@ -292,10 +259,7 @@ noncomputable def Matrix.isRepresentation.toEnd : Matrix.isRepresentation R b
#align matrix.is_representation.to_End Matrix.isRepresentation.toEnd
/- warning: matrix.is_representation.to_End_represents -> Matrix.isRepresentation.toEnd_represents is a dubious translation:
-lean 3 declaration is
- forall {ι : Type.{u1}} [_inst_1 : Fintype.{u1} ι] {M : Type.{u2}} [_inst_2 : AddCommGroup.{u2} M] (R : Type.{u3}) [_inst_3 : CommRing.{u3} R] [_inst_4 : Module.{u3, u2} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2)] (b : ι -> M) (hb : Eq.{succ u2} (Submodule.{u3, u2} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (Submodule.span.{u3, u2} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4 (Set.range.{u2, succ u1} M ι b)) (Top.top.{u2} (Submodule.{u3, u2} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (Submodule.hasTop.{u3, u2} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4))) [_inst_5 : DecidableEq.{succ u1} ι] (A : coeSort.{succ (max u1 u3), succ (succ (max u1 u3))} (Subalgebra.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.algebra.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) Type.{max u1 u3} (SetLike.hasCoeToSort.{max u1 u3, max u1 u3} (Subalgebra.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.algebra.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.setLike.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.algebra.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))))) (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))), Matrix.Represents.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b) ((fun (a : Type.{max u1 u3}) (b : Type.{max u1 u3}) [self : HasLiftT.{succ (max u1 u3), succ (max u1 u3)} a b] => self.0) (coeSort.{succ (max u1 u3), succ (succ (max u1 u3))} (Subalgebra.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.algebra.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) Type.{max u1 u3} (SetLike.hasCoeToSort.{max u1 u3, max u1 u3} (Subalgebra.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.algebra.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.setLike.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.algebra.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))))) (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))) (Matrix.{u1, u1, u3} ι ι R) (HasLiftT.mk.{succ (max u1 u3), succ (max u1 u3)} (coeSort.{succ (max u1 u3), succ (succ (max u1 u3))} (Subalgebra.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.algebra.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) Type.{max u1 u3} (SetLike.hasCoeToSort.{max u1 u3, max u1 u3} (Subalgebra.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.algebra.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.setLike.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.algebra.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))))) (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))) (Matrix.{u1, u1, u3} ι ι R) (CoeTCₓ.coe.{succ (max u1 u3), succ (max u1 u3)} (coeSort.{succ (max u1 u3), succ (succ (max u1 u3))} (Subalgebra.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.algebra.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) Type.{max u1 u3} (SetLike.hasCoeToSort.{max u1 u3, max u1 u3} (Subalgebra.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.algebra.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.setLike.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.algebra.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))))) (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))) (Matrix.{u1, u1, u3} ι ι R) (coeBase.{succ (max u1 u3), succ (max u1 u3)} (coeSort.{succ (max u1 u3), succ (succ (max u1 u3))} (Subalgebra.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.algebra.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) Type.{max u1 u3} (SetLike.hasCoeToSort.{max u1 u3, max u1 u3} (Subalgebra.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.algebra.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.setLike.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.algebra.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))))) (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))) (Matrix.{u1, u1, u3} ι ι R) (coeSubtype.{succ (max u1 u3)} (Matrix.{u1, u1, u3} ι ι R) (fun (x : Matrix.{u1, u1, u3} ι ι R) => Membership.Mem.{max u1 u3, max u1 u3} (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.algebra.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (SetLike.hasMem.{max u1 u3, max u1 u3} (Subalgebra.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.algebra.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.setLike.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.algebra.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))))) x (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))))))) A) (coeFn.{max (succ (max u1 u3)) (succ u2), max (succ (max u1 u3)) (succ u2)} (AlgHom.{u3, max u1 u3, u2} R (coeSort.{succ (max u1 u3), succ (succ (max u1 u3))} (Subalgebra.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b)) (Matrix.algebra.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b) (CommRing.toCommSemiring.{u3} R _inst_3) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) Type.{max u1 u3} (SetLike.hasCoeToSort.{max u1 u3, max u1 u3} (Subalgebra.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b)) (Matrix.algebra.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b) (CommRing.toCommSemiring.{u3} R _inst_3) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.setLike.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b)) (Matrix.algebra.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b) (CommRing.toCommSemiring.{u3} R _inst_3) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))))) (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))) (Module.End.{u3, u2} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (CommRing.toCommSemiring.{u3} R _inst_3) (Subalgebra.toSemiring.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b)) (Matrix.algebra.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b) (CommRing.toCommSemiring.{u3} R _inst_3) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))) (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))) (Module.End.semiring.{u3, u2} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (Subalgebra.algebra.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b)) (Matrix.algebra.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b) (CommRing.toCommSemiring.{u3} R _inst_3) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))) (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))) (Module.End.algebra.{u3, u2} R M (CommRing.toCommSemiring.{u3} R _inst_3) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4)) (fun (_x : AlgHom.{u3, max u1 u3, u2} R (coeSort.{succ (max u1 u3), succ (succ (max u1 u3))} (Subalgebra.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b)) (Matrix.algebra.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b) (CommRing.toCommSemiring.{u3} R _inst_3) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) Type.{max u1 u3} (SetLike.hasCoeToSort.{max u1 u3, max u1 u3} (Subalgebra.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b)) (Matrix.algebra.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b) (CommRing.toCommSemiring.{u3} R _inst_3) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.setLike.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b)) (Matrix.algebra.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b) (CommRing.toCommSemiring.{u3} R _inst_3) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))))) (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))) (Module.End.{u3, u2} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (CommRing.toCommSemiring.{u3} R _inst_3) (Subalgebra.toSemiring.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b)) (Matrix.algebra.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b) (CommRing.toCommSemiring.{u3} R _inst_3) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))) (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))) (Module.End.semiring.{u3, u2} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (Subalgebra.algebra.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b)) (Matrix.algebra.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b) (CommRing.toCommSemiring.{u3} R _inst_3) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))) (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))) (Module.End.algebra.{u3, u2} R M (CommRing.toCommSemiring.{u3} R _inst_3) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4)) => (coeSort.{succ (max u1 u3), succ (succ (max u1 u3))} (Subalgebra.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b)) (Matrix.algebra.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b) (CommRing.toCommSemiring.{u3} R _inst_3) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) Type.{max u1 u3} (SetLike.hasCoeToSort.{max u1 u3, max u1 u3} (Subalgebra.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b)) (Matrix.algebra.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b) (CommRing.toCommSemiring.{u3} R _inst_3) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.setLike.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b)) (Matrix.algebra.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b) (CommRing.toCommSemiring.{u3} R _inst_3) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))))) (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))) -> (Module.End.{u3, u2} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4)) ([anonymous].{u3, max u1 u3, u2} R (coeSort.{succ (max u1 u3), succ (succ (max u1 u3))} (Subalgebra.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b)) (Matrix.algebra.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b) (CommRing.toCommSemiring.{u3} R _inst_3) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) Type.{max u1 u3} (SetLike.hasCoeToSort.{max u1 u3, max u1 u3} (Subalgebra.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b)) (Matrix.algebra.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b) (CommRing.toCommSemiring.{u3} R _inst_3) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.setLike.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b)) (Matrix.algebra.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b) (CommRing.toCommSemiring.{u3} R _inst_3) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))))) (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))) (Module.End.{u3, u2} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (CommRing.toCommSemiring.{u3} R _inst_3) (Subalgebra.toSemiring.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b)) (Matrix.algebra.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b) (CommRing.toCommSemiring.{u3} R _inst_3) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))) (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))) (Module.End.semiring.{u3, u2} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (Subalgebra.algebra.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b)) (Matrix.algebra.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b) (CommRing.toCommSemiring.{u3} R _inst_3) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))) (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))) (Module.End.algebra.{u3, u2} R M (CommRing.toCommSemiring.{u3} R _inst_3) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4)) (Matrix.isRepresentation.toEnd.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b hb (fun (a : ι) (b : ι) => _inst_5 a b)) A)
-but is expected to have type
- forall {ι : Type.{u3}} [_inst_1 : Fintype.{u3} ι] {M : Type.{u1}} [_inst_2 : AddCommGroup.{u1} M] (R : Type.{u2}) [_inst_3 : CommRing.{u2} R] [_inst_4 : Module.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2)] (b : ι -> M) (hb : Eq.{succ u1} (Submodule.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (Submodule.span.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4 (Set.range.{u1, succ u3} M ι b)) (Top.top.{u1} (Submodule.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (Submodule.instTopSubmodule.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4))) [_inst_5 : DecidableEq.{succ u3} ι] (A : Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))), Matrix.Represents.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b) (Subtype.val.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Set.{max u3 u2} (Matrix.{u3, u3, u2} ι ι R)) (Set.instMembershipSet.{max u3 u2} (Matrix.{u3, u3, u2} ι ι R)) x (SetLike.coe.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) A) (FunLike.coe.{max (max (succ u3) (succ u1)) (succ u2), max (succ u3) (succ u2), succ u1} (AlgHom.{u2, max u3 u2, u1} R (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (CommRing.toCommSemiring.{u2} R _inst_3) (Subalgebra.toSemiring.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))) (Module.End.semiring.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (Subalgebra.algebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))) (Module.instAlgebraEndToSemiringSemiring.{u2, u1} R M (CommRing.toCommSemiring.{u2} R _inst_3) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4)) (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (fun (_x : Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2187 : Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) => Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) _x) (SMulHomClass.toFunLike.{max (max u3 u1) u2, u2, max u3 u2, u1} (AlgHom.{u2, max u3 u2, u1} R (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (CommRing.toCommSemiring.{u2} R _inst_3) (Subalgebra.toSemiring.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))) (Module.End.semiring.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (Subalgebra.algebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))) (Module.instAlgebraEndToSemiringSemiring.{u2, u1} R M (CommRing.toCommSemiring.{u2} R _inst_3) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4)) R (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (SMulZeroClass.toSMul.{u2, max u3 u2} R (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (AddMonoid.toZero.{max u3 u2} (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (AddCommMonoid.toAddMonoid.{max u3 u2} (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (NonUnitalNonAssocSemiring.toAddCommMonoid.{max u3 u2} (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{max u3 u2} (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (Semiring.toNonAssocSemiring.{max u3 u2} (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (Subalgebra.toSemiring.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))))))) (DistribSMul.toSMulZeroClass.{u2, max u3 u2} R (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (AddMonoid.toAddZeroClass.{max u3 u2} (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (AddCommMonoid.toAddMonoid.{max u3 u2} (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (NonUnitalNonAssocSemiring.toAddCommMonoid.{max u3 u2} (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{max u3 u2} (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (Semiring.toNonAssocSemiring.{max u3 u2} (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (Subalgebra.toSemiring.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))))))) (DistribMulAction.toDistribSMul.{u2, max u3 u2} R (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (AddCommMonoid.toAddMonoid.{max u3 u2} (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (NonUnitalNonAssocSemiring.toAddCommMonoid.{max u3 u2} (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{max u3 u2} (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (Semiring.toNonAssocSemiring.{max u3 u2} (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (Subalgebra.toSemiring.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))))))) (Module.toDistribMulAction.{u2, max u3 u2} R (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{max u3 u2} (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{max u3 u2} (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (Semiring.toNonAssocSemiring.{max u3 u2} (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (Subalgebra.toSemiring.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))))) (Algebra.toModule.{u2, max u3 u2} R (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (CommRing.toCommSemiring.{u2} R _inst_3) (Subalgebra.toSemiring.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))) (Subalgebra.algebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))))))) (SMulZeroClass.toSMul.{u2, u1} R (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (AddMonoid.toZero.{u1} (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (AddCommMonoid.toAddMonoid.{u1} (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (Semiring.toNonAssocSemiring.{u1} (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (Module.End.semiring.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4)))))) (DistribSMul.toSMulZeroClass.{u2, u1} R (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (AddMonoid.toAddZeroClass.{u1} (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (AddCommMonoid.toAddMonoid.{u1} (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (Semiring.toNonAssocSemiring.{u1} (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (Module.End.semiring.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4)))))) (DistribMulAction.toDistribSMul.{u2, u1} R (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (AddCommMonoid.toAddMonoid.{u1} (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (Semiring.toNonAssocSemiring.{u1} (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (Module.End.semiring.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4))))) (Module.toDistribMulAction.{u2, u1} R (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (Semiring.toNonAssocSemiring.{u1} (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (Module.End.semiring.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4)))) (Algebra.toModule.{u2, u1} R (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (CommRing.toCommSemiring.{u2} R _inst_3) (Module.End.semiring.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (Module.instAlgebraEndToSemiringSemiring.{u2, u1} R M (CommRing.toCommSemiring.{u2} R _inst_3) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4)))))) (DistribMulActionHomClass.toSMulHomClass.{max (max u3 u1) u2, u2, max u3 u2, u1} (AlgHom.{u2, max u3 u2, u1} R (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (CommRing.toCommSemiring.{u2} R _inst_3) (Subalgebra.toSemiring.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))) (Module.End.semiring.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (Subalgebra.algebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))) (Module.instAlgebraEndToSemiringSemiring.{u2, u1} R M (CommRing.toCommSemiring.{u2} R _inst_3) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4)) R (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (AddCommMonoid.toAddMonoid.{max u3 u2} (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (NonUnitalNonAssocSemiring.toAddCommMonoid.{max u3 u2} (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{max u3 u2} (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (Semiring.toNonAssocSemiring.{max u3 u2} (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (Subalgebra.toSemiring.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))))))) (AddCommMonoid.toAddMonoid.{u1} (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (Semiring.toNonAssocSemiring.{u1} (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (Module.End.semiring.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4))))) (Module.toDistribMulAction.{u2, max u3 u2} R (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{max u3 u2} (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{max u3 u2} (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (Semiring.toNonAssocSemiring.{max u3 u2} (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (Subalgebra.toSemiring.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))))) (Algebra.toModule.{u2, max u3 u2} R (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (CommRing.toCommSemiring.{u2} R _inst_3) (Subalgebra.toSemiring.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))) (Subalgebra.algebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))))) (Module.toDistribMulAction.{u2, u1} R (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (Semiring.toNonAssocSemiring.{u1} (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (Module.End.semiring.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4)))) (Algebra.toModule.{u2, u1} R (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (CommRing.toCommSemiring.{u2} R _inst_3) (Module.End.semiring.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (Module.instAlgebraEndToSemiringSemiring.{u2, u1} R M (CommRing.toCommSemiring.{u2} R _inst_3) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4))) (NonUnitalAlgHomClass.toDistribMulActionHomClass.{max (max u3 u1) u2, u2, max u3 u2, u1} (AlgHom.{u2, max u3 u2, u1} R (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (CommRing.toCommSemiring.{u2} R _inst_3) (Subalgebra.toSemiring.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))) (Module.End.semiring.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (Subalgebra.algebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))) (Module.instAlgebraEndToSemiringSemiring.{u2, u1} R M (CommRing.toCommSemiring.{u2} R _inst_3) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4)) R (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{max u3 u2} (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (Semiring.toNonAssocSemiring.{max u3 u2} (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (Subalgebra.toSemiring.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))))) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (Semiring.toNonAssocSemiring.{u1} (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (Module.End.semiring.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4))) (Module.toDistribMulAction.{u2, max u3 u2} R (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{max u3 u2} (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{max u3 u2} (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (Semiring.toNonAssocSemiring.{max u3 u2} (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (Subalgebra.toSemiring.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))))) (Algebra.toModule.{u2, max u3 u2} R (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (CommRing.toCommSemiring.{u2} R _inst_3) (Subalgebra.toSemiring.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))) (Subalgebra.algebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))))) (Module.toDistribMulAction.{u2, u1} R (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (Semiring.toNonAssocSemiring.{u1} (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (Module.End.semiring.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4)))) (Algebra.toModule.{u2, u1} R (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (CommRing.toCommSemiring.{u2} R _inst_3) (Module.End.semiring.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (Module.instAlgebraEndToSemiringSemiring.{u2, u1} R M (CommRing.toCommSemiring.{u2} R _inst_3) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4))) (AlgHom.instNonUnitalAlgHomClassToMonoidToMonoidWithZeroToSemiringToNonUnitalNonAssocSemiringToNonAssocSemiringToNonUnitalNonAssocSemiringToNonAssocSemiringToDistribMulActionToAddCommMonoidToModuleToDistribMulActionToAddCommMonoidToModule.{u2, max u3 u2, u1, max (max u3 u1) u2} R (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (CommRing.toCommSemiring.{u2} R _inst_3) (Subalgebra.toSemiring.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))) (Module.End.semiring.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (Subalgebra.algebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))) (Module.instAlgebraEndToSemiringSemiring.{u2, u1} R M (CommRing.toCommSemiring.{u2} R _inst_3) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (AlgHom.{u2, max u3 u2, u1} R (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (CommRing.toCommSemiring.{u2} R _inst_3) (Subalgebra.toSemiring.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))) (Module.End.semiring.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (Subalgebra.algebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))) (Module.instAlgebraEndToSemiringSemiring.{u2, u1} R M (CommRing.toCommSemiring.{u2} R _inst_3) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4)) (AlgHom.algHomClass.{u2, max u3 u2, u1} R (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (CommRing.toCommSemiring.{u2} R _inst_3) (Subalgebra.toSemiring.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))) (Module.End.semiring.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (Subalgebra.algebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))) (Module.instAlgebraEndToSemiringSemiring.{u2, u1} R M (CommRing.toCommSemiring.{u2} R _inst_3) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4)))))) (Matrix.isRepresentation.toEnd.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b hb (fun (a : ι) (b : ι) => _inst_5 a b)) A)
+<too large>
Case conversion may be inaccurate. Consider using '#align matrix.is_representation.to_End_represents Matrix.isRepresentation.toEnd_representsₓ'. -/
theorem Matrix.isRepresentation.toEnd_represents (A : Matrix.isRepresentation R b) :
(A : Matrix ι ι R).Represents b (Matrix.isRepresentation.toEnd R b hb A) :=
@@ -303,10 +267,7 @@ theorem Matrix.isRepresentation.toEnd_represents (A : Matrix.isRepresentation R
#align matrix.is_representation.to_End_represents Matrix.isRepresentation.toEnd_represents
/- warning: matrix.is_representation.eq_to_End_of_represents -> Matrix.isRepresentation.eq_toEnd_of_represents is a dubious translation:
-lean 3 declaration is
- forall {ι : Type.{u1}} [_inst_1 : Fintype.{u1} ι] {M : Type.{u2}} [_inst_2 : AddCommGroup.{u2} M] (R : Type.{u3}) [_inst_3 : CommRing.{u3} R] [_inst_4 : Module.{u3, u2} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2)] (b : ι -> M) (hb : Eq.{succ u2} (Submodule.{u3, u2} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (Submodule.span.{u3, u2} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4 (Set.range.{u2, succ u1} M ι b)) (Top.top.{u2} (Submodule.{u3, u2} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (Submodule.hasTop.{u3, u2} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4))) [_inst_5 : DecidableEq.{succ u1} ι] (A : coeSort.{succ (max u1 u3), succ (succ (max u1 u3))} (Subalgebra.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.algebra.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) Type.{max u1 u3} (SetLike.hasCoeToSort.{max u1 u3, max u1 u3} (Subalgebra.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.algebra.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.setLike.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.algebra.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))))) (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))) {f : Module.End.{u3, u2} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4}, (Matrix.Represents.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b) ((fun (a : Type.{max u1 u3}) (b : Type.{max u1 u3}) [self : HasLiftT.{succ (max u1 u3), succ (max u1 u3)} a b] => self.0) (coeSort.{succ (max u1 u3), succ (succ (max u1 u3))} (Subalgebra.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.algebra.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) Type.{max u1 u3} (SetLike.hasCoeToSort.{max u1 u3, max u1 u3} (Subalgebra.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.algebra.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.setLike.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.algebra.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))))) (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))) (Matrix.{u1, u1, u3} ι ι R) (HasLiftT.mk.{succ (max u1 u3), succ (max u1 u3)} (coeSort.{succ (max u1 u3), succ (succ (max u1 u3))} (Subalgebra.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.algebra.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) Type.{max u1 u3} (SetLike.hasCoeToSort.{max u1 u3, max u1 u3} (Subalgebra.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.algebra.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.setLike.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.algebra.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))))) (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))) (Matrix.{u1, u1, u3} ι ι R) (CoeTCₓ.coe.{succ (max u1 u3), succ (max u1 u3)} (coeSort.{succ (max u1 u3), succ (succ (max u1 u3))} (Subalgebra.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.algebra.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) Type.{max u1 u3} (SetLike.hasCoeToSort.{max u1 u3, max u1 u3} (Subalgebra.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.algebra.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.setLike.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.algebra.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))))) (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))) (Matrix.{u1, u1, u3} ι ι R) (coeBase.{succ (max u1 u3), succ (max u1 u3)} (coeSort.{succ (max u1 u3), succ (succ (max u1 u3))} (Subalgebra.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.algebra.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) Type.{max u1 u3} (SetLike.hasCoeToSort.{max u1 u3, max u1 u3} (Subalgebra.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.algebra.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.setLike.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.algebra.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))))) (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))) (Matrix.{u1, u1, u3} ι ι R) (coeSubtype.{succ (max u1 u3)} (Matrix.{u1, u1, u3} ι ι R) (fun (x : Matrix.{u1, u1, u3} ι ι R) => Membership.Mem.{max u1 u3, max u1 u3} (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.algebra.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (SetLike.hasMem.{max u1 u3, max u1 u3} (Subalgebra.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.algebra.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.setLike.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.algebra.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))))) x (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))))))) A) f) -> (Eq.{succ u2} (Module.End.{u3, u2} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (coeFn.{max (succ (max u1 u3)) (succ u2), max (succ (max u1 u3)) (succ u2)} (AlgHom.{u3, max u1 u3, u2} R (coeSort.{succ (max u1 u3), succ (succ (max u1 u3))} (Subalgebra.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b)) (Matrix.algebra.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b) (CommRing.toCommSemiring.{u3} R _inst_3) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) Type.{max u1 u3} (SetLike.hasCoeToSort.{max u1 u3, max u1 u3} (Subalgebra.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b)) (Matrix.algebra.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b) (CommRing.toCommSemiring.{u3} R _inst_3) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.setLike.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b)) (Matrix.algebra.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b) (CommRing.toCommSemiring.{u3} R _inst_3) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))))) (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))) (Module.End.{u3, u2} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (CommRing.toCommSemiring.{u3} R _inst_3) (Subalgebra.toSemiring.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b)) (Matrix.algebra.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b) (CommRing.toCommSemiring.{u3} R _inst_3) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))) (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))) (Module.End.semiring.{u3, u2} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (Subalgebra.algebra.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b)) (Matrix.algebra.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b) (CommRing.toCommSemiring.{u3} R _inst_3) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))) (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))) (Module.End.algebra.{u3, u2} R M (CommRing.toCommSemiring.{u3} R _inst_3) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4)) (fun (_x : AlgHom.{u3, max u1 u3, u2} R (coeSort.{succ (max u1 u3), succ (succ (max u1 u3))} (Subalgebra.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b)) (Matrix.algebra.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b) (CommRing.toCommSemiring.{u3} R _inst_3) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) Type.{max u1 u3} (SetLike.hasCoeToSort.{max u1 u3, max u1 u3} (Subalgebra.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b)) (Matrix.algebra.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b) (CommRing.toCommSemiring.{u3} R _inst_3) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.setLike.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b)) (Matrix.algebra.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b) (CommRing.toCommSemiring.{u3} R _inst_3) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))))) (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))) (Module.End.{u3, u2} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (CommRing.toCommSemiring.{u3} R _inst_3) (Subalgebra.toSemiring.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b)) (Matrix.algebra.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b) (CommRing.toCommSemiring.{u3} R _inst_3) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))) (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))) (Module.End.semiring.{u3, u2} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (Subalgebra.algebra.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b)) (Matrix.algebra.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b) (CommRing.toCommSemiring.{u3} R _inst_3) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))) (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))) (Module.End.algebra.{u3, u2} R M (CommRing.toCommSemiring.{u3} R _inst_3) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4)) => (coeSort.{succ (max u1 u3), succ (succ (max u1 u3))} (Subalgebra.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b)) (Matrix.algebra.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b) (CommRing.toCommSemiring.{u3} R _inst_3) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) Type.{max u1 u3} (SetLike.hasCoeToSort.{max u1 u3, max u1 u3} (Subalgebra.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b)) (Matrix.algebra.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b) (CommRing.toCommSemiring.{u3} R _inst_3) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.setLike.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b)) (Matrix.algebra.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b) (CommRing.toCommSemiring.{u3} R _inst_3) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))))) (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))) -> (Module.End.{u3, u2} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4)) ([anonymous].{u3, max u1 u3, u2} R (coeSort.{succ (max u1 u3), succ (succ (max u1 u3))} (Subalgebra.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b)) (Matrix.algebra.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b) (CommRing.toCommSemiring.{u3} R _inst_3) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) Type.{max u1 u3} (SetLike.hasCoeToSort.{max u1 u3, max u1 u3} (Subalgebra.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b)) (Matrix.algebra.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b) (CommRing.toCommSemiring.{u3} R _inst_3) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.setLike.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b)) (Matrix.algebra.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b) (CommRing.toCommSemiring.{u3} R _inst_3) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))))) (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))) (Module.End.{u3, u2} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (CommRing.toCommSemiring.{u3} R _inst_3) (Subalgebra.toSemiring.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b)) (Matrix.algebra.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b) (CommRing.toCommSemiring.{u3} R _inst_3) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))) (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))) (Module.End.semiring.{u3, u2} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (Subalgebra.algebra.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b)) (Matrix.algebra.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b) (CommRing.toCommSemiring.{u3} R _inst_3) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))) (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))) (Module.End.algebra.{u3, u2} R M (CommRing.toCommSemiring.{u3} R _inst_3) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4)) (Matrix.isRepresentation.toEnd.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b hb (fun (a : ι) (b : ι) => _inst_5 a b)) A) f)
-but is expected to have type
- forall {ι : Type.{u3}} [_inst_1 : Fintype.{u3} ι] {M : Type.{u1}} [_inst_2 : AddCommGroup.{u1} M] (R : Type.{u2}) [_inst_3 : CommRing.{u2} R] [_inst_4 : Module.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2)] (b : ι -> M) (hb : Eq.{succ u1} (Submodule.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (Submodule.span.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4 (Set.range.{u1, succ u3} M ι b)) (Top.top.{u1} (Submodule.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (Submodule.instTopSubmodule.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4))) [_inst_5 : DecidableEq.{succ u3} ι] (A : Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) {f : Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4}, (Matrix.Represents.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b) (Subtype.val.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Set.{max u3 u2} (Matrix.{u3, u3, u2} ι ι R)) (Set.instMembershipSet.{max u3 u2} (Matrix.{u3, u3, u2} ι ι R)) x (SetLike.coe.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) A) f) -> (Eq.{succ u1} ((fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2187 : Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) => Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) A) (FunLike.coe.{max (max (succ u3) (succ u1)) (succ u2), max (succ u3) (succ u2), succ u1} (AlgHom.{u2, max u3 u2, u1} R (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (CommRing.toCommSemiring.{u2} R _inst_3) (Subalgebra.toSemiring.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))) (Module.End.semiring.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (Subalgebra.algebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))) (Module.instAlgebraEndToSemiringSemiring.{u2, u1} R M (CommRing.toCommSemiring.{u2} R _inst_3) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4)) (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (fun (_x : Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2187 : Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) => Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) _x) (SMulHomClass.toFunLike.{max (max u3 u1) u2, u2, max u3 u2, u1} (AlgHom.{u2, max u3 u2, u1} R (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (CommRing.toCommSemiring.{u2} R _inst_3) (Subalgebra.toSemiring.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))) (Module.End.semiring.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (Subalgebra.algebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))) (Module.instAlgebraEndToSemiringSemiring.{u2, u1} R M (CommRing.toCommSemiring.{u2} R _inst_3) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4)) R (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (SMulZeroClass.toSMul.{u2, max u3 u2} R (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (AddMonoid.toZero.{max u3 u2} (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (AddCommMonoid.toAddMonoid.{max u3 u2} (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (NonUnitalNonAssocSemiring.toAddCommMonoid.{max u3 u2} (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{max u3 u2} (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (Semiring.toNonAssocSemiring.{max u3 u2} (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (Subalgebra.toSemiring.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))))))) (DistribSMul.toSMulZeroClass.{u2, max u3 u2} R (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (AddMonoid.toAddZeroClass.{max u3 u2} (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (AddCommMonoid.toAddMonoid.{max u3 u2} (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (NonUnitalNonAssocSemiring.toAddCommMonoid.{max u3 u2} (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{max u3 u2} (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (Semiring.toNonAssocSemiring.{max u3 u2} (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (Subalgebra.toSemiring.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))))))) (DistribMulAction.toDistribSMul.{u2, max u3 u2} R (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (AddCommMonoid.toAddMonoid.{max u3 u2} (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (NonUnitalNonAssocSemiring.toAddCommMonoid.{max u3 u2} (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{max u3 u2} (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (Semiring.toNonAssocSemiring.{max u3 u2} (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (Subalgebra.toSemiring.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))))))) (Module.toDistribMulAction.{u2, max u3 u2} R (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{max u3 u2} (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{max u3 u2} (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (Semiring.toNonAssocSemiring.{max u3 u2} (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (Subalgebra.toSemiring.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))))) (Algebra.toModule.{u2, max u3 u2} R (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (CommRing.toCommSemiring.{u2} R _inst_3) (Subalgebra.toSemiring.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))) (Subalgebra.algebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))))))) (SMulZeroClass.toSMul.{u2, u1} R (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (AddMonoid.toZero.{u1} (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (AddCommMonoid.toAddMonoid.{u1} (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (Semiring.toNonAssocSemiring.{u1} (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (Module.End.semiring.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4)))))) (DistribSMul.toSMulZeroClass.{u2, u1} R (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (AddMonoid.toAddZeroClass.{u1} (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (AddCommMonoid.toAddMonoid.{u1} (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (Semiring.toNonAssocSemiring.{u1} (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (Module.End.semiring.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4)))))) (DistribMulAction.toDistribSMul.{u2, u1} R (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (AddCommMonoid.toAddMonoid.{u1} (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (Semiring.toNonAssocSemiring.{u1} (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (Module.End.semiring.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4))))) (Module.toDistribMulAction.{u2, u1} R (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (Semiring.toNonAssocSemiring.{u1} (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (Module.End.semiring.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4)))) (Algebra.toModule.{u2, u1} R (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (CommRing.toCommSemiring.{u2} R _inst_3) (Module.End.semiring.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (Module.instAlgebraEndToSemiringSemiring.{u2, u1} R M (CommRing.toCommSemiring.{u2} R _inst_3) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4)))))) (DistribMulActionHomClass.toSMulHomClass.{max (max u3 u1) u2, u2, max u3 u2, u1} (AlgHom.{u2, max u3 u2, u1} R (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (CommRing.toCommSemiring.{u2} R _inst_3) (Subalgebra.toSemiring.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))) (Module.End.semiring.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (Subalgebra.algebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))) (Module.instAlgebraEndToSemiringSemiring.{u2, u1} R M (CommRing.toCommSemiring.{u2} R _inst_3) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4)) R (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (AddCommMonoid.toAddMonoid.{max u3 u2} (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (NonUnitalNonAssocSemiring.toAddCommMonoid.{max u3 u2} (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{max u3 u2} (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (Semiring.toNonAssocSemiring.{max u3 u2} (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (Subalgebra.toSemiring.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))))))) (AddCommMonoid.toAddMonoid.{u1} (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (Semiring.toNonAssocSemiring.{u1} (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (Module.End.semiring.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4))))) (Module.toDistribMulAction.{u2, max u3 u2} R (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{max u3 u2} (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{max u3 u2} (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (Semiring.toNonAssocSemiring.{max u3 u2} (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (Subalgebra.toSemiring.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))))) (Algebra.toModule.{u2, max u3 u2} R (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (CommRing.toCommSemiring.{u2} R _inst_3) (Subalgebra.toSemiring.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))) (Subalgebra.algebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))))) (Module.toDistribMulAction.{u2, u1} R (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (Semiring.toNonAssocSemiring.{u1} (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (Module.End.semiring.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4)))) (Algebra.toModule.{u2, u1} R (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (CommRing.toCommSemiring.{u2} R _inst_3) (Module.End.semiring.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (Module.instAlgebraEndToSemiringSemiring.{u2, u1} R M (CommRing.toCommSemiring.{u2} R _inst_3) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4))) (NonUnitalAlgHomClass.toDistribMulActionHomClass.{max (max u3 u1) u2, u2, max u3 u2, u1} (AlgHom.{u2, max u3 u2, u1} R (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (CommRing.toCommSemiring.{u2} R _inst_3) (Subalgebra.toSemiring.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))) (Module.End.semiring.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (Subalgebra.algebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))) (Module.instAlgebraEndToSemiringSemiring.{u2, u1} R M (CommRing.toCommSemiring.{u2} R _inst_3) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4)) R (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{max u3 u2} (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (Semiring.toNonAssocSemiring.{max u3 u2} (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (Subalgebra.toSemiring.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))))) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (Semiring.toNonAssocSemiring.{u1} (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (Module.End.semiring.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4))) (Module.toDistribMulAction.{u2, max u3 u2} R (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{max u3 u2} (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{max u3 u2} (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (Semiring.toNonAssocSemiring.{max u3 u2} (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (Subalgebra.toSemiring.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))))) (Algebra.toModule.{u2, max u3 u2} R (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (CommRing.toCommSemiring.{u2} R _inst_3) (Subalgebra.toSemiring.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))) (Subalgebra.algebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))))) (Module.toDistribMulAction.{u2, u1} R (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (Semiring.toNonAssocSemiring.{u1} (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (Module.End.semiring.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4)))) (Algebra.toModule.{u2, u1} R (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (CommRing.toCommSemiring.{u2} R _inst_3) (Module.End.semiring.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (Module.instAlgebraEndToSemiringSemiring.{u2, u1} R M (CommRing.toCommSemiring.{u2} R _inst_3) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4))) (AlgHom.instNonUnitalAlgHomClassToMonoidToMonoidWithZeroToSemiringToNonUnitalNonAssocSemiringToNonAssocSemiringToNonUnitalNonAssocSemiringToNonAssocSemiringToDistribMulActionToAddCommMonoidToModuleToDistribMulActionToAddCommMonoidToModule.{u2, max u3 u2, u1, max (max u3 u1) u2} R (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (CommRing.toCommSemiring.{u2} R _inst_3) (Subalgebra.toSemiring.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))) (Module.End.semiring.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (Subalgebra.algebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))) (Module.instAlgebraEndToSemiringSemiring.{u2, u1} R M (CommRing.toCommSemiring.{u2} R _inst_3) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (AlgHom.{u2, max u3 u2, u1} R (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (CommRing.toCommSemiring.{u2} R _inst_3) (Subalgebra.toSemiring.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))) (Module.End.semiring.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (Subalgebra.algebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))) (Module.instAlgebraEndToSemiringSemiring.{u2, u1} R M (CommRing.toCommSemiring.{u2} R _inst_3) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4)) (AlgHom.algHomClass.{u2, max u3 u2, u1} R (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (CommRing.toCommSemiring.{u2} R _inst_3) (Subalgebra.toSemiring.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))) (Module.End.semiring.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (Subalgebra.algebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))) (Module.instAlgebraEndToSemiringSemiring.{u2, u1} R M (CommRing.toCommSemiring.{u2} R _inst_3) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4)))))) (Matrix.isRepresentation.toEnd.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b hb (fun (a : ι) (b : ι) => _inst_5 a b)) A) f)
+<too large>
Case conversion may be inaccurate. Consider using '#align matrix.is_representation.eq_to_End_of_represents Matrix.isRepresentation.eq_toEnd_of_representsₓ'. -/
theorem Matrix.isRepresentation.eq_toEnd_of_represents (A : Matrix.isRepresentation R b)
{f : Module.End R M} (h : (A : Matrix ι ι R).Represents b f) :
@@ -315,10 +276,7 @@ theorem Matrix.isRepresentation.eq_toEnd_of_represents (A : Matrix.isRepresentat
#align matrix.is_representation.eq_to_End_of_represents Matrix.isRepresentation.eq_toEnd_of_represents
/- warning: matrix.is_representation.to_End_exists_mem_ideal -> Matrix.isRepresentation.toEnd_exists_mem_ideal is a dubious translation:
-lean 3 declaration is
- forall {ι : Type.{u1}} [_inst_1 : Fintype.{u1} ι] {M : Type.{u2}} [_inst_2 : AddCommGroup.{u2} M] (R : Type.{u3}) [_inst_3 : CommRing.{u3} R] [_inst_4 : Module.{u3, u2} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2)] (b : ι -> M) (hb : Eq.{succ u2} (Submodule.{u3, u2} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (Submodule.span.{u3, u2} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4 (Set.range.{u2, succ u1} M ι b)) (Top.top.{u2} (Submodule.{u3, u2} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (Submodule.hasTop.{u3, u2} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4))) [_inst_5 : DecidableEq.{succ u1} ι] (f : Module.End.{u3, u2} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (I : Ideal.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3))), (LE.le.{u2} (Submodule.{u3, u2} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (Preorder.toHasLe.{u2} (Submodule.{u3, u2} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (PartialOrder.toPreorder.{u2} (Submodule.{u3, u2} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (SetLike.partialOrder.{u2, u2} (Submodule.{u3, u2} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) M (Submodule.setLike.{u3, u2} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4)))) (LinearMap.range.{u3, u3, u2, u2, u2} R R M M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4 _inst_4 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) (Module.End.{u3, u2} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (LinearMap.semilinearMapClass.{u3, u3, u2, u2} R R M M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4 _inst_4 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3))))) (RingHomSurjective.ids.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3))) f) (SMul.smul.{u3, u2} (Ideal.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3))) (Submodule.{u3, u2} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (Submodule.hasSMul'.{u3, u2} R M (CommRing.toCommSemiring.{u3} R _inst_3) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) I (Top.top.{u2} (Submodule.{u3, u2} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (Submodule.hasTop.{u3, u2} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4)))) -> (Exists.{succ (max u1 u3)} (coeSort.{succ (max u1 u3), succ (succ (max u1 u3))} (Subalgebra.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b)) (Matrix.algebra.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b) (CommRing.toCommSemiring.{u3} R _inst_3) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) Type.{max u1 u3} (SetLike.hasCoeToSort.{max u1 u3, max u1 u3} (Subalgebra.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b)) (Matrix.algebra.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b) (CommRing.toCommSemiring.{u3} R _inst_3) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.setLike.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b)) (Matrix.algebra.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b) (CommRing.toCommSemiring.{u3} R _inst_3) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))))) (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))) (fun (M_1 : coeSort.{succ (max u1 u3), succ (succ (max u1 u3))} (Subalgebra.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b)) (Matrix.algebra.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b) (CommRing.toCommSemiring.{u3} R _inst_3) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) Type.{max u1 u3} (SetLike.hasCoeToSort.{max u1 u3, max u1 u3} (Subalgebra.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b)) (Matrix.algebra.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b) (CommRing.toCommSemiring.{u3} R _inst_3) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.setLike.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b)) (Matrix.algebra.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b) (CommRing.toCommSemiring.{u3} R _inst_3) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))))) (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))) => And (Eq.{succ u2} (Module.End.{u3, u2} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (coeFn.{max (succ (max u1 u3)) (succ u2), max (succ (max u1 u3)) (succ u2)} (AlgHom.{u3, max u1 u3, u2} R (coeSort.{succ (max u1 u3), succ (succ (max u1 u3))} (Subalgebra.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b)) (Matrix.algebra.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b) (CommRing.toCommSemiring.{u3} R _inst_3) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) Type.{max u1 u3} (SetLike.hasCoeToSort.{max u1 u3, max u1 u3} (Subalgebra.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b)) (Matrix.algebra.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b) (CommRing.toCommSemiring.{u3} R _inst_3) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.setLike.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b)) (Matrix.algebra.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b) (CommRing.toCommSemiring.{u3} R _inst_3) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))))) (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))) (Module.End.{u3, u2} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (CommRing.toCommSemiring.{u3} R _inst_3) (Subalgebra.toSemiring.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b)) (Matrix.algebra.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b) (CommRing.toCommSemiring.{u3} R _inst_3) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))) (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))) (Module.End.semiring.{u3, u2} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (Subalgebra.algebra.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b)) (Matrix.algebra.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b) (CommRing.toCommSemiring.{u3} R _inst_3) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))) (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))) (Module.End.algebra.{u3, u2} R M (CommRing.toCommSemiring.{u3} R _inst_3) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4)) (fun (_x : AlgHom.{u3, max u1 u3, u2} R (coeSort.{succ (max u1 u3), succ (succ (max u1 u3))} (Subalgebra.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b)) (Matrix.algebra.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b) (CommRing.toCommSemiring.{u3} R _inst_3) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) Type.{max u1 u3} (SetLike.hasCoeToSort.{max u1 u3, max u1 u3} (Subalgebra.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b)) (Matrix.algebra.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b) (CommRing.toCommSemiring.{u3} R _inst_3) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.setLike.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b)) (Matrix.algebra.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b) (CommRing.toCommSemiring.{u3} R _inst_3) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))))) (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))) (Module.End.{u3, u2} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (CommRing.toCommSemiring.{u3} R _inst_3) (Subalgebra.toSemiring.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b)) (Matrix.algebra.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b) (CommRing.toCommSemiring.{u3} R _inst_3) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))) (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))) (Module.End.semiring.{u3, u2} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (Subalgebra.algebra.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b)) (Matrix.algebra.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b) (CommRing.toCommSemiring.{u3} R _inst_3) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))) (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))) (Module.End.algebra.{u3, u2} R M (CommRing.toCommSemiring.{u3} R _inst_3) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4)) => (coeSort.{succ (max u1 u3), succ (succ (max u1 u3))} (Subalgebra.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b)) (Matrix.algebra.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b) (CommRing.toCommSemiring.{u3} R _inst_3) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) Type.{max u1 u3} (SetLike.hasCoeToSort.{max u1 u3, max u1 u3} (Subalgebra.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b)) (Matrix.algebra.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b) (CommRing.toCommSemiring.{u3} R _inst_3) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.setLike.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b)) (Matrix.algebra.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b) (CommRing.toCommSemiring.{u3} R _inst_3) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))))) (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))) -> (Module.End.{u3, u2} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4)) ([anonymous].{u3, max u1 u3, u2} R (coeSort.{succ (max u1 u3), succ (succ (max u1 u3))} (Subalgebra.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b)) (Matrix.algebra.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b) (CommRing.toCommSemiring.{u3} R _inst_3) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) Type.{max u1 u3} (SetLike.hasCoeToSort.{max u1 u3, max u1 u3} (Subalgebra.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b)) (Matrix.algebra.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b) (CommRing.toCommSemiring.{u3} R _inst_3) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.setLike.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b)) (Matrix.algebra.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b) (CommRing.toCommSemiring.{u3} R _inst_3) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))))) (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))) (Module.End.{u3, u2} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (CommRing.toCommSemiring.{u3} R _inst_3) (Subalgebra.toSemiring.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b)) (Matrix.algebra.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b) (CommRing.toCommSemiring.{u3} R _inst_3) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))) (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))) (Module.End.semiring.{u3, u2} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (Subalgebra.algebra.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b)) (Matrix.algebra.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b) (CommRing.toCommSemiring.{u3} R _inst_3) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))) (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))) (Module.End.algebra.{u3, u2} R M (CommRing.toCommSemiring.{u3} R _inst_3) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4)) (Matrix.isRepresentation.toEnd.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b hb (fun (a : ι) (b : ι) => _inst_5 a b)) M_1) f) (forall (i : ι) (j : ι), Membership.Mem.{u3, u3} R (Ideal.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3))) (SetLike.hasMem.{u3, u3} (Ideal.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3))) R (Submodule.setLike.{u3, u3} R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3))))) (Semiring.toModule.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3))))) (Subtype.val.{succ (max u1 u3)} (Matrix.{u1, u1, u3} ι ι R) (fun (x : Matrix.{u1, u1, u3} ι ι R) => Membership.Mem.{max u1 u3, max u1 u3} (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b)) (Matrix.algebra.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b) (CommRing.toCommSemiring.{u3} R _inst_3) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (SetLike.hasMem.{max u1 u3, max u1 u3} (Subalgebra.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b)) (Matrix.algebra.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b) (CommRing.toCommSemiring.{u3} R _inst_3) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.setLike.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b)) (Matrix.algebra.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b) (CommRing.toCommSemiring.{u3} R _inst_3) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))))) x (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))) M_1 i j) I)))
-but is expected to have type
- forall {ι : Type.{u1}} [_inst_1 : Fintype.{u1} ι] {M : Type.{u2}} [_inst_2 : AddCommGroup.{u2} M] (R : Type.{u3}) [_inst_3 : CommRing.{u3} R] [_inst_4 : Module.{u3, u2} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2)] (b : ι -> M) (hb : Eq.{succ u2} (Submodule.{u3, u2} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (Submodule.span.{u3, u2} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4 (Set.range.{u2, succ u1} M ι b)) (Top.top.{u2} (Submodule.{u3, u2} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (Submodule.instTopSubmodule.{u3, u2} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4))) [_inst_5 : DecidableEq.{succ u1} ι] (f : Module.End.{u3, u2} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (I : Ideal.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))), (LE.le.{u2} (Submodule.{u3, u2} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (Preorder.toLE.{u2} (Submodule.{u3, u2} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (PartialOrder.toPreorder.{u2} (Submodule.{u3, u2} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (OmegaCompletePartialOrder.toPartialOrder.{u2} (Submodule.{u3, u2} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (CompleteLattice.instOmegaCompletePartialOrder.{u2} (Submodule.{u3, u2} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (Submodule.completeLattice.{u3, u2} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4))))) (LinearMap.range.{u3, u3, u2, u2, u2} R R M M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4 _inst_4 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (Module.End.{u3, u2} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (LinearMap.semilinearMapClass.{u3, u3, u2, u2} R R M M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4 _inst_4 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))))) (RingHomSurjective.ids.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))) f) (HSMul.hSMul.{u3, u2, u2} (Ideal.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))) (Submodule.{u3, u2} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (Submodule.{u3, u2} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (instHSMul.{u3, u2} (Ideal.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))) (Submodule.{u3, u2} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (Submodule.hasSMul'.{u3, u2} R M (CommRing.toCommSemiring.{u3} R _inst_3) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4)) I (Top.top.{u2} (Submodule.{u3, u2} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (Submodule.instTopSubmodule.{u3, u2} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4)))) -> (Exists.{max (succ u1) (succ u3)} (Subtype.{succ (max u1 u3)} (Matrix.{u1, u1, u3} ι ι R) (fun (x : Matrix.{u1, u1, u3} ι ι R) => Membership.mem.{max u1 u3, max u1 u3} (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.{u3, max u3 u1} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (SetLike.instMembership.{max u1 u3, max u1 u3} (Subalgebra.{u3, max u3 u1} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))))) x (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (fun (M_1 : Subtype.{succ (max u1 u3)} (Matrix.{u1, u1, u3} ι ι R) (fun (x : Matrix.{u1, u1, u3} ι ι R) => Membership.mem.{max u1 u3, max u1 u3} (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.{u3, max u3 u1} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (SetLike.instMembership.{max u1 u3, max u1 u3} (Subalgebra.{u3, max u3 u1} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))))) x (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) => And (Eq.{succ u2} ((fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2187 : Subtype.{succ (max u1 u3)} (Matrix.{u1, u1, u3} ι ι R) (fun (x : Matrix.{u1, u1, u3} ι ι R) => Membership.mem.{max u1 u3, max u1 u3} (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.{u3, max u3 u1} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (SetLike.instMembership.{max u1 u3, max u1 u3} (Subalgebra.{u3, max u3 u1} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))))) x (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) => Module.End.{u3, u2} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) M_1) (FunLike.coe.{max (max (succ u1) (succ u2)) (succ u3), max (succ u1) (succ u3), succ u2} (AlgHom.{u3, max u1 u3, u2} R (Subtype.{succ (max u1 u3)} (Matrix.{u1, u1, u3} ι ι R) (fun (x : Matrix.{u1, u1, u3} ι ι R) => Membership.mem.{max u1 u3, max u1 u3} (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.{u3, max u3 u1} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (SetLike.instMembership.{max u1 u3, max u1 u3} (Subalgebra.{u3, max u3 u1} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))))) x (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (Module.End.{u3, u2} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (CommRing.toCommSemiring.{u3} R _inst_3) (Subalgebra.toSemiring.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))) (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))) (Module.End.semiring.{u3, u2} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (Subalgebra.algebra.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))) (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))) (Module.instAlgebraEndToSemiringSemiring.{u3, u2} R M (CommRing.toCommSemiring.{u3} R _inst_3) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4)) (Subtype.{succ (max u1 u3)} (Matrix.{u1, u1, u3} ι ι R) (fun (x : Matrix.{u1, u1, u3} ι ι R) => Membership.mem.{max u1 u3, max u1 u3} (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.{u3, max u3 u1} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (SetLike.instMembership.{max u1 u3, max u1 u3} (Subalgebra.{u3, max u3 u1} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))))) x (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (fun (_x : Subtype.{succ (max u1 u3)} (Matrix.{u1, u1, u3} ι ι R) (fun (x : Matrix.{u1, u1, u3} ι ι R) => Membership.mem.{max u1 u3, max u1 u3} (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.{u3, max u3 u1} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (SetLike.instMembership.{max u1 u3, max u1 u3} (Subalgebra.{u3, max u3 u1} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))))) x (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2187 : Subtype.{succ (max u1 u3)} (Matrix.{u1, u1, u3} ι ι R) (fun (x : Matrix.{u1, u1, u3} ι ι R) => Membership.mem.{max u1 u3, max u1 u3} (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.{u3, max u3 u1} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (SetLike.instMembership.{max u1 u3, max u1 u3} (Subalgebra.{u3, max u3 u1} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))))) x (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) => Module.End.{u3, u2} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) _x) (SMulHomClass.toFunLike.{max (max u1 u2) u3, u3, max u1 u3, u2} (AlgHom.{u3, max u1 u3, u2} R (Subtype.{succ (max u1 u3)} (Matrix.{u1, u1, u3} ι ι R) (fun (x : Matrix.{u1, u1, u3} ι ι R) => Membership.mem.{max u1 u3, max u1 u3} (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.{u3, max u3 u1} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (SetLike.instMembership.{max u1 u3, max u1 u3} (Subalgebra.{u3, max u3 u1} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))))) x (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (Module.End.{u3, u2} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (CommRing.toCommSemiring.{u3} R _inst_3) (Subalgebra.toSemiring.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))) (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))) (Module.End.semiring.{u3, u2} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (Subalgebra.algebra.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))) (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))) (Module.instAlgebraEndToSemiringSemiring.{u3, u2} R M (CommRing.toCommSemiring.{u3} R _inst_3) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4)) R (Subtype.{succ (max u1 u3)} (Matrix.{u1, u1, u3} ι ι R) (fun (x : Matrix.{u1, u1, u3} ι ι R) => Membership.mem.{max u1 u3, max u1 u3} (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.{u3, max u3 u1} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (SetLike.instMembership.{max u1 u3, max u1 u3} (Subalgebra.{u3, max u3 u1} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))))) x (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (Module.End.{u3, u2} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (SMulZeroClass.toSMul.{u3, max u1 u3} R (Subtype.{succ (max u1 u3)} (Matrix.{u1, u1, u3} ι ι R) (fun (x : Matrix.{u1, u1, u3} ι ι R) => Membership.mem.{max u1 u3, max u1 u3} (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.{u3, max u3 u1} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (SetLike.instMembership.{max u1 u3, max u1 u3} (Subalgebra.{u3, max u3 u1} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))))) x (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (AddMonoid.toZero.{max u1 u3} (Subtype.{succ (max u1 u3)} (Matrix.{u1, u1, u3} ι ι R) (fun (x : Matrix.{u1, u1, u3} ι ι R) => Membership.mem.{max u1 u3, max u1 u3} (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.{u3, max u3 u1} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (SetLike.instMembership.{max u1 u3, max u1 u3} (Subalgebra.{u3, max u3 u1} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))))) x (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (AddCommMonoid.toAddMonoid.{max u1 u3} (Subtype.{succ (max u1 u3)} (Matrix.{u1, u1, u3} ι ι R) (fun (x : Matrix.{u1, u1, u3} ι ι R) => Membership.mem.{max u1 u3, max u1 u3} (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.{u3, max u3 u1} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (SetLike.instMembership.{max u1 u3, max u1 u3} (Subalgebra.{u3, max u3 u1} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))))) x (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (NonUnitalNonAssocSemiring.toAddCommMonoid.{max u1 u3} (Subtype.{succ (max u1 u3)} (Matrix.{u1, u1, u3} ι ι R) (fun (x : Matrix.{u1, u1, u3} ι ι R) => Membership.mem.{max u1 u3, max u1 u3} (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.{u3, max u3 u1} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (SetLike.instMembership.{max u1 u3, max u1 u3} (Subalgebra.{u3, max u3 u1} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))))) x (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{max u1 u3} (Subtype.{succ (max u1 u3)} (Matrix.{u1, u1, u3} ι ι R) (fun (x : Matrix.{u1, u1, u3} ι ι R) => Membership.mem.{max u1 u3, max u1 u3} (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.{u3, max u3 u1} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (SetLike.instMembership.{max u1 u3, max u1 u3} (Subalgebra.{u3, max u3 u1} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))))) x (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (Semiring.toNonAssocSemiring.{max u1 u3} (Subtype.{succ (max u1 u3)} (Matrix.{u1, u1, u3} ι ι R) (fun (x : Matrix.{u1, u1, u3} ι ι R) => Membership.mem.{max u1 u3, max u1 u3} (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.{u3, max u3 u1} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (SetLike.instMembership.{max u1 u3, max u1 u3} (Subalgebra.{u3, max u3 u1} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))))) x (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (Subalgebra.toSemiring.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))) (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))))))) (DistribSMul.toSMulZeroClass.{u3, max u1 u3} R (Subtype.{succ (max u1 u3)} (Matrix.{u1, u1, u3} ι ι R) (fun (x : Matrix.{u1, u1, u3} ι ι R) => Membership.mem.{max u1 u3, max u1 u3} (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.{u3, max u3 u1} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (SetLike.instMembership.{max u1 u3, max u1 u3} (Subalgebra.{u3, max u3 u1} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))))) x (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (AddMonoid.toAddZeroClass.{max u1 u3} (Subtype.{succ (max u1 u3)} (Matrix.{u1, u1, u3} ι ι R) (fun (x : Matrix.{u1, u1, u3} ι ι R) => Membership.mem.{max u1 u3, max u1 u3} (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.{u3, max u3 u1} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (SetLike.instMembership.{max u1 u3, max u1 u3} (Subalgebra.{u3, max u3 u1} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))))) x (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (AddCommMonoid.toAddMonoid.{max u1 u3} (Subtype.{succ (max u1 u3)} (Matrix.{u1, u1, u3} ι ι R) (fun (x : Matrix.{u1, u1, u3} ι ι R) => Membership.mem.{max u1 u3, max u1 u3} (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.{u3, max u3 u1} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (SetLike.instMembership.{max u1 u3, max u1 u3} (Subalgebra.{u3, max u3 u1} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))))) x (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (NonUnitalNonAssocSemiring.toAddCommMonoid.{max u1 u3} (Subtype.{succ (max u1 u3)} (Matrix.{u1, u1, u3} ι ι R) (fun (x : Matrix.{u1, u1, u3} ι ι R) => Membership.mem.{max u1 u3, max u1 u3} (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.{u3, max u3 u1} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (SetLike.instMembership.{max u1 u3, max u1 u3} (Subalgebra.{u3, max u3 u1} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))))) x (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{max u1 u3} (Subtype.{succ (max u1 u3)} (Matrix.{u1, u1, u3} ι ι R) (fun (x : Matrix.{u1, u1, u3} ι ι R) => Membership.mem.{max u1 u3, max u1 u3} (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.{u3, max u3 u1} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (SetLike.instMembership.{max u1 u3, max u1 u3} (Subalgebra.{u3, max u3 u1} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))))) x (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (Semiring.toNonAssocSemiring.{max u1 u3} (Subtype.{succ (max u1 u3)} (Matrix.{u1, u1, u3} ι ι R) (fun (x : Matrix.{u1, u1, u3} ι ι R) => Membership.mem.{max u1 u3, max u1 u3} (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.{u3, max u3 u1} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (SetLike.instMembership.{max u1 u3, max u1 u3} (Subalgebra.{u3, max u3 u1} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))))) x (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (Subalgebra.toSemiring.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))) (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))))))) (DistribMulAction.toDistribSMul.{u3, max u1 u3} R (Subtype.{succ (max u1 u3)} (Matrix.{u1, u1, u3} ι ι R) (fun (x : Matrix.{u1, u1, u3} ι ι R) => Membership.mem.{max u1 u3, max u1 u3} (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.{u3, max u3 u1} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (SetLike.instMembership.{max u1 u3, max u1 u3} (Subalgebra.{u3, max u3 u1} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))))) x (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (AddCommMonoid.toAddMonoid.{max u1 u3} (Subtype.{succ (max u1 u3)} (Matrix.{u1, u1, u3} ι ι R) (fun (x : Matrix.{u1, u1, u3} ι ι R) => Membership.mem.{max u1 u3, max u1 u3} (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.{u3, max u3 u1} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (SetLike.instMembership.{max u1 u3, max u1 u3} (Subalgebra.{u3, max u3 u1} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))))) x (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (NonUnitalNonAssocSemiring.toAddCommMonoid.{max u1 u3} (Subtype.{succ (max u1 u3)} (Matrix.{u1, u1, u3} ι ι R) (fun (x : Matrix.{u1, u1, u3} ι ι R) => Membership.mem.{max u1 u3, max u1 u3} (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.{u3, max u3 u1} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (SetLike.instMembership.{max u1 u3, max u1 u3} (Subalgebra.{u3, max u3 u1} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))))) x (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{max u1 u3} (Subtype.{succ (max u1 u3)} (Matrix.{u1, u1, u3} ι ι R) (fun (x : Matrix.{u1, u1, u3} ι ι R) => Membership.mem.{max u1 u3, max u1 u3} (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.{u3, max u3 u1} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (SetLike.instMembership.{max u1 u3, max u1 u3} (Subalgebra.{u3, max u3 u1} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))))) x (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (Semiring.toNonAssocSemiring.{max u1 u3} (Subtype.{succ (max u1 u3)} (Matrix.{u1, u1, u3} ι ι R) (fun (x : Matrix.{u1, u1, u3} ι ι R) => Membership.mem.{max u1 u3, max u1 u3} (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.{u3, max u3 u1} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (SetLike.instMembership.{max u1 u3, max u1 u3} (Subalgebra.{u3, max u3 u1} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))))) x (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (Subalgebra.toSemiring.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))) (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))))))) (Module.toDistribMulAction.{u3, max u1 u3} R (Subtype.{succ (max u1 u3)} (Matrix.{u1, u1, u3} ι ι R) (fun (x : Matrix.{u1, u1, u3} ι ι R) => Membership.mem.{max u1 u3, max u1 u3} (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.{u3, max u3 u1} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (SetLike.instMembership.{max u1 u3, max u1 u3} (Subalgebra.{u3, max u3 u1} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))))) x (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{max u1 u3} (Subtype.{succ (max u1 u3)} (Matrix.{u1, u1, u3} ι ι R) (fun (x : Matrix.{u1, u1, u3} ι ι R) => Membership.mem.{max u1 u3, max u1 u3} (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.{u3, max u3 u1} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (SetLike.instMembership.{max u1 u3, max u1 u3} (Subalgebra.{u3, max u3 u1} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))))) x (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{max u1 u3} (Subtype.{succ (max u1 u3)} (Matrix.{u1, u1, u3} ι ι R) (fun (x : Matrix.{u1, u1, u3} ι ι R) => Membership.mem.{max u1 u3, max u1 u3} (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.{u3, max u3 u1} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (SetLike.instMembership.{max u1 u3, max u1 u3} (Subalgebra.{u3, max u3 u1} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))))) x (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (Semiring.toNonAssocSemiring.{max u1 u3} (Subtype.{succ (max u1 u3)} (Matrix.{u1, u1, u3} ι ι R) (fun (x : Matrix.{u1, u1, u3} ι ι R) => Membership.mem.{max u1 u3, max u1 u3} (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.{u3, max u3 u1} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (SetLike.instMembership.{max u1 u3, max u1 u3} (Subalgebra.{u3, max u3 u1} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))))) x (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (Subalgebra.toSemiring.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))) (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))))) (Algebra.toModule.{u3, max u1 u3} R (Subtype.{succ (max u1 u3)} (Matrix.{u1, u1, u3} ι ι R) (fun (x : Matrix.{u1, u1, u3} ι ι R) => Membership.mem.{max u1 u3, max u1 u3} (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.{u3, max u3 u1} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (SetLike.instMembership.{max u1 u3, max u1 u3} (Subalgebra.{u3, max u3 u1} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))))) x (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (CommRing.toCommSemiring.{u3} R _inst_3) (Subalgebra.toSemiring.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))) (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))) (Subalgebra.algebra.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))) (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))))))) (SMulZeroClass.toSMul.{u3, u2} R (Module.End.{u3, u2} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (AddMonoid.toZero.{u2} (Module.End.{u3, u2} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (AddCommMonoid.toAddMonoid.{u2} (Module.End.{u3, u2} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} (Module.End.{u3, u2} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} (Module.End.{u3, u2} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (Semiring.toNonAssocSemiring.{u2} (Module.End.{u3, u2} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (Module.End.semiring.{u3, u2} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4)))))) (DistribSMul.toSMulZeroClass.{u3, u2} R (Module.End.{u3, u2} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (AddMonoid.toAddZeroClass.{u2} (Module.End.{u3, u2} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (AddCommMonoid.toAddMonoid.{u2} (Module.End.{u3, u2} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} (Module.End.{u3, u2} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} (Module.End.{u3, u2} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (Semiring.toNonAssocSemiring.{u2} (Module.End.{u3, u2} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (Module.End.semiring.{u3, u2} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4)))))) (DistribMulAction.toDistribSMul.{u3, u2} R (Module.End.{u3, u2} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (AddCommMonoid.toAddMonoid.{u2} (Module.End.{u3, u2} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} (Module.End.{u3, u2} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} (Module.End.{u3, u2} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (Semiring.toNonAssocSemiring.{u2} (Module.End.{u3, u2} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (Module.End.semiring.{u3, u2} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4))))) (Module.toDistribMulAction.{u3, u2} R (Module.End.{u3, u2} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} (Module.End.{u3, u2} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} (Module.End.{u3, u2} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (Semiring.toNonAssocSemiring.{u2} (Module.End.{u3, u2} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (Module.End.semiring.{u3, u2} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4)))) (Algebra.toModule.{u3, u2} R (Module.End.{u3, u2} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (CommRing.toCommSemiring.{u3} R _inst_3) (Module.End.semiring.{u3, u2} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (Module.instAlgebraEndToSemiringSemiring.{u3, u2} R M (CommRing.toCommSemiring.{u3} R _inst_3) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4)))))) (DistribMulActionHomClass.toSMulHomClass.{max (max u1 u2) u3, u3, max u1 u3, u2} (AlgHom.{u3, max u1 u3, u2} R (Subtype.{succ (max u1 u3)} (Matrix.{u1, u1, u3} ι ι R) (fun (x : Matrix.{u1, u1, u3} ι ι R) => Membership.mem.{max u1 u3, max u1 u3} (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.{u3, max u3 u1} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (SetLike.instMembership.{max u1 u3, max u1 u3} (Subalgebra.{u3, max u3 u1} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))))) x (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (Module.End.{u3, u2} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (CommRing.toCommSemiring.{u3} R _inst_3) (Subalgebra.toSemiring.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))) (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))) (Module.End.semiring.{u3, u2} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (Subalgebra.algebra.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))) (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))) (Module.instAlgebraEndToSemiringSemiring.{u3, u2} R M (CommRing.toCommSemiring.{u3} R _inst_3) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4)) R (Subtype.{succ (max u1 u3)} (Matrix.{u1, u1, u3} ι ι R) (fun (x : Matrix.{u1, u1, u3} ι ι R) => Membership.mem.{max u1 u3, max u1 u3} (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.{u3, max u3 u1} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (SetLike.instMembership.{max u1 u3, max u1 u3} (Subalgebra.{u3, max u3 u1} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))))) x (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (Module.End.{u3, u2} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (AddCommMonoid.toAddMonoid.{max u1 u3} (Subtype.{succ (max u1 u3)} (Matrix.{u1, u1, u3} ι ι R) (fun (x : Matrix.{u1, u1, u3} ι ι R) => Membership.mem.{max u1 u3, max u1 u3} (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.{u3, max u3 u1} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (SetLike.instMembership.{max u1 u3, max u1 u3} (Subalgebra.{u3, max u3 u1} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))))) x (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (NonUnitalNonAssocSemiring.toAddCommMonoid.{max u1 u3} (Subtype.{succ (max u1 u3)} (Matrix.{u1, u1, u3} ι ι R) (fun (x : Matrix.{u1, u1, u3} ι ι R) => Membership.mem.{max u1 u3, max u1 u3} (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.{u3, max u3 u1} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (SetLike.instMembership.{max u1 u3, max u1 u3} (Subalgebra.{u3, max u3 u1} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))))) x (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{max u1 u3} (Subtype.{succ (max u1 u3)} (Matrix.{u1, u1, u3} ι ι R) (fun (x : Matrix.{u1, u1, u3} ι ι R) => Membership.mem.{max u1 u3, max u1 u3} (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.{u3, max u3 u1} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (SetLike.instMembership.{max u1 u3, max u1 u3} (Subalgebra.{u3, max u3 u1} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))))) x (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (Semiring.toNonAssocSemiring.{max u1 u3} (Subtype.{succ (max u1 u3)} (Matrix.{u1, u1, u3} ι ι R) (fun (x : Matrix.{u1, u1, u3} ι ι R) => Membership.mem.{max u1 u3, max u1 u3} (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.{u3, max u3 u1} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (SetLike.instMembership.{max u1 u3, max u1 u3} (Subalgebra.{u3, max u3 u1} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))))) x (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (Subalgebra.toSemiring.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))) (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))))))) (AddCommMonoid.toAddMonoid.{u2} (Module.End.{u3, u2} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} (Module.End.{u3, u2} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} (Module.End.{u3, u2} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (Semiring.toNonAssocSemiring.{u2} (Module.End.{u3, u2} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (Module.End.semiring.{u3, u2} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4))))) (Module.toDistribMulAction.{u3, max u1 u3} R (Subtype.{succ (max u1 u3)} (Matrix.{u1, u1, u3} ι ι R) (fun (x : Matrix.{u1, u1, u3} ι ι R) => Membership.mem.{max u1 u3, max u1 u3} (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.{u3, max u3 u1} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (SetLike.instMembership.{max u1 u3, max u1 u3} (Subalgebra.{u3, max u3 u1} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))))) x (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{max u1 u3} (Subtype.{succ (max u1 u3)} (Matrix.{u1, u1, u3} ι ι R) (fun (x : Matrix.{u1, u1, u3} ι ι R) => Membership.mem.{max u1 u3, max u1 u3} (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.{u3, max u3 u1} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (SetLike.instMembership.{max u1 u3, max u1 u3} (Subalgebra.{u3, max u3 u1} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))))) x (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{max u1 u3} (Subtype.{succ (max u1 u3)} (Matrix.{u1, u1, u3} ι ι R) (fun (x : Matrix.{u1, u1, u3} ι ι R) => Membership.mem.{max u1 u3, max u1 u3} (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.{u3, max u3 u1} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (SetLike.instMembership.{max u1 u3, max u1 u3} (Subalgebra.{u3, max u3 u1} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))))) x (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (Semiring.toNonAssocSemiring.{max u1 u3} (Subtype.{succ (max u1 u3)} (Matrix.{u1, u1, u3} ι ι R) (fun (x : Matrix.{u1, u1, u3} ι ι R) => Membership.mem.{max u1 u3, max u1 u3} (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.{u3, max u3 u1} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (SetLike.instMembership.{max u1 u3, max u1 u3} (Subalgebra.{u3, max u3 u1} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))))) x (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (Subalgebra.toSemiring.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))) (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))))) (Algebra.toModule.{u3, max u1 u3} R (Subtype.{succ (max u1 u3)} (Matrix.{u1, u1, u3} ι ι R) (fun (x : Matrix.{u1, u1, u3} ι ι R) => Membership.mem.{max u1 u3, max u1 u3} (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.{u3, max u3 u1} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (SetLike.instMembership.{max u1 u3, max u1 u3} (Subalgebra.{u3, max u3 u1} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))))) x (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (CommRing.toCommSemiring.{u3} R _inst_3) (Subalgebra.toSemiring.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))) (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))) (Subalgebra.algebra.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))) (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))))) (Module.toDistribMulAction.{u3, u2} R (Module.End.{u3, u2} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} (Module.End.{u3, u2} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} (Module.End.{u3, u2} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (Semiring.toNonAssocSemiring.{u2} (Module.End.{u3, u2} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (Module.End.semiring.{u3, u2} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4)))) (Algebra.toModule.{u3, u2} R (Module.End.{u3, u2} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (CommRing.toCommSemiring.{u3} R _inst_3) (Module.End.semiring.{u3, u2} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (Module.instAlgebraEndToSemiringSemiring.{u3, u2} R M (CommRing.toCommSemiring.{u3} R _inst_3) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4))) (NonUnitalAlgHomClass.toDistribMulActionHomClass.{max (max u1 u2) u3, u3, max u1 u3, u2} (AlgHom.{u3, max u1 u3, u2} R (Subtype.{succ (max u1 u3)} (Matrix.{u1, u1, u3} ι ι R) (fun (x : Matrix.{u1, u1, u3} ι ι R) => Membership.mem.{max u1 u3, max u1 u3} (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.{u3, max u3 u1} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (SetLike.instMembership.{max u1 u3, max u1 u3} (Subalgebra.{u3, max u3 u1} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))))) x (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (Module.End.{u3, u2} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (CommRing.toCommSemiring.{u3} R _inst_3) (Subalgebra.toSemiring.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))) (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))) (Module.End.semiring.{u3, u2} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (Subalgebra.algebra.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))) (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))) (Module.instAlgebraEndToSemiringSemiring.{u3, u2} R M (CommRing.toCommSemiring.{u3} R _inst_3) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4)) R (Subtype.{succ (max u1 u3)} (Matrix.{u1, u1, u3} ι ι R) (fun (x : Matrix.{u1, u1, u3} ι ι R) => Membership.mem.{max u1 u3, max u1 u3} (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.{u3, max u3 u1} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (SetLike.instMembership.{max u1 u3, max u1 u3} (Subalgebra.{u3, max u3 u1} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))))) x (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (Module.End.{u3, u2} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{max u1 u3} (Subtype.{succ (max u1 u3)} (Matrix.{u1, u1, u3} ι ι R) (fun (x : Matrix.{u1, u1, u3} ι ι R) => Membership.mem.{max u1 u3, max u1 u3} (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.{u3, max u3 u1} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (SetLike.instMembership.{max u1 u3, max u1 u3} (Subalgebra.{u3, max u3 u1} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))))) x (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (Semiring.toNonAssocSemiring.{max u1 u3} (Subtype.{succ (max u1 u3)} (Matrix.{u1, u1, u3} ι ι R) (fun (x : Matrix.{u1, u1, u3} ι ι R) => Membership.mem.{max u1 u3, max u1 u3} (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.{u3, max u3 u1} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (SetLike.instMembership.{max u1 u3, max u1 u3} (Subalgebra.{u3, max u3 u1} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))))) x (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (Subalgebra.toSemiring.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))) (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))))) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} (Module.End.{u3, u2} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (Semiring.toNonAssocSemiring.{u2} (Module.End.{u3, u2} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (Module.End.semiring.{u3, u2} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4))) (Module.toDistribMulAction.{u3, max u1 u3} R (Subtype.{succ (max u1 u3)} (Matrix.{u1, u1, u3} ι ι R) (fun (x : Matrix.{u1, u1, u3} ι ι R) => Membership.mem.{max u1 u3, max u1 u3} (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.{u3, max u3 u1} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (SetLike.instMembership.{max u1 u3, max u1 u3} (Subalgebra.{u3, max u3 u1} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))))) x (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{max u1 u3} (Subtype.{succ (max u1 u3)} (Matrix.{u1, u1, u3} ι ι R) (fun (x : Matrix.{u1, u1, u3} ι ι R) => Membership.mem.{max u1 u3, max u1 u3} (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.{u3, max u3 u1} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (SetLike.instMembership.{max u1 u3, max u1 u3} (Subalgebra.{u3, max u3 u1} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))))) x (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{max u1 u3} (Subtype.{succ (max u1 u3)} (Matrix.{u1, u1, u3} ι ι R) (fun (x : Matrix.{u1, u1, u3} ι ι R) => Membership.mem.{max u1 u3, max u1 u3} (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.{u3, max u3 u1} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (SetLike.instMembership.{max u1 u3, max u1 u3} (Subalgebra.{u3, max u3 u1} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))))) x (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (Semiring.toNonAssocSemiring.{max u1 u3} (Subtype.{succ (max u1 u3)} (Matrix.{u1, u1, u3} ι ι R) (fun (x : Matrix.{u1, u1, u3} ι ι R) => Membership.mem.{max u1 u3, max u1 u3} (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.{u3, max u3 u1} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (SetLike.instMembership.{max u1 u3, max u1 u3} (Subalgebra.{u3, max u3 u1} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))))) x (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (Subalgebra.toSemiring.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))) (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))))) (Algebra.toModule.{u3, max u1 u3} R (Subtype.{succ (max u1 u3)} (Matrix.{u1, u1, u3} ι ι R) (fun (x : Matrix.{u1, u1, u3} ι ι R) => Membership.mem.{max u1 u3, max u1 u3} (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.{u3, max u3 u1} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (SetLike.instMembership.{max u1 u3, max u1 u3} (Subalgebra.{u3, max u3 u1} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))))) x (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (CommRing.toCommSemiring.{u3} R _inst_3) (Subalgebra.toSemiring.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))) (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))) (Subalgebra.algebra.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))) (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))))) (Module.toDistribMulAction.{u3, u2} R (Module.End.{u3, u2} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} (Module.End.{u3, u2} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} (Module.End.{u3, u2} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (Semiring.toNonAssocSemiring.{u2} (Module.End.{u3, u2} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (Module.End.semiring.{u3, u2} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4)))) (Algebra.toModule.{u3, u2} R (Module.End.{u3, u2} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (CommRing.toCommSemiring.{u3} R _inst_3) (Module.End.semiring.{u3, u2} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (Module.instAlgebraEndToSemiringSemiring.{u3, u2} R M (CommRing.toCommSemiring.{u3} R _inst_3) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4))) (AlgHom.instNonUnitalAlgHomClassToMonoidToMonoidWithZeroToSemiringToNonUnitalNonAssocSemiringToNonAssocSemiringToNonUnitalNonAssocSemiringToNonAssocSemiringToDistribMulActionToAddCommMonoidToModuleToDistribMulActionToAddCommMonoidToModule.{u3, max u1 u3, u2, max (max u1 u2) u3} R (Subtype.{succ (max u1 u3)} (Matrix.{u1, u1, u3} ι ι R) (fun (x : Matrix.{u1, u1, u3} ι ι R) => Membership.mem.{max u1 u3, max u1 u3} (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.{u3, max u3 u1} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (SetLike.instMembership.{max u1 u3, max u1 u3} (Subalgebra.{u3, max u3 u1} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))))) x (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (Module.End.{u3, u2} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (CommRing.toCommSemiring.{u3} R _inst_3) (Subalgebra.toSemiring.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))) (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))) (Module.End.semiring.{u3, u2} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (Subalgebra.algebra.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))) (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))) (Module.instAlgebraEndToSemiringSemiring.{u3, u2} R M (CommRing.toCommSemiring.{u3} R _inst_3) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (AlgHom.{u3, max u1 u3, u2} R (Subtype.{succ (max u1 u3)} (Matrix.{u1, u1, u3} ι ι R) (fun (x : Matrix.{u1, u1, u3} ι ι R) => Membership.mem.{max u1 u3, max u1 u3} (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.{u3, max u3 u1} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (SetLike.instMembership.{max u1 u3, max u1 u3} (Subalgebra.{u3, max u3 u1} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))))) x (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (Module.End.{u3, u2} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (CommRing.toCommSemiring.{u3} R _inst_3) (Subalgebra.toSemiring.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))) (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))) (Module.End.semiring.{u3, u2} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (Subalgebra.algebra.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))) (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))) (Module.instAlgebraEndToSemiringSemiring.{u3, u2} R M (CommRing.toCommSemiring.{u3} R _inst_3) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4)) (AlgHom.algHomClass.{u3, max u1 u3, u2} R (Subtype.{succ (max u1 u3)} (Matrix.{u1, u1, u3} ι ι R) (fun (x : Matrix.{u1, u1, u3} ι ι R) => Membership.mem.{max u1 u3, max u1 u3} (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.{u3, max u3 u1} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (SetLike.instMembership.{max u1 u3, max u1 u3} (Subalgebra.{u3, max u3 u1} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))))) x (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (Module.End.{u3, u2} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (CommRing.toCommSemiring.{u3} R _inst_3) (Subalgebra.toSemiring.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))) (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))) (Module.End.semiring.{u3, u2} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (Subalgebra.algebra.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))) (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))) (Module.instAlgebraEndToSemiringSemiring.{u3, u2} R M (CommRing.toCommSemiring.{u3} R _inst_3) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4)))))) (Matrix.isRepresentation.toEnd.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b hb (fun (a : ι) (b : ι) => _inst_5 a b)) M_1) f) (forall (i : ι) (j : ι), Membership.mem.{u3, u3} R (Ideal.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))) (SetLike.instMembership.{u3, u3} (Ideal.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))) R (Submodule.setLike.{u3, u3} R R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))))) (Semiring.toModule.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))))) (Subtype.val.{max (succ u1) (succ u3)} (Matrix.{u1, u1, u3} ι ι R) (fun (x : Matrix.{u1, u1, u3} ι ι R) => Membership.mem.{max u1 u3, max u1 u3} (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.{u3, max u3 u1} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (SetLike.instMembership.{max u1 u3, max u1 u3} (Subalgebra.{u3, max u3 u1} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))))) x (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))) M_1 i j) I)))
+<too large>
Case conversion may be inaccurate. Consider using '#align matrix.is_representation.to_End_exists_mem_ideal Matrix.isRepresentation.toEnd_exists_mem_idealₓ'. -/
theorem Matrix.isRepresentation.toEnd_exists_mem_ideal (f : Module.End R M) (I : Ideal R)
(hI : f.range ≤ I • ⊤) : ∃ M, Matrix.isRepresentation.toEnd R b hb M = f ∧ ∀ i j, M.1 i j ∈ I :=
@@ -341,10 +299,7 @@ theorem Matrix.isRepresentation.toEnd_exists_mem_ideal (f : Module.End R M) (I :
#align matrix.is_representation.to_End_exists_mem_ideal Matrix.isRepresentation.toEnd_exists_mem_ideal
/- warning: matrix.is_representation.to_End_surjective -> Matrix.isRepresentation.toEnd_surjective is a dubious translation:
-lean 3 declaration is
- forall {ι : Type.{u1}} [_inst_1 : Fintype.{u1} ι] {M : Type.{u2}} [_inst_2 : AddCommGroup.{u2} M] (R : Type.{u3}) [_inst_3 : CommRing.{u3} R] [_inst_4 : Module.{u3, u2} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2)] (b : ι -> M) (hb : Eq.{succ u2} (Submodule.{u3, u2} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (Submodule.span.{u3, u2} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4 (Set.range.{u2, succ u1} M ι b)) (Top.top.{u2} (Submodule.{u3, u2} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (Submodule.hasTop.{u3, u2} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4))) [_inst_5 : DecidableEq.{succ u1} ι], Function.Surjective.{succ (max u1 u3), succ u2} (coeSort.{succ (max u1 u3), succ (succ (max u1 u3))} (Subalgebra.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b) a b)) (Matrix.algebra.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b) a b) (CommRing.toCommSemiring.{u3} R _inst_3) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) Type.{max u1 u3} (SetLike.hasCoeToSort.{max u1 u3, max u1 u3} (Subalgebra.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b) a b)) (Matrix.algebra.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b) a b) (CommRing.toCommSemiring.{u3} R _inst_3) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.setLike.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b) a b)) (Matrix.algebra.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b) a b) (CommRing.toCommSemiring.{u3} R _inst_3) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))))) (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b))) (Module.End.{u3, u2} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (coeFn.{max (succ (max u1 u3)) (succ u2), max (succ (max u1 u3)) (succ u2)} (AlgHom.{u3, max u1 u3, u2} R (coeSort.{succ (max u1 u3), succ (succ (max u1 u3))} (Subalgebra.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b) a b)) (Matrix.algebra.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b) a b) (CommRing.toCommSemiring.{u3} R _inst_3) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) Type.{max u1 u3} (SetLike.hasCoeToSort.{max u1 u3, max u1 u3} (Subalgebra.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b) a b)) (Matrix.algebra.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b) a b) (CommRing.toCommSemiring.{u3} R _inst_3) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.setLike.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b) a b)) (Matrix.algebra.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b) a b) (CommRing.toCommSemiring.{u3} R _inst_3) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))))) (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b))) (Module.End.{u3, u2} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (CommRing.toCommSemiring.{u3} R _inst_3) (Subalgebra.toSemiring.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b) a b)) (Matrix.algebra.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b) a b) (CommRing.toCommSemiring.{u3} R _inst_3) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))) (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b))) (Module.End.semiring.{u3, u2} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (Subalgebra.algebra.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b) a b)) (Matrix.algebra.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b) a b) (CommRing.toCommSemiring.{u3} R _inst_3) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))) (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b))) (Module.End.algebra.{u3, u2} R M (CommRing.toCommSemiring.{u3} R _inst_3) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4)) (fun (_x : AlgHom.{u3, max u1 u3, u2} R (coeSort.{succ (max u1 u3), succ (succ (max u1 u3))} (Subalgebra.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b) a b)) (Matrix.algebra.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b) a b) (CommRing.toCommSemiring.{u3} R _inst_3) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) Type.{max u1 u3} (SetLike.hasCoeToSort.{max u1 u3, max u1 u3} (Subalgebra.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b) a b)) (Matrix.algebra.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b) a b) (CommRing.toCommSemiring.{u3} R _inst_3) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.setLike.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b) a b)) (Matrix.algebra.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b) a b) (CommRing.toCommSemiring.{u3} R _inst_3) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))))) (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b))) (Module.End.{u3, u2} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (CommRing.toCommSemiring.{u3} R _inst_3) (Subalgebra.toSemiring.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b) a b)) (Matrix.algebra.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b) a b) (CommRing.toCommSemiring.{u3} R _inst_3) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))) (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b))) (Module.End.semiring.{u3, u2} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (Subalgebra.algebra.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b) a b)) (Matrix.algebra.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b) a b) (CommRing.toCommSemiring.{u3} R _inst_3) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))) (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b))) (Module.End.algebra.{u3, u2} R M (CommRing.toCommSemiring.{u3} R _inst_3) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4)) => (coeSort.{succ (max u1 u3), succ (succ (max u1 u3))} (Subalgebra.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b) a b)) (Matrix.algebra.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b) a b) (CommRing.toCommSemiring.{u3} R _inst_3) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) Type.{max u1 u3} (SetLike.hasCoeToSort.{max u1 u3, max u1 u3} (Subalgebra.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b) a b)) (Matrix.algebra.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b) a b) (CommRing.toCommSemiring.{u3} R _inst_3) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.setLike.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b) a b)) (Matrix.algebra.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b) a b) (CommRing.toCommSemiring.{u3} R _inst_3) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))))) (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b))) -> (Module.End.{u3, u2} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4)) ([anonymous].{u3, max u1 u3, u2} R (coeSort.{succ (max u1 u3), succ (succ (max u1 u3))} (Subalgebra.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b) a b)) (Matrix.algebra.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b) a b) (CommRing.toCommSemiring.{u3} R _inst_3) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) Type.{max u1 u3} (SetLike.hasCoeToSort.{max u1 u3, max u1 u3} (Subalgebra.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b) a b)) (Matrix.algebra.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b) a b) (CommRing.toCommSemiring.{u3} R _inst_3) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.setLike.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b) a b)) (Matrix.algebra.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b) a b) (CommRing.toCommSemiring.{u3} R _inst_3) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))))) (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b))) (Module.End.{u3, u2} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (CommRing.toCommSemiring.{u3} R _inst_3) (Subalgebra.toSemiring.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b) a b)) (Matrix.algebra.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b) a b) (CommRing.toCommSemiring.{u3} R _inst_3) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))) (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b))) (Module.End.semiring.{u3, u2} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (Subalgebra.algebra.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b) a b)) (Matrix.algebra.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b) a b) (CommRing.toCommSemiring.{u3} R _inst_3) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))) (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b))) (Module.End.algebra.{u3, u2} R M (CommRing.toCommSemiring.{u3} R _inst_3) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4)) (Matrix.isRepresentation.toEnd.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b hb (fun (a : ι) (b : ι) => _inst_5 a b)))
-but is expected to have type
- forall {ι : Type.{u3}} [_inst_1 : Fintype.{u3} ι] {M : Type.{u1}} [_inst_2 : AddCommGroup.{u1} M] (R : Type.{u2}) [_inst_3 : CommRing.{u2} R] [_inst_4 : Module.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2)] (b : ι -> M) (hb : Eq.{succ u1} (Submodule.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (Submodule.span.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4 (Set.range.{u1, succ u3} M ι b)) (Top.top.{u1} (Submodule.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (Submodule.instTopSubmodule.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4))) [_inst_5 : DecidableEq.{succ u3} ι], Function.Surjective.{max (succ u3) (succ u2), succ u1} (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (FunLike.coe.{max (max (succ u3) (succ u1)) (succ u2), max (succ u3) (succ u2), succ u1} (AlgHom.{u2, max u3 u2, u1} R (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (CommRing.toCommSemiring.{u2} R _inst_3) (Subalgebra.toSemiring.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))) (Module.End.semiring.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (Subalgebra.algebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))) (Module.instAlgebraEndToSemiringSemiring.{u2, u1} R M (CommRing.toCommSemiring.{u2} R _inst_3) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4)) (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (fun (_x : Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2187 : Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) => Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) _x) (SMulHomClass.toFunLike.{max (max u3 u1) u2, u2, max u3 u2, u1} (AlgHom.{u2, max u3 u2, u1} R (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (CommRing.toCommSemiring.{u2} R _inst_3) (Subalgebra.toSemiring.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))) (Module.End.semiring.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (Subalgebra.algebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))) (Module.instAlgebraEndToSemiringSemiring.{u2, u1} R M (CommRing.toCommSemiring.{u2} R _inst_3) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4)) R (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (SMulZeroClass.toSMul.{u2, max u3 u2} R (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (AddMonoid.toZero.{max u3 u2} (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (AddCommMonoid.toAddMonoid.{max u3 u2} (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (NonUnitalNonAssocSemiring.toAddCommMonoid.{max u3 u2} (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{max u3 u2} (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (Semiring.toNonAssocSemiring.{max u3 u2} (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (Subalgebra.toSemiring.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))))))) (DistribSMul.toSMulZeroClass.{u2, max u3 u2} R (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (AddMonoid.toAddZeroClass.{max u3 u2} (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (AddCommMonoid.toAddMonoid.{max u3 u2} (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (NonUnitalNonAssocSemiring.toAddCommMonoid.{max u3 u2} (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{max u3 u2} (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (Semiring.toNonAssocSemiring.{max u3 u2} (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (Subalgebra.toSemiring.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))))))) (DistribMulAction.toDistribSMul.{u2, max u3 u2} R (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (AddCommMonoid.toAddMonoid.{max u3 u2} (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (NonUnitalNonAssocSemiring.toAddCommMonoid.{max u3 u2} (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{max u3 u2} (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (Semiring.toNonAssocSemiring.{max u3 u2} (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (Subalgebra.toSemiring.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))))))) (Module.toDistribMulAction.{u2, max u3 u2} R (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{max u3 u2} (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{max u3 u2} (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (Semiring.toNonAssocSemiring.{max u3 u2} (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (Subalgebra.toSemiring.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))))) (Algebra.toModule.{u2, max u3 u2} R (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (CommRing.toCommSemiring.{u2} R _inst_3) (Subalgebra.toSemiring.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))) (Subalgebra.algebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))))))) (SMulZeroClass.toSMul.{u2, u1} R (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (AddMonoid.toZero.{u1} (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (AddCommMonoid.toAddMonoid.{u1} (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (Semiring.toNonAssocSemiring.{u1} (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (Module.End.semiring.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4)))))) (DistribSMul.toSMulZeroClass.{u2, u1} R (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (AddMonoid.toAddZeroClass.{u1} (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (AddCommMonoid.toAddMonoid.{u1} (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (Semiring.toNonAssocSemiring.{u1} (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (Module.End.semiring.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4)))))) (DistribMulAction.toDistribSMul.{u2, u1} R (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (AddCommMonoid.toAddMonoid.{u1} (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (Semiring.toNonAssocSemiring.{u1} (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (Module.End.semiring.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4))))) (Module.toDistribMulAction.{u2, u1} R (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (Semiring.toNonAssocSemiring.{u1} (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (Module.End.semiring.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4)))) (Algebra.toModule.{u2, u1} R (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (CommRing.toCommSemiring.{u2} R _inst_3) (Module.End.semiring.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (Module.instAlgebraEndToSemiringSemiring.{u2, u1} R M (CommRing.toCommSemiring.{u2} R _inst_3) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4)))))) (DistribMulActionHomClass.toSMulHomClass.{max (max u3 u1) u2, u2, max u3 u2, u1} (AlgHom.{u2, max u3 u2, u1} R (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (CommRing.toCommSemiring.{u2} R _inst_3) (Subalgebra.toSemiring.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))) (Module.End.semiring.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (Subalgebra.algebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))) (Module.instAlgebraEndToSemiringSemiring.{u2, u1} R M (CommRing.toCommSemiring.{u2} R _inst_3) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4)) R (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (AddCommMonoid.toAddMonoid.{max u3 u2} (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (NonUnitalNonAssocSemiring.toAddCommMonoid.{max u3 u2} (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{max u3 u2} (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (Semiring.toNonAssocSemiring.{max u3 u2} (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (Subalgebra.toSemiring.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))))))) (AddCommMonoid.toAddMonoid.{u1} (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (Semiring.toNonAssocSemiring.{u1} (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (Module.End.semiring.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4))))) (Module.toDistribMulAction.{u2, max u3 u2} R (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{max u3 u2} (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{max u3 u2} (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (Semiring.toNonAssocSemiring.{max u3 u2} (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (Subalgebra.toSemiring.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))))) (Algebra.toModule.{u2, max u3 u2} R (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (CommRing.toCommSemiring.{u2} R _inst_3) (Subalgebra.toSemiring.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))) (Subalgebra.algebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))))) (Module.toDistribMulAction.{u2, u1} R (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (Semiring.toNonAssocSemiring.{u1} (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (Module.End.semiring.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4)))) (Algebra.toModule.{u2, u1} R (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (CommRing.toCommSemiring.{u2} R _inst_3) (Module.End.semiring.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (Module.instAlgebraEndToSemiringSemiring.{u2, u1} R M (CommRing.toCommSemiring.{u2} R _inst_3) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4))) (NonUnitalAlgHomClass.toDistribMulActionHomClass.{max (max u3 u1) u2, u2, max u3 u2, u1} (AlgHom.{u2, max u3 u2, u1} R (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (CommRing.toCommSemiring.{u2} R _inst_3) (Subalgebra.toSemiring.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))) (Module.End.semiring.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (Subalgebra.algebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))) (Module.instAlgebraEndToSemiringSemiring.{u2, u1} R M (CommRing.toCommSemiring.{u2} R _inst_3) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4)) R (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{max u3 u2} (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (Semiring.toNonAssocSemiring.{max u3 u2} (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (Subalgebra.toSemiring.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))))) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (Semiring.toNonAssocSemiring.{u1} (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (Module.End.semiring.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4))) (Module.toDistribMulAction.{u2, max u3 u2} R (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{max u3 u2} (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{max u3 u2} (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (Semiring.toNonAssocSemiring.{max u3 u2} (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (Subalgebra.toSemiring.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))))) (Algebra.toModule.{u2, max u3 u2} R (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (CommRing.toCommSemiring.{u2} R _inst_3) (Subalgebra.toSemiring.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))) (Subalgebra.algebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))))) (Module.toDistribMulAction.{u2, u1} R (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (Semiring.toNonAssocSemiring.{u1} (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (Module.End.semiring.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4)))) (Algebra.toModule.{u2, u1} R (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (CommRing.toCommSemiring.{u2} R _inst_3) (Module.End.semiring.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (Module.instAlgebraEndToSemiringSemiring.{u2, u1} R M (CommRing.toCommSemiring.{u2} R _inst_3) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4))) (AlgHom.instNonUnitalAlgHomClassToMonoidToMonoidWithZeroToSemiringToNonUnitalNonAssocSemiringToNonAssocSemiringToNonUnitalNonAssocSemiringToNonAssocSemiringToDistribMulActionToAddCommMonoidToModuleToDistribMulActionToAddCommMonoidToModule.{u2, max u3 u2, u1, max (max u3 u1) u2} R (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (CommRing.toCommSemiring.{u2} R _inst_3) (Subalgebra.toSemiring.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))) (Module.End.semiring.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (Subalgebra.algebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))) (Module.instAlgebraEndToSemiringSemiring.{u2, u1} R M (CommRing.toCommSemiring.{u2} R _inst_3) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (AlgHom.{u2, max u3 u2, u1} R (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (CommRing.toCommSemiring.{u2} R _inst_3) (Subalgebra.toSemiring.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))) (Module.End.semiring.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (Subalgebra.algebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))) (Module.instAlgebraEndToSemiringSemiring.{u2, u1} R M (CommRing.toCommSemiring.{u2} R _inst_3) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4)) (AlgHom.algHomClass.{u2, max u3 u2, u1} R (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (CommRing.toCommSemiring.{u2} R _inst_3) (Subalgebra.toSemiring.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))) (Module.End.semiring.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (Subalgebra.algebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))) (Module.instAlgebraEndToSemiringSemiring.{u2, u1} R M (CommRing.toCommSemiring.{u2} R _inst_3) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4)))))) (Matrix.isRepresentation.toEnd.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b hb (fun (a : ι) (b : ι) => _inst_5 a b)))
+<too large>
Case conversion may be inaccurate. Consider using '#align matrix.is_representation.to_End_surjective Matrix.isRepresentation.toEnd_surjectiveₓ'. -/
theorem Matrix.isRepresentation.toEnd_surjective :
Function.Surjective (Matrix.isRepresentation.toEnd R b hb) :=
@@ -358,10 +313,7 @@ theorem Matrix.isRepresentation.toEnd_surjective :
end
/- warning: linear_map.exists_monic_and_coeff_mem_pow_and_aeval_eq_zero_of_range_le_smul -> LinearMap.exists_monic_and_coeff_mem_pow_and_aeval_eq_zero_of_range_le_smul is a dubious translation:
-lean 3 declaration is
- forall {M : Type.{u1}} [_inst_2 : AddCommGroup.{u1} M] (R : Type.{u2}) [_inst_3 : CommRing.{u2} R] [_inst_4 : Module.{u2, u1} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2)] [_inst_5 : Module.Finite.{u2, u1} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4] (f : Module.End.{u2, u1} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (I : Ideal.{u2} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_3))), (LE.le.{u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (Preorder.toHasLe.{u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (PartialOrder.toPreorder.{u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (SetLike.partialOrder.{u1, u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) M (Submodule.setLike.{u2, u1} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4)))) (LinearMap.range.{u2, u2, u1, u1, u1} R R M M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_3)) (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4 _inst_4 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_3)))) (Module.End.{u2, u1} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (LinearMap.semilinearMapClass.{u2, u2, u1, u1} R R M M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_3)) (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4 _inst_4 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_3))))) (RingHomSurjective.ids.{u2} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_3))) f) (SMul.smul.{u2, u1} (Ideal.{u2} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_3))) (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (Submodule.hasSMul'.{u2, u1} R M (CommRing.toCommSemiring.{u2} R _inst_3) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) I (Top.top.{u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (Submodule.hasTop.{u2, u1} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4)))) -> (Exists.{succ u2} (Polynomial.{u2} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_3))) (fun (p : Polynomial.{u2} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_3))) => And (Polynomial.Monic.{u2} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_3)) p) (And (forall (k : Nat), Membership.Mem.{u2, u2} R (Ideal.{u2} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_3))) (SetLike.hasMem.{u2, u2} (Ideal.{u2} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_3))) R (Submodule.setLike.{u2, u2} R R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_3)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_3))))) (Semiring.toModule.{u2} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_3))))) (Polynomial.coeff.{u2} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_3)) p k) (HPow.hPow.{u2, 0, u2} (Ideal.{u2} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_3))) Nat (Ideal.{u2} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_3))) (instHPow.{u2, 0} (Ideal.{u2} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_3))) Nat (Monoid.Pow.{u2} (Ideal.{u2} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_3))) (MonoidWithZero.toMonoid.{u2} (Ideal.{u2} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_3))) (Semiring.toMonoidWithZero.{u2} (Ideal.{u2} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_3))) (IdemSemiring.toSemiring.{u2} (Ideal.{u2} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_3))) (Submodule.idemSemiring.{u2, u2} R (CommRing.toCommSemiring.{u2} R _inst_3) R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))))))) I (HSub.hSub.{0, 0, 0} Nat Nat Nat (instHSub.{0} Nat Nat.hasSub) (Polynomial.natDegree.{u2} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_3)) p) k))) (Eq.{succ u1} (Module.End.{u2, u1} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (coeFn.{max (succ u2) (succ u1), max (succ u2) (succ u1)} (AlgHom.{u2, u2, u1} R (Polynomial.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (Module.End.{u2, u1} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (CommRing.toCommSemiring.{u2} R _inst_3) (Polynomial.semiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (Module.End.semiring.{u2, u1} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (Polynomial.algebraOfAlgebra.{u2, u2} R R (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (Module.End.algebra.{u2, u1} R M (CommRing.toCommSemiring.{u2} R _inst_3) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4)) (fun (_x : AlgHom.{u2, u2, u1} R (Polynomial.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (Module.End.{u2, u1} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (CommRing.toCommSemiring.{u2} R _inst_3) (Polynomial.semiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (Module.End.semiring.{u2, u1} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (Polynomial.algebraOfAlgebra.{u2, u2} R R (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (Module.End.algebra.{u2, u1} R M (CommRing.toCommSemiring.{u2} R _inst_3) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4)) => (Polynomial.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) -> (Module.End.{u2, u1} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4)) ([anonymous].{u2, u2, u1} R (Polynomial.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (Module.End.{u2, u1} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (CommRing.toCommSemiring.{u2} R _inst_3) (Polynomial.semiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (Module.End.semiring.{u2, u1} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (Polynomial.algebraOfAlgebra.{u2, u2} R R (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (Module.End.algebra.{u2, u1} R M (CommRing.toCommSemiring.{u2} R _inst_3) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4)) (Polynomial.aeval.{u2, u1} R (Module.End.{u2, u1} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (CommRing.toCommSemiring.{u2} R _inst_3) (Module.End.semiring.{u2, u1} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (Module.End.algebra.{u2, u1} R M (CommRing.toCommSemiring.{u2} R _inst_3) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) f) p) (OfNat.ofNat.{u1} (Module.End.{u2, u1} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) 0 (OfNat.mk.{u1} (Module.End.{u2, u1} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) 0 (Zero.zero.{u1} (Module.End.{u2, u1} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (LinearMap.hasZero.{u2, u2, u1, u1} R R M M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_3)) (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4 _inst_4 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_3))))))))))))
-but is expected to have type
- forall {M : Type.{u1}} [_inst_2 : AddCommGroup.{u1} M] (R : Type.{u2}) [_inst_3 : CommRing.{u2} R] [_inst_4 : Module.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2)] [_inst_5 : Module.Finite.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4] (f : Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (I : Ideal.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))), (LE.le.{u1} (Submodule.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (Preorder.toLE.{u1} (Submodule.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (PartialOrder.toPreorder.{u1} (Submodule.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (OmegaCompletePartialOrder.toPartialOrder.{u1} (Submodule.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (CompleteLattice.instOmegaCompletePartialOrder.{u1} (Submodule.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (Submodule.completeLattice.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4))))) (LinearMap.range.{u2, u2, u1, u1, u1} R R M M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4 _inst_4 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (LinearMap.semilinearMapClass.{u2, u2, u1, u1} R R M M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4 _inst_4 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) (RingHomSurjective.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) f) (HSMul.hSMul.{u2, u1, u1} (Ideal.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (Submodule.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (Submodule.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (instHSMul.{u2, u1} (Ideal.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (Submodule.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (Submodule.hasSMul'.{u2, u1} R M (CommRing.toCommSemiring.{u2} R _inst_3) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4)) I (Top.top.{u1} (Submodule.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (Submodule.instTopSubmodule.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4)))) -> (Exists.{succ u2} (Polynomial.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (fun (p : Polynomial.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) => And (Polynomial.Monic.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) p) (And (forall (k : Nat), Membership.mem.{u2, u2} R (Ideal.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (SetLike.instMembership.{u2, u2} (Ideal.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) R (Submodule.setLike.{u2, u2} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) (Semiring.toModule.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) (Polynomial.coeff.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) p k) (HPow.hPow.{u2, 0, u2} (Ideal.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) Nat (Ideal.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (instHPow.{u2, 0} (Ideal.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) Nat (Monoid.Pow.{u2} (Ideal.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (MonoidWithZero.toMonoid.{u2} (Ideal.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (Semiring.toMonoidWithZero.{u2} (Ideal.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (IdemSemiring.toSemiring.{u2} (Ideal.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (Submodule.idemSemiring.{u2, u2} R (CommRing.toCommSemiring.{u2} R _inst_3) R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))))))) I (HSub.hSub.{0, 0, 0} Nat Nat Nat (instHSub.{0} Nat instSubNat) (Polynomial.natDegree.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) p) k))) (Eq.{succ u1} ((fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2187 : Polynomial.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) => Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) p) (FunLike.coe.{max (succ u1) (succ u2), succ u2, succ u1} (AlgHom.{u2, u2, u1} R (Polynomial.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (CommRing.toCommSemiring.{u2} R _inst_3) (Polynomial.semiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (Module.End.semiring.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (Polynomial.algebraOfAlgebra.{u2, u2} R R (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (Module.instAlgebraEndToSemiringSemiring.{u2, u1} R M (CommRing.toCommSemiring.{u2} R _inst_3) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4)) (Polynomial.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (fun (_x : Polynomial.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2187 : Polynomial.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) => Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) _x) (SMulHomClass.toFunLike.{max u1 u2, u2, u2, u1} (AlgHom.{u2, u2, u1} R (Polynomial.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (CommRing.toCommSemiring.{u2} R _inst_3) (Polynomial.semiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (Module.End.semiring.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (Polynomial.algebraOfAlgebra.{u2, u2} R R (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (Module.instAlgebraEndToSemiringSemiring.{u2, u1} R M (CommRing.toCommSemiring.{u2} R _inst_3) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4)) R (Polynomial.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (SMulZeroClass.toSMul.{u2, u2} R (Polynomial.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (AddMonoid.toZero.{u2} (Polynomial.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (AddCommMonoid.toAddMonoid.{u2} (Polynomial.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} (Polynomial.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} (Polynomial.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (Semiring.toNonAssocSemiring.{u2} (Polynomial.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (Polynomial.semiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))))))) (DistribSMul.toSMulZeroClass.{u2, u2} R (Polynomial.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (AddMonoid.toAddZeroClass.{u2} (Polynomial.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (AddCommMonoid.toAddMonoid.{u2} (Polynomial.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} (Polynomial.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} (Polynomial.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (Semiring.toNonAssocSemiring.{u2} (Polynomial.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (Polynomial.semiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))))))) (DistribMulAction.toDistribSMul.{u2, u2} R (Polynomial.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (AddCommMonoid.toAddMonoid.{u2} (Polynomial.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} (Polynomial.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} (Polynomial.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (Semiring.toNonAssocSemiring.{u2} (Polynomial.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (Polynomial.semiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))))) (Module.toDistribMulAction.{u2, u2} R (Polynomial.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} (Polynomial.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} (Polynomial.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (Semiring.toNonAssocSemiring.{u2} (Polynomial.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (Polynomial.semiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))))) (Algebra.toModule.{u2, u2} R (Polynomial.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (CommRing.toCommSemiring.{u2} R _inst_3) (Polynomial.semiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (Polynomial.algebraOfAlgebra.{u2, u2} R R (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))))))) (SMulZeroClass.toSMul.{u2, u1} R (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (AddMonoid.toZero.{u1} (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (AddCommMonoid.toAddMonoid.{u1} (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (Semiring.toNonAssocSemiring.{u1} (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (Module.End.semiring.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4)))))) (DistribSMul.toSMulZeroClass.{u2, u1} R (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (AddMonoid.toAddZeroClass.{u1} (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (AddCommMonoid.toAddMonoid.{u1} (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (Semiring.toNonAssocSemiring.{u1} (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (Module.End.semiring.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4)))))) (DistribMulAction.toDistribSMul.{u2, u1} R (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (AddCommMonoid.toAddMonoid.{u1} (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (Semiring.toNonAssocSemiring.{u1} (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (Module.End.semiring.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4))))) (Module.toDistribMulAction.{u2, u1} R (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (Semiring.toNonAssocSemiring.{u1} (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (Module.End.semiring.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4)))) (Algebra.toModule.{u2, u1} R (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (CommRing.toCommSemiring.{u2} R _inst_3) (Module.End.semiring.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (Module.instAlgebraEndToSemiringSemiring.{u2, u1} R M (CommRing.toCommSemiring.{u2} R _inst_3) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4)))))) (DistribMulActionHomClass.toSMulHomClass.{max u1 u2, u2, u2, u1} (AlgHom.{u2, u2, u1} R (Polynomial.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (CommRing.toCommSemiring.{u2} R _inst_3) (Polynomial.semiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (Module.End.semiring.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (Polynomial.algebraOfAlgebra.{u2, u2} R R (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (Module.instAlgebraEndToSemiringSemiring.{u2, u1} R M (CommRing.toCommSemiring.{u2} R _inst_3) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4)) R (Polynomial.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (AddCommMonoid.toAddMonoid.{u2} (Polynomial.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} (Polynomial.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} (Polynomial.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (Semiring.toNonAssocSemiring.{u2} (Polynomial.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (Polynomial.semiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))))) (AddCommMonoid.toAddMonoid.{u1} (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (Semiring.toNonAssocSemiring.{u1} (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (Module.End.semiring.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4))))) (Module.toDistribMulAction.{u2, u2} R (Polynomial.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} (Polynomial.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} (Polynomial.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (Semiring.toNonAssocSemiring.{u2} (Polynomial.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (Polynomial.semiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))))) (Algebra.toModule.{u2, u2} R (Polynomial.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (CommRing.toCommSemiring.{u2} R _inst_3) (Polynomial.semiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (Polynomial.algebraOfAlgebra.{u2, u2} R R (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) (Module.toDistribMulAction.{u2, u1} R (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (Semiring.toNonAssocSemiring.{u1} (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (Module.End.semiring.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4)))) (Algebra.toModule.{u2, u1} R (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (CommRing.toCommSemiring.{u2} R _inst_3) (Module.End.semiring.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (Module.instAlgebraEndToSemiringSemiring.{u2, u1} R M (CommRing.toCommSemiring.{u2} R _inst_3) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4))) (NonUnitalAlgHomClass.toDistribMulActionHomClass.{max u1 u2, u2, u2, u1} (AlgHom.{u2, u2, u1} R (Polynomial.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (CommRing.toCommSemiring.{u2} R _inst_3) (Polynomial.semiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (Module.End.semiring.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (Polynomial.algebraOfAlgebra.{u2, u2} R R (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (Module.instAlgebraEndToSemiringSemiring.{u2, u1} R M (CommRing.toCommSemiring.{u2} R _inst_3) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4)) R (Polynomial.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} (Polynomial.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (Semiring.toNonAssocSemiring.{u2} (Polynomial.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (Polynomial.semiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (Semiring.toNonAssocSemiring.{u1} (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (Module.End.semiring.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4))) (Module.toDistribMulAction.{u2, u2} R (Polynomial.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} (Polynomial.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} (Polynomial.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (Semiring.toNonAssocSemiring.{u2} (Polynomial.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (Polynomial.semiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))))) (Algebra.toModule.{u2, u2} R (Polynomial.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (CommRing.toCommSemiring.{u2} R _inst_3) (Polynomial.semiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (Polynomial.algebraOfAlgebra.{u2, u2} R R (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) (Module.toDistribMulAction.{u2, u1} R (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (Semiring.toNonAssocSemiring.{u1} (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (Module.End.semiring.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4)))) (Algebra.toModule.{u2, u1} R (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (CommRing.toCommSemiring.{u2} R _inst_3) (Module.End.semiring.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (Module.instAlgebraEndToSemiringSemiring.{u2, u1} R M (CommRing.toCommSemiring.{u2} R _inst_3) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4))) (AlgHom.instNonUnitalAlgHomClassToMonoidToMonoidWithZeroToSemiringToNonUnitalNonAssocSemiringToNonAssocSemiringToNonUnitalNonAssocSemiringToNonAssocSemiringToDistribMulActionToAddCommMonoidToModuleToDistribMulActionToAddCommMonoidToModule.{u2, u2, u1, max u1 u2} R (Polynomial.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (CommRing.toCommSemiring.{u2} R _inst_3) (Polynomial.semiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (Module.End.semiring.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (Polynomial.algebraOfAlgebra.{u2, u2} R R (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (Module.instAlgebraEndToSemiringSemiring.{u2, u1} R M (CommRing.toCommSemiring.{u2} R _inst_3) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (AlgHom.{u2, u2, u1} R (Polynomial.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (CommRing.toCommSemiring.{u2} R _inst_3) (Polynomial.semiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (Module.End.semiring.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (Polynomial.algebraOfAlgebra.{u2, u2} R R (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (Module.instAlgebraEndToSemiringSemiring.{u2, u1} R M (CommRing.toCommSemiring.{u2} R _inst_3) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4)) (AlgHom.algHomClass.{u2, u2, u1} R (Polynomial.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (CommRing.toCommSemiring.{u2} R _inst_3) (Polynomial.semiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (Module.End.semiring.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (Polynomial.algebraOfAlgebra.{u2, u2} R R (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (Module.instAlgebraEndToSemiringSemiring.{u2, u1} R M (CommRing.toCommSemiring.{u2} R _inst_3) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4)))))) (Polynomial.aeval.{u2, u1} R (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (CommRing.toCommSemiring.{u2} R _inst_3) (Module.End.semiring.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (Module.instAlgebraEndToSemiringSemiring.{u2, u1} R M (CommRing.toCommSemiring.{u2} R _inst_3) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) f) p) (OfNat.ofNat.{u1} ((fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2187 : Polynomial.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) => Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) p) 0 (Zero.toOfNat0.{u1} ((fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2187 : Polynomial.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) => Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) p) (LinearMap.instZeroLinearMap.{u2, u2, u1, u1} R R M M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4 _inst_4 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))))))))))
+<too large>
Case conversion may be inaccurate. Consider using '#align linear_map.exists_monic_and_coeff_mem_pow_and_aeval_eq_zero_of_range_le_smul LinearMap.exists_monic_and_coeff_mem_pow_and_aeval_eq_zero_of_range_le_smulₓ'. -/
/-- The **Cayley-Hamilton Theorem** for f.g. modules over arbitrary rings states that for each
`R`-endomorphism `φ` of an `R`-module `M` such that `φ(M) ≤ I • M` for some ideal `I`, there
mathlib commit https://github.com/leanprover-community/mathlib/commit/8d33f09cd7089ecf074b4791907588245aec5d1b
@@ -51,7 +51,7 @@ def PiToModule.fromMatrix [DecidableEq ι] : Matrix ι ι R →ₗ[R] (ι → R)
lean 3 declaration is
forall {ι : Type.{u1}} [_inst_1 : Fintype.{u1} ι] {M : Type.{u2}} [_inst_2 : AddCommGroup.{u2} M] (R : Type.{u3}) [_inst_3 : CommRing.{u3} R] [_inst_4 : Module.{u3, u2} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2)] (b : ι -> M) [_inst_5 : DecidableEq.{succ u1} ι] (A : Matrix.{u1, u1, u3} ι ι R) (w : ι -> R), Eq.{succ u2} M (coeFn.{max (succ (max u1 u3)) (succ u2), max (succ (max u1 u3)) (succ u2)} (LinearMap.{u3, u3, max u1 u3, u2} R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) (ι -> R) M (Pi.addCommMonoid.{u1, u3} ι (fun (ᾰ : ι) => R) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} R (NonUnitalNonAssocRing.toAddCommGroup.{u3} R (NonAssocRing.toNonUnitalNonAssocRing.{u3} R (Ring.toNonAssocRing.{u3} R (CommRing.toRing.{u3} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (Pi.Function.module.{u1, u3, u3} ι R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u3} R (NonUnitalNonAssocRing.toAddCommGroup.{u3} R (NonAssocRing.toNonUnitalNonAssocRing.{u3} R (Ring.toNonAssocRing.{u3} R (CommRing.toRing.{u3} R _inst_3))))) (Semiring.toModule.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) _inst_4) (fun (_x : LinearMap.{u3, u3, max u1 u3, u2} R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) (ι -> R) M (Pi.addCommMonoid.{u1, u3} ι (fun (ᾰ : ι) => R) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} R (NonUnitalNonAssocRing.toAddCommGroup.{u3} R (NonAssocRing.toNonUnitalNonAssocRing.{u3} R (Ring.toNonAssocRing.{u3} R (CommRing.toRing.{u3} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (Pi.Function.module.{u1, u3, u3} ι R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u3} R (NonUnitalNonAssocRing.toAddCommGroup.{u3} R (NonAssocRing.toNonUnitalNonAssocRing.{u3} R (Ring.toNonAssocRing.{u3} R (CommRing.toRing.{u3} R _inst_3))))) (Semiring.toModule.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) _inst_4) => (ι -> R) -> M) (LinearMap.hasCoeToFun.{u3, u3, max u1 u3, u2} R R (ι -> R) M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Pi.addCommMonoid.{u1, u3} ι (fun (ᾰ : ι) => R) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} R (NonUnitalNonAssocRing.toAddCommGroup.{u3} R (NonAssocRing.toNonUnitalNonAssocRing.{u3} R (Ring.toNonAssocRing.{u3} R (CommRing.toRing.{u3} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (Pi.Function.module.{u1, u3, u3} ι R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u3} R (NonUnitalNonAssocRing.toAddCommGroup.{u3} R (NonAssocRing.toNonUnitalNonAssocRing.{u3} R (Ring.toNonAssocRing.{u3} R (CommRing.toRing.{u3} R _inst_3))))) (Semiring.toModule.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) _inst_4 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3))))) (coeFn.{max (succ (max u1 u3)) (succ (max (max u1 u3) u2)), max (succ (max u1 u3)) (succ (max (max u1 u3) u2))} (LinearMap.{u3, u3, max u1 u3, max (max u1 u3) u2} R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) (Matrix.{u1, u1, u3} ι ι R) (LinearMap.{u3, u3, max u1 u3, u2} R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) (ι -> R) M (Pi.addCommMonoid.{u1, u3} ι (fun (ᾰ : ι) => R) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} R (NonUnitalNonAssocRing.toAddCommGroup.{u3} R (NonAssocRing.toNonUnitalNonAssocRing.{u3} R (Ring.toNonAssocRing.{u3} R (CommRing.toRing.{u3} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (Pi.Function.module.{u1, u3, u3} ι R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u3} R (NonUnitalNonAssocRing.toAddCommGroup.{u3} R (NonAssocRing.toNonUnitalNonAssocRing.{u3} R (Ring.toNonAssocRing.{u3} R (CommRing.toRing.{u3} R _inst_3))))) (Semiring.toModule.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) _inst_4) (Matrix.addCommMonoid.{u3, u1, u1} ι ι R (AddCommGroup.toAddCommMonoid.{u3} R (NonUnitalNonAssocRing.toAddCommGroup.{u3} R (NonAssocRing.toNonUnitalNonAssocRing.{u3} R (Ring.toNonAssocRing.{u3} R (CommRing.toRing.{u3} R _inst_3)))))) (LinearMap.addCommMonoid.{u3, u3, max u1 u3, u2} R R (ι -> R) M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Pi.addCommMonoid.{u1, u3} ι (fun (ᾰ : ι) => R) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} R (NonUnitalNonAssocRing.toAddCommGroup.{u3} R (NonAssocRing.toNonUnitalNonAssocRing.{u3} R (Ring.toNonAssocRing.{u3} R (CommRing.toRing.{u3} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (Pi.Function.module.{u1, u3, u3} ι R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u3} R (NonUnitalNonAssocRing.toAddCommGroup.{u3} R (NonAssocRing.toNonUnitalNonAssocRing.{u3} R (Ring.toNonAssocRing.{u3} R (CommRing.toRing.{u3} R _inst_3))))) (Semiring.toModule.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) _inst_4 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3))))) (Matrix.module.{u3, u1, u1, u3} ι ι R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u3} R (NonUnitalNonAssocRing.toAddCommGroup.{u3} R (NonAssocRing.toNonUnitalNonAssocRing.{u3} R (Ring.toNonAssocRing.{u3} R (CommRing.toRing.{u3} R _inst_3))))) (Semiring.toModule.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) (LinearMap.module.{u3, u3, u3, max u1 u3, u2} R R R (ι -> R) M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Pi.addCommMonoid.{u1, u3} ι (fun (ᾰ : ι) => R) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} R (NonUnitalNonAssocRing.toAddCommGroup.{u3} R (NonAssocRing.toNonUnitalNonAssocRing.{u3} R (Ring.toNonAssocRing.{u3} R (CommRing.toRing.{u3} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (Pi.Function.module.{u1, u3, u3} ι R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u3} R (NonUnitalNonAssocRing.toAddCommGroup.{u3} R (NonAssocRing.toNonUnitalNonAssocRing.{u3} R (Ring.toNonAssocRing.{u3} R (CommRing.toRing.{u3} R _inst_3))))) (Semiring.toModule.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) _inst_4 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) _inst_4 (PiToModule.fromMatrix._proof_1.{u2, u3} M _inst_2 R _inst_3 _inst_4))) (fun (_x : LinearMap.{u3, u3, max u1 u3, max (max u1 u3) u2} R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) (Matrix.{u1, u1, u3} ι ι R) (LinearMap.{u3, u3, max u1 u3, u2} R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) (ι -> R) M (Pi.addCommMonoid.{u1, u3} ι (fun (ᾰ : ι) => R) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} R (NonUnitalNonAssocRing.toAddCommGroup.{u3} R (NonAssocRing.toNonUnitalNonAssocRing.{u3} R (Ring.toNonAssocRing.{u3} R (CommRing.toRing.{u3} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (Pi.Function.module.{u1, u3, u3} ι R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u3} R (NonUnitalNonAssocRing.toAddCommGroup.{u3} R (NonAssocRing.toNonUnitalNonAssocRing.{u3} R (Ring.toNonAssocRing.{u3} R (CommRing.toRing.{u3} R _inst_3))))) (Semiring.toModule.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) _inst_4) (Matrix.addCommMonoid.{u3, u1, u1} ι ι R (AddCommGroup.toAddCommMonoid.{u3} R (NonUnitalNonAssocRing.toAddCommGroup.{u3} R (NonAssocRing.toNonUnitalNonAssocRing.{u3} R (Ring.toNonAssocRing.{u3} R (CommRing.toRing.{u3} R _inst_3)))))) (LinearMap.addCommMonoid.{u3, u3, max u1 u3, u2} R R (ι -> R) M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Pi.addCommMonoid.{u1, u3} ι (fun (ᾰ : ι) => R) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} R (NonUnitalNonAssocRing.toAddCommGroup.{u3} R (NonAssocRing.toNonUnitalNonAssocRing.{u3} R (Ring.toNonAssocRing.{u3} R (CommRing.toRing.{u3} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (Pi.Function.module.{u1, u3, u3} ι R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u3} R (NonUnitalNonAssocRing.toAddCommGroup.{u3} R (NonAssocRing.toNonUnitalNonAssocRing.{u3} R (Ring.toNonAssocRing.{u3} R (CommRing.toRing.{u3} R _inst_3))))) (Semiring.toModule.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) _inst_4 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3))))) (Matrix.module.{u3, u1, u1, u3} ι ι R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u3} R (NonUnitalNonAssocRing.toAddCommGroup.{u3} R (NonAssocRing.toNonUnitalNonAssocRing.{u3} R (Ring.toNonAssocRing.{u3} R (CommRing.toRing.{u3} R _inst_3))))) (Semiring.toModule.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) (LinearMap.module.{u3, u3, u3, max u1 u3, u2} R R R (ι -> R) M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Pi.addCommMonoid.{u1, u3} ι (fun (ᾰ : ι) => R) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} R (NonUnitalNonAssocRing.toAddCommGroup.{u3} R (NonAssocRing.toNonUnitalNonAssocRing.{u3} R (Ring.toNonAssocRing.{u3} R (CommRing.toRing.{u3} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (Pi.Function.module.{u1, u3, u3} ι R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u3} R (NonUnitalNonAssocRing.toAddCommGroup.{u3} R (NonAssocRing.toNonUnitalNonAssocRing.{u3} R (Ring.toNonAssocRing.{u3} R (CommRing.toRing.{u3} R _inst_3))))) (Semiring.toModule.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) _inst_4 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) _inst_4 (PiToModule.fromMatrix._proof_1.{u2, u3} M _inst_2 R _inst_3 _inst_4))) => (Matrix.{u1, u1, u3} ι ι R) -> (LinearMap.{u3, u3, max u1 u3, u2} R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) (ι -> R) M (Pi.addCommMonoid.{u1, u3} ι (fun (ᾰ : ι) => R) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} R (NonUnitalNonAssocRing.toAddCommGroup.{u3} R (NonAssocRing.toNonUnitalNonAssocRing.{u3} R (Ring.toNonAssocRing.{u3} R (CommRing.toRing.{u3} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (Pi.Function.module.{u1, u3, u3} ι R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u3} R (NonUnitalNonAssocRing.toAddCommGroup.{u3} R (NonAssocRing.toNonUnitalNonAssocRing.{u3} R (Ring.toNonAssocRing.{u3} R (CommRing.toRing.{u3} R _inst_3))))) (Semiring.toModule.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) _inst_4)) (LinearMap.hasCoeToFun.{u3, u3, max u1 u3, max (max u1 u3) u2} R R (Matrix.{u1, u1, u3} ι ι R) (LinearMap.{u3, u3, max u1 u3, u2} R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) (ι -> R) M (Pi.addCommMonoid.{u1, u3} ι (fun (ᾰ : ι) => R) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} R (NonUnitalNonAssocRing.toAddCommGroup.{u3} R (NonAssocRing.toNonUnitalNonAssocRing.{u3} R (Ring.toNonAssocRing.{u3} R (CommRing.toRing.{u3} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (Pi.Function.module.{u1, u3, u3} ι R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u3} R (NonUnitalNonAssocRing.toAddCommGroup.{u3} R (NonAssocRing.toNonUnitalNonAssocRing.{u3} R (Ring.toNonAssocRing.{u3} R (CommRing.toRing.{u3} R _inst_3))))) (Semiring.toModule.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) _inst_4) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Matrix.addCommMonoid.{u3, u1, u1} ι ι R (AddCommGroup.toAddCommMonoid.{u3} R (NonUnitalNonAssocRing.toAddCommGroup.{u3} R (NonAssocRing.toNonUnitalNonAssocRing.{u3} R (Ring.toNonAssocRing.{u3} R (CommRing.toRing.{u3} R _inst_3)))))) (LinearMap.addCommMonoid.{u3, u3, max u1 u3, u2} R R (ι -> R) M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Pi.addCommMonoid.{u1, u3} ι (fun (ᾰ : ι) => R) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} R (NonUnitalNonAssocRing.toAddCommGroup.{u3} R (NonAssocRing.toNonUnitalNonAssocRing.{u3} R (Ring.toNonAssocRing.{u3} R (CommRing.toRing.{u3} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (Pi.Function.module.{u1, u3, u3} ι R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u3} R (NonUnitalNonAssocRing.toAddCommGroup.{u3} R (NonAssocRing.toNonUnitalNonAssocRing.{u3} R (Ring.toNonAssocRing.{u3} R (CommRing.toRing.{u3} R _inst_3))))) (Semiring.toModule.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) _inst_4 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3))))) (Matrix.module.{u3, u1, u1, u3} ι ι R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u3} R (NonUnitalNonAssocRing.toAddCommGroup.{u3} R (NonAssocRing.toNonUnitalNonAssocRing.{u3} R (Ring.toNonAssocRing.{u3} R (CommRing.toRing.{u3} R _inst_3))))) (Semiring.toModule.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) (LinearMap.module.{u3, u3, u3, max u1 u3, u2} R R R (ι -> R) M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Pi.addCommMonoid.{u1, u3} ι (fun (ᾰ : ι) => R) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} R (NonUnitalNonAssocRing.toAddCommGroup.{u3} R (NonAssocRing.toNonUnitalNonAssocRing.{u3} R (Ring.toNonAssocRing.{u3} R (CommRing.toRing.{u3} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (Pi.Function.module.{u1, u3, u3} ι R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u3} R (NonUnitalNonAssocRing.toAddCommGroup.{u3} R (NonAssocRing.toNonUnitalNonAssocRing.{u3} R (Ring.toNonAssocRing.{u3} R (CommRing.toRing.{u3} R _inst_3))))) (Semiring.toModule.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) _inst_4 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) _inst_4 (PiToModule.fromMatrix._proof_1.{u2, u3} M _inst_2 R _inst_3 _inst_4)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3))))) (PiToModule.fromMatrix.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)) A) w) (coeFn.{max (succ (max u1 u3)) (succ u2), max (succ (max u1 u3)) (succ u2)} (LinearMap.{u3, u3, max u1 u3, u2} R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) (ι -> R) M (Pi.addCommMonoid.{u1, u3} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (Pi.Function.module.{u1, u3, u3} ι R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3))))) (Semiring.toModule.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) _inst_4) (fun (_x : LinearMap.{u3, u3, max u1 u3, u2} R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) (ι -> R) M (Pi.addCommMonoid.{u1, u3} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (Pi.Function.module.{u1, u3, u3} ι R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3))))) (Semiring.toModule.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) _inst_4) => (ι -> R) -> M) (LinearMap.hasCoeToFun.{u3, u3, max u1 u3, u2} R R (ι -> R) M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Pi.addCommMonoid.{u1, u3} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (Pi.Function.module.{u1, u3, u3} ι R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3))))) (Semiring.toModule.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) _inst_4 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3))))) (coeFn.{max (succ (max u1 u2)) (succ (max (max u1 u3) u2)), max (succ (max u1 u2)) (succ (max (max u1 u3) u2))} (LinearMap.{u3, u3, max u1 u2, max (max u1 u3) u2} R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) (ι -> M) (LinearMap.{u3, u3, max u1 u3, u2} R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) (ι -> R) M (Pi.addCommMonoid.{u1, u3} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (Pi.Function.module.{u1, u3, u3} ι R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3))))) (Semiring.toModule.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) _inst_4) (Pi.addCommMonoid.{u1, u2} ι (fun (ᾰ : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u2} M _inst_2)) (LinearMap.addCommMonoid.{u3, u3, max u1 u3, u2} R R (ι -> R) M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Pi.addCommMonoid.{u1, u3} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (Pi.Function.module.{u1, u3, u3} ι R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3))))) (Semiring.toModule.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) _inst_4 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3))))) (Pi.Function.module.{u1, u3, u2} ι R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (LinearMap.module.{u3, u3, u3, max u1 u3, u2} R R R (ι -> R) M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Pi.addCommMonoid.{u1, u3} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (Pi.Function.module.{u1, u3, u3} ι R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3))))) (Semiring.toModule.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) _inst_4 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) _inst_4 (smulCommClass_self.{u3, u2} R M (CommRing.toCommMonoid.{u3} R _inst_3) (MulActionWithZero.toMulAction.{u3, u2} R M (Semiring.toMonoidWithZero.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3))) (AddZeroClass.toHasZero.{u2} M (AddMonoid.toAddZeroClass.{u2} M (AddCommMonoid.toAddMonoid.{u2} M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2)))) (Module.toMulActionWithZero.{u3, u2} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4))))) (fun (_x : LinearMap.{u3, u3, max u1 u2, max (max u1 u3) u2} R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) (ι -> M) (LinearMap.{u3, u3, max u1 u3, u2} R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) (ι -> R) M (Pi.addCommMonoid.{u1, u3} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (Pi.Function.module.{u1, u3, u3} ι R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3))))) (Semiring.toModule.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) _inst_4) (Pi.addCommMonoid.{u1, u2} ι (fun (ᾰ : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u2} M _inst_2)) (LinearMap.addCommMonoid.{u3, u3, max u1 u3, u2} R R (ι -> R) M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Pi.addCommMonoid.{u1, u3} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (Pi.Function.module.{u1, u3, u3} ι R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3))))) (Semiring.toModule.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) _inst_4 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3))))) (Pi.Function.module.{u1, u3, u2} ι R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (LinearMap.module.{u3, u3, u3, max u1 u3, u2} R R R (ι -> R) M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Pi.addCommMonoid.{u1, u3} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (Pi.Function.module.{u1, u3, u3} ι R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3))))) (Semiring.toModule.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) _inst_4 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) _inst_4 (smulCommClass_self.{u3, u2} R M (CommRing.toCommMonoid.{u3} R _inst_3) (MulActionWithZero.toMulAction.{u3, u2} R M (Semiring.toMonoidWithZero.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3))) (AddZeroClass.toHasZero.{u2} M (AddMonoid.toAddZeroClass.{u2} M (AddCommMonoid.toAddMonoid.{u2} M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2)))) (Module.toMulActionWithZero.{u3, u2} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4))))) => (ι -> M) -> (LinearMap.{u3, u3, max u1 u3, u2} R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) (ι -> R) M (Pi.addCommMonoid.{u1, u3} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (Pi.Function.module.{u1, u3, u3} ι R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3))))) (Semiring.toModule.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) _inst_4)) (LinearMap.hasCoeToFun.{u3, u3, max u1 u2, max (max u1 u3) u2} R R (ι -> M) (LinearMap.{u3, u3, max u1 u3, u2} R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) (ι -> R) M (Pi.addCommMonoid.{u1, u3} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (Pi.Function.module.{u1, u3, u3} ι R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3))))) (Semiring.toModule.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) _inst_4) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Pi.addCommMonoid.{u1, u2} ι (fun (ᾰ : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u2} M _inst_2)) (LinearMap.addCommMonoid.{u3, u3, max u1 u3, u2} R R (ι -> R) M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Pi.addCommMonoid.{u1, u3} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (Pi.Function.module.{u1, u3, u3} ι R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3))))) (Semiring.toModule.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) _inst_4 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3))))) (Pi.Function.module.{u1, u3, u2} ι R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (LinearMap.module.{u3, u3, u3, max u1 u3, u2} R R R (ι -> R) M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Pi.addCommMonoid.{u1, u3} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (Pi.Function.module.{u1, u3, u3} ι R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3))))) (Semiring.toModule.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) _inst_4 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) _inst_4 (smulCommClass_self.{u3, u2} R M (CommRing.toCommMonoid.{u3} R _inst_3) (MulActionWithZero.toMulAction.{u3, u2} R M (Semiring.toMonoidWithZero.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3))) (AddZeroClass.toHasZero.{u2} M (AddMonoid.toAddZeroClass.{u2} M (AddCommMonoid.toAddMonoid.{u2} M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2)))) (Module.toMulActionWithZero.{u3, u2} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4)))) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3))))) (Fintype.total.{u1, u2, u3, u3} ι M R _inst_1 (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4 R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) _inst_4 (smulCommClass_self.{u3, u2} R M (CommRing.toCommMonoid.{u3} R _inst_3) (MulActionWithZero.toMulAction.{u3, u2} R M (Semiring.toMonoidWithZero.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3))) (AddZeroClass.toHasZero.{u2} M (AddMonoid.toAddZeroClass.{u2} M (AddCommMonoid.toAddMonoid.{u2} M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2)))) (Module.toMulActionWithZero.{u3, u2} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4)))) b) (Matrix.mulVec.{u3, u1, u1} ι ι R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u3} R (NonAssocRing.toNonUnitalNonAssocRing.{u3} R (Ring.toNonAssocRing.{u3} R (CommRing.toRing.{u3} R _inst_3)))) _inst_1 A w))
but is expected to have type
- forall {ι : Type.{u3}} [_inst_1 : Fintype.{u3} ι] {M : Type.{u1}} [_inst_2 : AddCommGroup.{u1} M] (R : Type.{u2}) [_inst_3 : CommRing.{u2} R] [_inst_4 : Module.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2)] (b : ι -> M) [_inst_5 : DecidableEq.{succ u3} ι] (A : Matrix.{u3, u3, u2} ι ι R) (w : ι -> R), Eq.{succ u1} ((fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6191 : ι -> R) => M) w) (FunLike.coe.{max (max (succ u3) (succ u1)) (succ u2), max (succ u3) (succ u2), succ u1} ((fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6191 : Matrix.{u3, u3, u2} ι ι R) => LinearMap.{u2, u2, max u3 u2, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (ι -> R) M (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.Charpoly.LinearMap._hyg.130 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.Charpoly.LinearMap._hyg.130 : ι) => R) R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_3))))) (fun (i : ι) => Semiring.toModule.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) _inst_4) A) (ι -> R) (fun (_x : ι -> R) => (fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6191 : ι -> R) => M) _x) (LinearMap.instFunLikeLinearMap.{u2, u2, max u3 u2, u1} R R (ι -> R) M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Pi.addCommMonoid.{u3, u2} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.Charpoly.LinearMap._hyg.130 : ι) => R) R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_3))))) (fun (i : ι) => Semiring.toModule.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) _inst_4 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) (FunLike.coe.{max (max (succ u3) (succ u1)) (succ u2), max (succ u3) (succ u2), max (max (succ u3) (succ u1)) (succ u2)} (LinearMap.{u2, u2, max u2 u3, max u1 u3 u2} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (LinearMap.{u2, u2, max u3 u2, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (ι -> R) M (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.Charpoly.LinearMap._hyg.130 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.Charpoly.LinearMap._hyg.130 : ι) => R) R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_3))))) (fun (i : ι) => Semiring.toModule.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) _inst_4) (Matrix.addCommMonoid.{u2, u3, u3} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_3)))))) (LinearMap.addCommMonoid.{u2, u2, max u3 u2, u1} R R (ι -> R) M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.Charpoly.LinearMap._hyg.130 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.Charpoly.LinearMap._hyg.130 : ι) => R) R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_3))))) (fun (i : ι) => Semiring.toModule.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) _inst_4 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) (Matrix.module.{u2, u3, u3, u2} ι ι R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_3))))) (Semiring.toModule.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (LinearMap.instModuleLinearMapAddCommMonoid.{u2, u2, u2, max u3 u2, u1} R R R (ι -> R) M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.Charpoly.LinearMap._hyg.130 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.Charpoly.LinearMap._hyg.130 : ι) => R) R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_3))))) (fun (i : ι) => Semiring.toModule.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) _inst_4 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_4 (smulCommClass_self.{u2, u1} R M (CommRing.toCommMonoid.{u2} R _inst_3) (MulActionWithZero.toMulAction.{u2, u1} R M (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (NegZeroClass.toZero.{u1} M (SubNegZeroMonoid.toNegZeroClass.{u1} M (SubtractionMonoid.toSubNegZeroMonoid.{u1} M (SubtractionCommMonoid.toSubtractionMonoid.{u1} M (AddCommGroup.toDivisionAddCommMonoid.{u1} M _inst_2))))) (Module.toMulActionWithZero.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4))))) (Matrix.{u3, u3, u2} ι ι R) (fun (_x : Matrix.{u3, u3, u2} ι ι R) => (fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6191 : Matrix.{u3, u3, u2} ι ι R) => LinearMap.{u2, u2, max u3 u2, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (ι -> R) M (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.Charpoly.LinearMap._hyg.130 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.Charpoly.LinearMap._hyg.130 : ι) => R) R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_3))))) (fun (i : ι) => Semiring.toModule.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) _inst_4) _x) (LinearMap.instFunLikeLinearMap.{u2, u2, max u3 u2, max (max u3 u1) u2} R R (Matrix.{u3, u3, u2} ι ι R) (LinearMap.{u2, u2, max u3 u2, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (ι -> R) M (Pi.addCommMonoid.{u3, u2} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.Charpoly.LinearMap._hyg.130 : ι) => R) R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_3))))) (fun (i : ι) => Semiring.toModule.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) _inst_4) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Matrix.addCommMonoid.{u2, u3, u3} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_3)))))) (LinearMap.addCommMonoid.{u2, u2, max u3 u2, u1} R R (ι -> R) M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Pi.addCommMonoid.{u3, u2} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.Charpoly.LinearMap._hyg.130 : ι) => R) R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_3))))) (fun (i : ι) => Semiring.toModule.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) _inst_4 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) (Matrix.module.{u2, u3, u3, u2} ι ι R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_3))))) (Semiring.toModule.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (LinearMap.instModuleLinearMapAddCommMonoid.{u2, u2, u2, max u3 u2, u1} R R R (ι -> R) M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Pi.addCommMonoid.{u3, u2} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.Charpoly.LinearMap._hyg.130 : ι) => R) R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_3))))) (fun (i : ι) => Semiring.toModule.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) _inst_4 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_4 (smulCommClass_self.{u2, u1} R M (CommRing.toCommMonoid.{u2} R _inst_3) (MulActionWithZero.toMulAction.{u2, u1} R M (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (NegZeroClass.toZero.{u1} M (SubNegZeroMonoid.toNegZeroClass.{u1} M (SubtractionMonoid.toSubNegZeroMonoid.{u1} M (SubtractionCommMonoid.toSubtractionMonoid.{u1} M (AddCommGroup.toDivisionAddCommMonoid.{u1} M _inst_2))))) (Module.toMulActionWithZero.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) (PiToModule.fromMatrix.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)) A) w) (FunLike.coe.{max (max (succ u3) (succ u1)) (succ u2), max (succ u3) (succ u2), succ u1} ((fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6191 : ι -> M) => LinearMap.{u2, u2, max u3 u2, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (ι -> R) M (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Finsupp._hyg.14570 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Finsupp._hyg.14570 : ι) => R) R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) (fun (i : ι) => Semiring.toModule.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) _inst_4) b) (ι -> R) (fun (_x : ι -> R) => (fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6191 : ι -> R) => M) _x) (LinearMap.instFunLikeLinearMap.{u2, u2, max u3 u2, u1} R R (ι -> R) M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Pi.addCommMonoid.{u3, u2} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Finsupp._hyg.14570 : ι) => R) R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) (fun (i : ι) => Semiring.toModule.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) _inst_4 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), max (succ u1) (succ u3), max (max (succ u2) (succ u1)) (succ u3)} (LinearMap.{u2, u2, max u3 u1, max u1 u3 u2} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (ι -> M) (LinearMap.{u2, u2, max u3 u2, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (ι -> R) M (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Finsupp._hyg.14570 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Finsupp._hyg.14570 : ι) => R) R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) (fun (i : ι) => Semiring.toModule.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) _inst_4) (Pi.addCommMonoid.{u3, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Finsupp._hyg.14558 : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u1} M _inst_2)) (LinearMap.addCommMonoid.{u2, u2, max u3 u2, u1} R R (ι -> R) M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Finsupp._hyg.14570 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Finsupp._hyg.14570 : ι) => R) R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) (fun (i : ι) => Semiring.toModule.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) _inst_4 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) (Pi.module.{u3, u1, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Finsupp._hyg.14558 : ι) => M) R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (fun (i : ι) => _inst_4)) (LinearMap.instModuleLinearMapAddCommMonoid.{u2, u2, u2, max u3 u2, u1} R R R (ι -> R) M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Finsupp._hyg.14570 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Finsupp._hyg.14570 : ι) => R) R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) (fun (i : ι) => Semiring.toModule.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) _inst_4 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_4 (smulCommClass_self.{u2, u1} R M (CommRing.toCommMonoid.{u2} R _inst_3) (MulActionWithZero.toMulAction.{u2, u1} R M (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (NegZeroClass.toZero.{u1} M (SubNegZeroMonoid.toNegZeroClass.{u1} M (SubtractionMonoid.toSubNegZeroMonoid.{u1} M (SubtractionCommMonoid.toSubtractionMonoid.{u1} M (AddCommGroup.toDivisionAddCommMonoid.{u1} M _inst_2))))) (Module.toMulActionWithZero.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4))))) (ι -> M) (fun (_x : ι -> M) => (fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6191 : ι -> M) => LinearMap.{u2, u2, max u3 u2, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (ι -> R) M (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Finsupp._hyg.14570 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Finsupp._hyg.14570 : ι) => R) R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) (fun (i : ι) => Semiring.toModule.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) _inst_4) _x) (LinearMap.instFunLikeLinearMap.{u2, u2, max u1 u3, max (max u2 u1) u3} R R (ι -> M) (LinearMap.{u2, u2, max u3 u2, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (ι -> R) M (Pi.addCommMonoid.{u3, u2} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Finsupp._hyg.14570 : ι) => R) R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) (fun (i : ι) => Semiring.toModule.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) _inst_4) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Pi.addCommMonoid.{u3, u1} ι (fun (ᾰ : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u1} M _inst_2)) (LinearMap.addCommMonoid.{u2, u2, max u3 u2, u1} R R (ι -> R) M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Pi.addCommMonoid.{u3, u2} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Finsupp._hyg.14570 : ι) => R) R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) (fun (i : ι) => Semiring.toModule.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) _inst_4 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) (Pi.module.{u3, u1, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Finsupp._hyg.14558 : ι) => M) R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (fun (i : ι) => _inst_4)) (LinearMap.instModuleLinearMapAddCommMonoid.{u2, u2, u2, max u3 u2, u1} R R R (ι -> R) M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Pi.addCommMonoid.{u3, u2} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Finsupp._hyg.14570 : ι) => R) R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) (fun (i : ι) => Semiring.toModule.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) _inst_4 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_4 (smulCommClass_self.{u2, u1} R M (CommRing.toCommMonoid.{u2} R _inst_3) (MulActionWithZero.toMulAction.{u2, u1} R M (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (NegZeroClass.toZero.{u1} M (SubNegZeroMonoid.toNegZeroClass.{u1} M (SubtractionMonoid.toSubNegZeroMonoid.{u1} M (SubtractionCommMonoid.toSubtractionMonoid.{u1} M (AddCommGroup.toDivisionAddCommMonoid.{u1} M _inst_2))))) (Module.toMulActionWithZero.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) (Fintype.total.{u3, u1, u2, u2} ι M R _inst_1 (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4 R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_4 (smulCommClass_self.{u2, u1} R M (CommRing.toCommMonoid.{u2} R _inst_3) (MulActionWithZero.toMulAction.{u2, u1} R M (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (NegZeroClass.toZero.{u1} M (SubNegZeroMonoid.toNegZeroClass.{u1} M (SubtractionMonoid.toSubNegZeroMonoid.{u1} M (SubtractionCommMonoid.toSubtractionMonoid.{u1} M (AddCommGroup.toDivisionAddCommMonoid.{u1} M _inst_2))))) (Module.toMulActionWithZero.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4)))) b) (Matrix.mulVec.{u2, u3, u3} ι ι R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_3)))) _inst_1 A w))
+ forall {ι : Type.{u3}} [_inst_1 : Fintype.{u3} ι] {M : Type.{u1}} [_inst_2 : AddCommGroup.{u1} M] (R : Type.{u2}) [_inst_3 : CommRing.{u2} R] [_inst_4 : Module.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2)] (b : ι -> M) [_inst_5 : DecidableEq.{succ u3} ι] (A : Matrix.{u3, u3, u2} ι ι R) (w : ι -> R), Eq.{succ u1} ((fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6193 : ι -> R) => M) w) (FunLike.coe.{max (max (succ u3) (succ u1)) (succ u2), max (succ u3) (succ u2), succ u1} ((fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6193 : Matrix.{u3, u3, u2} ι ι R) => LinearMap.{u2, u2, max u3 u2, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (ι -> R) M (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.Charpoly.LinearMap._hyg.130 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.Charpoly.LinearMap._hyg.130 : ι) => R) R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_3))))) (fun (i : ι) => Semiring.toModule.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) _inst_4) A) (ι -> R) (fun (_x : ι -> R) => (fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6193 : ι -> R) => M) _x) (LinearMap.instFunLikeLinearMap.{u2, u2, max u3 u2, u1} R R (ι -> R) M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Pi.addCommMonoid.{u3, u2} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.Charpoly.LinearMap._hyg.130 : ι) => R) R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_3))))) (fun (i : ι) => Semiring.toModule.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) _inst_4 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) (FunLike.coe.{max (max (succ u3) (succ u1)) (succ u2), max (succ u3) (succ u2), max (max (succ u3) (succ u1)) (succ u2)} (LinearMap.{u2, u2, max u2 u3, max u1 u3 u2} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (LinearMap.{u2, u2, max u3 u2, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (ι -> R) M (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.Charpoly.LinearMap._hyg.130 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.Charpoly.LinearMap._hyg.130 : ι) => R) R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_3))))) (fun (i : ι) => Semiring.toModule.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) _inst_4) (Matrix.addCommMonoid.{u2, u3, u3} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_3)))))) (LinearMap.addCommMonoid.{u2, u2, max u3 u2, u1} R R (ι -> R) M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.Charpoly.LinearMap._hyg.130 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.Charpoly.LinearMap._hyg.130 : ι) => R) R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_3))))) (fun (i : ι) => Semiring.toModule.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) _inst_4 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) (Matrix.module.{u2, u3, u3, u2} ι ι R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_3))))) (Semiring.toModule.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (LinearMap.instModuleLinearMapAddCommMonoid.{u2, u2, u2, max u3 u2, u1} R R R (ι -> R) M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.Charpoly.LinearMap._hyg.130 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.Charpoly.LinearMap._hyg.130 : ι) => R) R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_3))))) (fun (i : ι) => Semiring.toModule.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) _inst_4 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_4 (smulCommClass_self.{u2, u1} R M (CommRing.toCommMonoid.{u2} R _inst_3) (MulActionWithZero.toMulAction.{u2, u1} R M (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (NegZeroClass.toZero.{u1} M (SubNegZeroMonoid.toNegZeroClass.{u1} M (SubtractionMonoid.toSubNegZeroMonoid.{u1} M (SubtractionCommMonoid.toSubtractionMonoid.{u1} M (AddCommGroup.toDivisionAddCommMonoid.{u1} M _inst_2))))) (Module.toMulActionWithZero.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4))))) (Matrix.{u3, u3, u2} ι ι R) (fun (_x : Matrix.{u3, u3, u2} ι ι R) => (fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6193 : Matrix.{u3, u3, u2} ι ι R) => LinearMap.{u2, u2, max u3 u2, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (ι -> R) M (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.Charpoly.LinearMap._hyg.130 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.Charpoly.LinearMap._hyg.130 : ι) => R) R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_3))))) (fun (i : ι) => Semiring.toModule.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) _inst_4) _x) (LinearMap.instFunLikeLinearMap.{u2, u2, max u3 u2, max (max u3 u1) u2} R R (Matrix.{u3, u3, u2} ι ι R) (LinearMap.{u2, u2, max u3 u2, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (ι -> R) M (Pi.addCommMonoid.{u3, u2} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.Charpoly.LinearMap._hyg.130 : ι) => R) R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_3))))) (fun (i : ι) => Semiring.toModule.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) _inst_4) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Matrix.addCommMonoid.{u2, u3, u3} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_3)))))) (LinearMap.addCommMonoid.{u2, u2, max u3 u2, u1} R R (ι -> R) M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Pi.addCommMonoid.{u3, u2} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.Charpoly.LinearMap._hyg.130 : ι) => R) R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_3))))) (fun (i : ι) => Semiring.toModule.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) _inst_4 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) (Matrix.module.{u2, u3, u3, u2} ι ι R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_3))))) (Semiring.toModule.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (LinearMap.instModuleLinearMapAddCommMonoid.{u2, u2, u2, max u3 u2, u1} R R R (ι -> R) M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Pi.addCommMonoid.{u3, u2} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.Charpoly.LinearMap._hyg.130 : ι) => R) R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_3))))) (fun (i : ι) => Semiring.toModule.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) _inst_4 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_4 (smulCommClass_self.{u2, u1} R M (CommRing.toCommMonoid.{u2} R _inst_3) (MulActionWithZero.toMulAction.{u2, u1} R M (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (NegZeroClass.toZero.{u1} M (SubNegZeroMonoid.toNegZeroClass.{u1} M (SubtractionMonoid.toSubNegZeroMonoid.{u1} M (SubtractionCommMonoid.toSubtractionMonoid.{u1} M (AddCommGroup.toDivisionAddCommMonoid.{u1} M _inst_2))))) (Module.toMulActionWithZero.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) (PiToModule.fromMatrix.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)) A) w) (FunLike.coe.{max (max (succ u3) (succ u1)) (succ u2), max (succ u3) (succ u2), succ u1} ((fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6193 : ι -> M) => LinearMap.{u2, u2, max u3 u2, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (ι -> R) M (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Finsupp._hyg.14570 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Finsupp._hyg.14570 : ι) => R) R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) (fun (i : ι) => Semiring.toModule.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) _inst_4) b) (ι -> R) (fun (_x : ι -> R) => (fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6193 : ι -> R) => M) _x) (LinearMap.instFunLikeLinearMap.{u2, u2, max u3 u2, u1} R R (ι -> R) M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Pi.addCommMonoid.{u3, u2} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Finsupp._hyg.14570 : ι) => R) R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) (fun (i : ι) => Semiring.toModule.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) _inst_4 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), max (succ u1) (succ u3), max (max (succ u2) (succ u1)) (succ u3)} (LinearMap.{u2, u2, max u3 u1, max u1 u3 u2} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (ι -> M) (LinearMap.{u2, u2, max u3 u2, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (ι -> R) M (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Finsupp._hyg.14570 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Finsupp._hyg.14570 : ι) => R) R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) (fun (i : ι) => Semiring.toModule.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) _inst_4) (Pi.addCommMonoid.{u3, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Finsupp._hyg.14558 : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u1} M _inst_2)) (LinearMap.addCommMonoid.{u2, u2, max u3 u2, u1} R R (ι -> R) M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Finsupp._hyg.14570 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Finsupp._hyg.14570 : ι) => R) R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) (fun (i : ι) => Semiring.toModule.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) _inst_4 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) (Pi.module.{u3, u1, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Finsupp._hyg.14558 : ι) => M) R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (fun (i : ι) => _inst_4)) (LinearMap.instModuleLinearMapAddCommMonoid.{u2, u2, u2, max u3 u2, u1} R R R (ι -> R) M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Finsupp._hyg.14570 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Finsupp._hyg.14570 : ι) => R) R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) (fun (i : ι) => Semiring.toModule.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) _inst_4 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_4 (smulCommClass_self.{u2, u1} R M (CommRing.toCommMonoid.{u2} R _inst_3) (MulActionWithZero.toMulAction.{u2, u1} R M (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (NegZeroClass.toZero.{u1} M (SubNegZeroMonoid.toNegZeroClass.{u1} M (SubtractionMonoid.toSubNegZeroMonoid.{u1} M (SubtractionCommMonoid.toSubtractionMonoid.{u1} M (AddCommGroup.toDivisionAddCommMonoid.{u1} M _inst_2))))) (Module.toMulActionWithZero.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4))))) (ι -> M) (fun (_x : ι -> M) => (fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6193 : ι -> M) => LinearMap.{u2, u2, max u3 u2, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (ι -> R) M (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Finsupp._hyg.14570 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Finsupp._hyg.14570 : ι) => R) R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) (fun (i : ι) => Semiring.toModule.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) _inst_4) _x) (LinearMap.instFunLikeLinearMap.{u2, u2, max u1 u3, max (max u2 u1) u3} R R (ι -> M) (LinearMap.{u2, u2, max u3 u2, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (ι -> R) M (Pi.addCommMonoid.{u3, u2} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Finsupp._hyg.14570 : ι) => R) R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) (fun (i : ι) => Semiring.toModule.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) _inst_4) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Pi.addCommMonoid.{u3, u1} ι (fun (ᾰ : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u1} M _inst_2)) (LinearMap.addCommMonoid.{u2, u2, max u3 u2, u1} R R (ι -> R) M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Pi.addCommMonoid.{u3, u2} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Finsupp._hyg.14570 : ι) => R) R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) (fun (i : ι) => Semiring.toModule.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) _inst_4 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) (Pi.module.{u3, u1, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Finsupp._hyg.14558 : ι) => M) R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (fun (i : ι) => _inst_4)) (LinearMap.instModuleLinearMapAddCommMonoid.{u2, u2, u2, max u3 u2, u1} R R R (ι -> R) M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Pi.addCommMonoid.{u3, u2} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Finsupp._hyg.14570 : ι) => R) R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) (fun (i : ι) => Semiring.toModule.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) _inst_4 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_4 (smulCommClass_self.{u2, u1} R M (CommRing.toCommMonoid.{u2} R _inst_3) (MulActionWithZero.toMulAction.{u2, u1} R M (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (NegZeroClass.toZero.{u1} M (SubNegZeroMonoid.toNegZeroClass.{u1} M (SubtractionMonoid.toSubNegZeroMonoid.{u1} M (SubtractionCommMonoid.toSubtractionMonoid.{u1} M (AddCommGroup.toDivisionAddCommMonoid.{u1} M _inst_2))))) (Module.toMulActionWithZero.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) (Fintype.total.{u3, u1, u2, u2} ι M R _inst_1 (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4 R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_4 (smulCommClass_self.{u2, u1} R M (CommRing.toCommMonoid.{u2} R _inst_3) (MulActionWithZero.toMulAction.{u2, u1} R M (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (NegZeroClass.toZero.{u1} M (SubNegZeroMonoid.toNegZeroClass.{u1} M (SubtractionMonoid.toSubNegZeroMonoid.{u1} M (SubtractionCommMonoid.toSubtractionMonoid.{u1} M (AddCommGroup.toDivisionAddCommMonoid.{u1} M _inst_2))))) (Module.toMulActionWithZero.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4)))) b) (Matrix.mulVec.{u2, u3, u3} ι ι R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_3)))) _inst_1 A w))
Case conversion may be inaccurate. Consider using '#align pi_to_module.from_matrix_apply PiToModule.fromMatrix_applyₓ'. -/
theorem PiToModule.fromMatrix_apply [DecidableEq ι] (A : Matrix ι ι R) (w : ι → R) :
PiToModule.fromMatrix R b A w = Fintype.total R R b (A.mulVec w) :=
@@ -62,7 +62,7 @@ theorem PiToModule.fromMatrix_apply [DecidableEq ι] (A : Matrix ι ι R) (w :
lean 3 declaration is
forall {ι : Type.{u1}} [_inst_1 : Fintype.{u1} ι] {M : Type.{u2}} [_inst_2 : AddCommGroup.{u2} M] (R : Type.{u3}) [_inst_3 : CommRing.{u3} R] [_inst_4 : Module.{u3, u2} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2)] (b : ι -> M) [_inst_5 : DecidableEq.{succ u1} ι] (A : Matrix.{u1, u1, u3} ι ι R) (j : ι), Eq.{succ u2} M (coeFn.{max (succ (max u1 u3)) (succ u2), max (succ (max u1 u3)) (succ u2)} (LinearMap.{u3, u3, max u1 u3, u2} R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) (ι -> R) M (Pi.addCommMonoid.{u1, u3} ι (fun (ᾰ : ι) => R) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} R (NonUnitalNonAssocRing.toAddCommGroup.{u3} R (NonAssocRing.toNonUnitalNonAssocRing.{u3} R (Ring.toNonAssocRing.{u3} R (CommRing.toRing.{u3} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (Pi.Function.module.{u1, u3, u3} ι R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u3} R (NonUnitalNonAssocRing.toAddCommGroup.{u3} R (NonAssocRing.toNonUnitalNonAssocRing.{u3} R (Ring.toNonAssocRing.{u3} R (CommRing.toRing.{u3} R _inst_3))))) (Semiring.toModule.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) _inst_4) (fun (_x : LinearMap.{u3, u3, max u1 u3, u2} R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) (ι -> R) M (Pi.addCommMonoid.{u1, u3} ι (fun (ᾰ : ι) => R) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} R (NonUnitalNonAssocRing.toAddCommGroup.{u3} R (NonAssocRing.toNonUnitalNonAssocRing.{u3} R (Ring.toNonAssocRing.{u3} R (CommRing.toRing.{u3} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (Pi.Function.module.{u1, u3, u3} ι R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u3} R (NonUnitalNonAssocRing.toAddCommGroup.{u3} R (NonAssocRing.toNonUnitalNonAssocRing.{u3} R (Ring.toNonAssocRing.{u3} R (CommRing.toRing.{u3} R _inst_3))))) (Semiring.toModule.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) _inst_4) => (ι -> R) -> M) (LinearMap.hasCoeToFun.{u3, u3, max u1 u3, u2} R R (ι -> R) M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Pi.addCommMonoid.{u1, u3} ι (fun (ᾰ : ι) => R) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} R (NonUnitalNonAssocRing.toAddCommGroup.{u3} R (NonAssocRing.toNonUnitalNonAssocRing.{u3} R (Ring.toNonAssocRing.{u3} R (CommRing.toRing.{u3} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (Pi.Function.module.{u1, u3, u3} ι R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u3} R (NonUnitalNonAssocRing.toAddCommGroup.{u3} R (NonAssocRing.toNonUnitalNonAssocRing.{u3} R (Ring.toNonAssocRing.{u3} R (CommRing.toRing.{u3} R _inst_3))))) (Semiring.toModule.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) _inst_4 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3))))) (coeFn.{max (succ (max u1 u3)) (succ (max (max u1 u3) u2)), max (succ (max u1 u3)) (succ (max (max u1 u3) u2))} (LinearMap.{u3, u3, max u1 u3, max (max u1 u3) u2} R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) (Matrix.{u1, u1, u3} ι ι R) (LinearMap.{u3, u3, max u1 u3, u2} R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) (ι -> R) M (Pi.addCommMonoid.{u1, u3} ι (fun (ᾰ : ι) => R) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} R (NonUnitalNonAssocRing.toAddCommGroup.{u3} R (NonAssocRing.toNonUnitalNonAssocRing.{u3} R (Ring.toNonAssocRing.{u3} R (CommRing.toRing.{u3} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (Pi.Function.module.{u1, u3, u3} ι R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u3} R (NonUnitalNonAssocRing.toAddCommGroup.{u3} R (NonAssocRing.toNonUnitalNonAssocRing.{u3} R (Ring.toNonAssocRing.{u3} R (CommRing.toRing.{u3} R _inst_3))))) (Semiring.toModule.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) _inst_4) (Matrix.addCommMonoid.{u3, u1, u1} ι ι R (AddCommGroup.toAddCommMonoid.{u3} R (NonUnitalNonAssocRing.toAddCommGroup.{u3} R (NonAssocRing.toNonUnitalNonAssocRing.{u3} R (Ring.toNonAssocRing.{u3} R (CommRing.toRing.{u3} R _inst_3)))))) (LinearMap.addCommMonoid.{u3, u3, max u1 u3, u2} R R (ι -> R) M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Pi.addCommMonoid.{u1, u3} ι (fun (ᾰ : ι) => R) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} R (NonUnitalNonAssocRing.toAddCommGroup.{u3} R (NonAssocRing.toNonUnitalNonAssocRing.{u3} R (Ring.toNonAssocRing.{u3} R (CommRing.toRing.{u3} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (Pi.Function.module.{u1, u3, u3} ι R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u3} R (NonUnitalNonAssocRing.toAddCommGroup.{u3} R (NonAssocRing.toNonUnitalNonAssocRing.{u3} R (Ring.toNonAssocRing.{u3} R (CommRing.toRing.{u3} R _inst_3))))) (Semiring.toModule.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) _inst_4 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3))))) (Matrix.module.{u3, u1, u1, u3} ι ι R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u3} R (NonUnitalNonAssocRing.toAddCommGroup.{u3} R (NonAssocRing.toNonUnitalNonAssocRing.{u3} R (Ring.toNonAssocRing.{u3} R (CommRing.toRing.{u3} R _inst_3))))) (Semiring.toModule.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) (LinearMap.module.{u3, u3, u3, max u1 u3, u2} R R R (ι -> R) M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Pi.addCommMonoid.{u1, u3} ι (fun (ᾰ : ι) => R) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} R (NonUnitalNonAssocRing.toAddCommGroup.{u3} R (NonAssocRing.toNonUnitalNonAssocRing.{u3} R (Ring.toNonAssocRing.{u3} R (CommRing.toRing.{u3} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (Pi.Function.module.{u1, u3, u3} ι R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u3} R (NonUnitalNonAssocRing.toAddCommGroup.{u3} R (NonAssocRing.toNonUnitalNonAssocRing.{u3} R (Ring.toNonAssocRing.{u3} R (CommRing.toRing.{u3} R _inst_3))))) (Semiring.toModule.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) _inst_4 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) _inst_4 (PiToModule.fromMatrix._proof_1.{u2, u3} M _inst_2 R _inst_3 _inst_4))) (fun (_x : LinearMap.{u3, u3, max u1 u3, max (max u1 u3) u2} R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) (Matrix.{u1, u1, u3} ι ι R) (LinearMap.{u3, u3, max u1 u3, u2} R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) (ι -> R) M (Pi.addCommMonoid.{u1, u3} ι (fun (ᾰ : ι) => R) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} R (NonUnitalNonAssocRing.toAddCommGroup.{u3} R (NonAssocRing.toNonUnitalNonAssocRing.{u3} R (Ring.toNonAssocRing.{u3} R (CommRing.toRing.{u3} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (Pi.Function.module.{u1, u3, u3} ι R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u3} R (NonUnitalNonAssocRing.toAddCommGroup.{u3} R (NonAssocRing.toNonUnitalNonAssocRing.{u3} R (Ring.toNonAssocRing.{u3} R (CommRing.toRing.{u3} R _inst_3))))) (Semiring.toModule.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) _inst_4) (Matrix.addCommMonoid.{u3, u1, u1} ι ι R (AddCommGroup.toAddCommMonoid.{u3} R (NonUnitalNonAssocRing.toAddCommGroup.{u3} R (NonAssocRing.toNonUnitalNonAssocRing.{u3} R (Ring.toNonAssocRing.{u3} R (CommRing.toRing.{u3} R _inst_3)))))) (LinearMap.addCommMonoid.{u3, u3, max u1 u3, u2} R R (ι -> R) M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Pi.addCommMonoid.{u1, u3} ι (fun (ᾰ : ι) => R) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} R (NonUnitalNonAssocRing.toAddCommGroup.{u3} R (NonAssocRing.toNonUnitalNonAssocRing.{u3} R (Ring.toNonAssocRing.{u3} R (CommRing.toRing.{u3} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (Pi.Function.module.{u1, u3, u3} ι R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u3} R (NonUnitalNonAssocRing.toAddCommGroup.{u3} R (NonAssocRing.toNonUnitalNonAssocRing.{u3} R (Ring.toNonAssocRing.{u3} R (CommRing.toRing.{u3} R _inst_3))))) (Semiring.toModule.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) _inst_4 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3))))) (Matrix.module.{u3, u1, u1, u3} ι ι R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u3} R (NonUnitalNonAssocRing.toAddCommGroup.{u3} R (NonAssocRing.toNonUnitalNonAssocRing.{u3} R (Ring.toNonAssocRing.{u3} R (CommRing.toRing.{u3} R _inst_3))))) (Semiring.toModule.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) (LinearMap.module.{u3, u3, u3, max u1 u3, u2} R R R (ι -> R) M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Pi.addCommMonoid.{u1, u3} ι (fun (ᾰ : ι) => R) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} R (NonUnitalNonAssocRing.toAddCommGroup.{u3} R (NonAssocRing.toNonUnitalNonAssocRing.{u3} R (Ring.toNonAssocRing.{u3} R (CommRing.toRing.{u3} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (Pi.Function.module.{u1, u3, u3} ι R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u3} R (NonUnitalNonAssocRing.toAddCommGroup.{u3} R (NonAssocRing.toNonUnitalNonAssocRing.{u3} R (Ring.toNonAssocRing.{u3} R (CommRing.toRing.{u3} R _inst_3))))) (Semiring.toModule.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) _inst_4 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) _inst_4 (PiToModule.fromMatrix._proof_1.{u2, u3} M _inst_2 R _inst_3 _inst_4))) => (Matrix.{u1, u1, u3} ι ι R) -> (LinearMap.{u3, u3, max u1 u3, u2} R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) (ι -> R) M (Pi.addCommMonoid.{u1, u3} ι (fun (ᾰ : ι) => R) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} R (NonUnitalNonAssocRing.toAddCommGroup.{u3} R (NonAssocRing.toNonUnitalNonAssocRing.{u3} R (Ring.toNonAssocRing.{u3} R (CommRing.toRing.{u3} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (Pi.Function.module.{u1, u3, u3} ι R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u3} R (NonUnitalNonAssocRing.toAddCommGroup.{u3} R (NonAssocRing.toNonUnitalNonAssocRing.{u3} R (Ring.toNonAssocRing.{u3} R (CommRing.toRing.{u3} R _inst_3))))) (Semiring.toModule.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) _inst_4)) (LinearMap.hasCoeToFun.{u3, u3, max u1 u3, max (max u1 u3) u2} R R (Matrix.{u1, u1, u3} ι ι R) (LinearMap.{u3, u3, max u1 u3, u2} R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) (ι -> R) M (Pi.addCommMonoid.{u1, u3} ι (fun (ᾰ : ι) => R) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} R (NonUnitalNonAssocRing.toAddCommGroup.{u3} R (NonAssocRing.toNonUnitalNonAssocRing.{u3} R (Ring.toNonAssocRing.{u3} R (CommRing.toRing.{u3} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (Pi.Function.module.{u1, u3, u3} ι R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u3} R (NonUnitalNonAssocRing.toAddCommGroup.{u3} R (NonAssocRing.toNonUnitalNonAssocRing.{u3} R (Ring.toNonAssocRing.{u3} R (CommRing.toRing.{u3} R _inst_3))))) (Semiring.toModule.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) _inst_4) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Matrix.addCommMonoid.{u3, u1, u1} ι ι R (AddCommGroup.toAddCommMonoid.{u3} R (NonUnitalNonAssocRing.toAddCommGroup.{u3} R (NonAssocRing.toNonUnitalNonAssocRing.{u3} R (Ring.toNonAssocRing.{u3} R (CommRing.toRing.{u3} R _inst_3)))))) (LinearMap.addCommMonoid.{u3, u3, max u1 u3, u2} R R (ι -> R) M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Pi.addCommMonoid.{u1, u3} ι (fun (ᾰ : ι) => R) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} R (NonUnitalNonAssocRing.toAddCommGroup.{u3} R (NonAssocRing.toNonUnitalNonAssocRing.{u3} R (Ring.toNonAssocRing.{u3} R (CommRing.toRing.{u3} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (Pi.Function.module.{u1, u3, u3} ι R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u3} R (NonUnitalNonAssocRing.toAddCommGroup.{u3} R (NonAssocRing.toNonUnitalNonAssocRing.{u3} R (Ring.toNonAssocRing.{u3} R (CommRing.toRing.{u3} R _inst_3))))) (Semiring.toModule.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) _inst_4 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3))))) (Matrix.module.{u3, u1, u1, u3} ι ι R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u3} R (NonUnitalNonAssocRing.toAddCommGroup.{u3} R (NonAssocRing.toNonUnitalNonAssocRing.{u3} R (Ring.toNonAssocRing.{u3} R (CommRing.toRing.{u3} R _inst_3))))) (Semiring.toModule.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) (LinearMap.module.{u3, u3, u3, max u1 u3, u2} R R R (ι -> R) M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Pi.addCommMonoid.{u1, u3} ι (fun (ᾰ : ι) => R) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} R (NonUnitalNonAssocRing.toAddCommGroup.{u3} R (NonAssocRing.toNonUnitalNonAssocRing.{u3} R (Ring.toNonAssocRing.{u3} R (CommRing.toRing.{u3} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (Pi.Function.module.{u1, u3, u3} ι R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u3} R (NonUnitalNonAssocRing.toAddCommGroup.{u3} R (NonAssocRing.toNonUnitalNonAssocRing.{u3} R (Ring.toNonAssocRing.{u3} R (CommRing.toRing.{u3} R _inst_3))))) (Semiring.toModule.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) _inst_4 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) _inst_4 (PiToModule.fromMatrix._proof_1.{u2, u3} M _inst_2 R _inst_3 _inst_4)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3))))) (PiToModule.fromMatrix.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)) A) (Pi.single.{u1, u3} ι (fun (ᾰ : ι) => R) (fun (a : ι) (b : ι) => _inst_5 a b) (fun (i : ι) => MulZeroClass.toHasZero.{u3} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u3} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u3} R (NonAssocRing.toNonUnitalNonAssocRing.{u3} R (Ring.toNonAssocRing.{u3} R (CommRing.toRing.{u3} R _inst_3)))))) j (OfNat.ofNat.{u3} R 1 (OfNat.mk.{u3} R 1 (One.one.{u3} R (AddMonoidWithOne.toOne.{u3} R (AddGroupWithOne.toAddMonoidWithOne.{u3} R (AddCommGroupWithOne.toAddGroupWithOne.{u3} R (Ring.toAddCommGroupWithOne.{u3} R (CommRing.toRing.{u3} R _inst_3)))))))))) (Finset.sum.{u2, u1} M ι (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (Finset.univ.{u1} ι _inst_1) (fun (i : ι) => SMul.smul.{u3, u2} R M (SMulZeroClass.toHasSmul.{u3, u2} R M (AddZeroClass.toHasZero.{u2} M (AddMonoid.toAddZeroClass.{u2} M (AddCommMonoid.toAddMonoid.{u2} M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2)))) (SMulWithZero.toSmulZeroClass.{u3, u2} R M (MulZeroClass.toHasZero.{u3} R (MulZeroOneClass.toMulZeroClass.{u3} R (MonoidWithZero.toMulZeroOneClass.{u3} R (Semiring.toMonoidWithZero.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))))) (AddZeroClass.toHasZero.{u2} M (AddMonoid.toAddZeroClass.{u2} M (AddCommMonoid.toAddMonoid.{u2} M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2)))) (MulActionWithZero.toSMulWithZero.{u3, u2} R M (Semiring.toMonoidWithZero.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3))) (AddZeroClass.toHasZero.{u2} M (AddMonoid.toAddZeroClass.{u2} M (AddCommMonoid.toAddMonoid.{u2} M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2)))) (Module.toMulActionWithZero.{u3, u2} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4)))) (A i j) (b i)))
but is expected to have type
- forall {ι : Type.{u3}} [_inst_1 : Fintype.{u3} ι] {M : Type.{u1}} [_inst_2 : AddCommGroup.{u1} M] (R : Type.{u2}) [_inst_3 : CommRing.{u2} R] [_inst_4 : Module.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2)] (b : ι -> M) [_inst_5 : DecidableEq.{succ u3} ι] (A : Matrix.{u3, u3, u2} ι ι R) (j : ι), Eq.{succ u1} ((fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6191 : ι -> R) => M) (Pi.single.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.Charpoly.LinearMap._hyg.130 : ι) => R) (fun (a : ι) (b : ι) => _inst_5 a b) (fun (i : ι) => CommMonoidWithZero.toZero.{u2} R (CommSemiring.toCommMonoidWithZero.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) j (OfNat.ofNat.{u2} R 1 (One.toOfNat1.{u2} R (Semiring.toOne.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))))) (FunLike.coe.{max (max (succ u3) (succ u1)) (succ u2), max (succ u3) (succ u2), succ u1} ((fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6191 : Matrix.{u3, u3, u2} ι ι R) => LinearMap.{u2, u2, max u3 u2, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (ι -> R) M (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.Charpoly.LinearMap._hyg.130 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.Charpoly.LinearMap._hyg.130 : ι) => R) R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_3))))) (fun (i : ι) => Semiring.toModule.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) _inst_4) A) (ι -> R) (fun (_x : ι -> R) => (fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6191 : ι -> R) => M) _x) (LinearMap.instFunLikeLinearMap.{u2, u2, max u3 u2, u1} R R (ι -> R) M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Pi.addCommMonoid.{u3, u2} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.Charpoly.LinearMap._hyg.130 : ι) => R) R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_3))))) (fun (i : ι) => Semiring.toModule.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) _inst_4 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) (FunLike.coe.{max (max (succ u3) (succ u1)) (succ u2), max (succ u3) (succ u2), max (max (succ u3) (succ u1)) (succ u2)} (LinearMap.{u2, u2, max u2 u3, max u1 u3 u2} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (LinearMap.{u2, u2, max u3 u2, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (ι -> R) M (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.Charpoly.LinearMap._hyg.130 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.Charpoly.LinearMap._hyg.130 : ι) => R) R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_3))))) (fun (i : ι) => Semiring.toModule.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) _inst_4) (Matrix.addCommMonoid.{u2, u3, u3} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_3)))))) (LinearMap.addCommMonoid.{u2, u2, max u3 u2, u1} R R (ι -> R) M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.Charpoly.LinearMap._hyg.130 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.Charpoly.LinearMap._hyg.130 : ι) => R) R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_3))))) (fun (i : ι) => Semiring.toModule.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) _inst_4 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) (Matrix.module.{u2, u3, u3, u2} ι ι R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_3))))) (Semiring.toModule.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (LinearMap.instModuleLinearMapAddCommMonoid.{u2, u2, u2, max u3 u2, u1} R R R (ι -> R) M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.Charpoly.LinearMap._hyg.130 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.Charpoly.LinearMap._hyg.130 : ι) => R) R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_3))))) (fun (i : ι) => Semiring.toModule.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) _inst_4 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_4 (smulCommClass_self.{u2, u1} R M (CommRing.toCommMonoid.{u2} R _inst_3) (MulActionWithZero.toMulAction.{u2, u1} R M (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (NegZeroClass.toZero.{u1} M (SubNegZeroMonoid.toNegZeroClass.{u1} M (SubtractionMonoid.toSubNegZeroMonoid.{u1} M (SubtractionCommMonoid.toSubtractionMonoid.{u1} M (AddCommGroup.toDivisionAddCommMonoid.{u1} M _inst_2))))) (Module.toMulActionWithZero.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4))))) (Matrix.{u3, u3, u2} ι ι R) (fun (_x : Matrix.{u3, u3, u2} ι ι R) => (fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6191 : Matrix.{u3, u3, u2} ι ι R) => LinearMap.{u2, u2, max u3 u2, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (ι -> R) M (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.Charpoly.LinearMap._hyg.130 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.Charpoly.LinearMap._hyg.130 : ι) => R) R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_3))))) (fun (i : ι) => Semiring.toModule.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) _inst_4) _x) (LinearMap.instFunLikeLinearMap.{u2, u2, max u3 u2, max (max u3 u1) u2} R R (Matrix.{u3, u3, u2} ι ι R) (LinearMap.{u2, u2, max u3 u2, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (ι -> R) M (Pi.addCommMonoid.{u3, u2} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.Charpoly.LinearMap._hyg.130 : ι) => R) R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_3))))) (fun (i : ι) => Semiring.toModule.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) _inst_4) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Matrix.addCommMonoid.{u2, u3, u3} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_3)))))) (LinearMap.addCommMonoid.{u2, u2, max u3 u2, u1} R R (ι -> R) M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Pi.addCommMonoid.{u3, u2} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.Charpoly.LinearMap._hyg.130 : ι) => R) R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_3))))) (fun (i : ι) => Semiring.toModule.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) _inst_4 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) (Matrix.module.{u2, u3, u3, u2} ι ι R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_3))))) (Semiring.toModule.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (LinearMap.instModuleLinearMapAddCommMonoid.{u2, u2, u2, max u3 u2, u1} R R R (ι -> R) M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Pi.addCommMonoid.{u3, u2} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.Charpoly.LinearMap._hyg.130 : ι) => R) R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_3))))) (fun (i : ι) => Semiring.toModule.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) _inst_4 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_4 (smulCommClass_self.{u2, u1} R M (CommRing.toCommMonoid.{u2} R _inst_3) (MulActionWithZero.toMulAction.{u2, u1} R M (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (NegZeroClass.toZero.{u1} M (SubNegZeroMonoid.toNegZeroClass.{u1} M (SubtractionMonoid.toSubNegZeroMonoid.{u1} M (SubtractionCommMonoid.toSubtractionMonoid.{u1} M (AddCommGroup.toDivisionAddCommMonoid.{u1} M _inst_2))))) (Module.toMulActionWithZero.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) (PiToModule.fromMatrix.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)) A) (Pi.single.{u3, u2} ι (fun (ᾰ : ι) => R) (fun (a : ι) (b : ι) => _inst_5 a b) (fun (i : ι) => CommMonoidWithZero.toZero.{u2} R (CommSemiring.toCommMonoidWithZero.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) j (OfNat.ofNat.{u2} R 1 (One.toOfNat1.{u2} R (Semiring.toOne.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))))) (Finset.sum.{u1, u3} M ι (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (Finset.univ.{u3} ι _inst_1) (fun (i : ι) => HSMul.hSMul.{u2, u1, u1} R M M (instHSMul.{u2, u1} R M (SMulZeroClass.toSMul.{u2, u1} R M (NegZeroClass.toZero.{u1} M (SubNegZeroMonoid.toNegZeroClass.{u1} M (SubtractionMonoid.toSubNegZeroMonoid.{u1} M (SubtractionCommMonoid.toSubtractionMonoid.{u1} M (AddCommGroup.toDivisionAddCommMonoid.{u1} M _inst_2))))) (SMulWithZero.toSMulZeroClass.{u2, u1} R M (CommMonoidWithZero.toZero.{u2} R (CommSemiring.toCommMonoidWithZero.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (NegZeroClass.toZero.{u1} M (SubNegZeroMonoid.toNegZeroClass.{u1} M (SubtractionMonoid.toSubNegZeroMonoid.{u1} M (SubtractionCommMonoid.toSubtractionMonoid.{u1} M (AddCommGroup.toDivisionAddCommMonoid.{u1} M _inst_2))))) (MulActionWithZero.toSMulWithZero.{u2, u1} R M (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (NegZeroClass.toZero.{u1} M (SubNegZeroMonoid.toNegZeroClass.{u1} M (SubtractionMonoid.toSubNegZeroMonoid.{u1} M (SubtractionCommMonoid.toSubtractionMonoid.{u1} M (AddCommGroup.toDivisionAddCommMonoid.{u1} M _inst_2))))) (Module.toMulActionWithZero.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4))))) (A i j) (b i)))
+ forall {ι : Type.{u3}} [_inst_1 : Fintype.{u3} ι] {M : Type.{u1}} [_inst_2 : AddCommGroup.{u1} M] (R : Type.{u2}) [_inst_3 : CommRing.{u2} R] [_inst_4 : Module.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2)] (b : ι -> M) [_inst_5 : DecidableEq.{succ u3} ι] (A : Matrix.{u3, u3, u2} ι ι R) (j : ι), Eq.{succ u1} ((fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6193 : ι -> R) => M) (Pi.single.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.Charpoly.LinearMap._hyg.130 : ι) => R) (fun (a : ι) (b : ι) => _inst_5 a b) (fun (i : ι) => CommMonoidWithZero.toZero.{u2} R (CommSemiring.toCommMonoidWithZero.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) j (OfNat.ofNat.{u2} R 1 (One.toOfNat1.{u2} R (Semiring.toOne.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))))) (FunLike.coe.{max (max (succ u3) (succ u1)) (succ u2), max (succ u3) (succ u2), succ u1} ((fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6193 : Matrix.{u3, u3, u2} ι ι R) => LinearMap.{u2, u2, max u3 u2, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (ι -> R) M (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.Charpoly.LinearMap._hyg.130 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.Charpoly.LinearMap._hyg.130 : ι) => R) R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_3))))) (fun (i : ι) => Semiring.toModule.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) _inst_4) A) (ι -> R) (fun (_x : ι -> R) => (fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6193 : ι -> R) => M) _x) (LinearMap.instFunLikeLinearMap.{u2, u2, max u3 u2, u1} R R (ι -> R) M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Pi.addCommMonoid.{u3, u2} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.Charpoly.LinearMap._hyg.130 : ι) => R) R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_3))))) (fun (i : ι) => Semiring.toModule.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) _inst_4 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) (FunLike.coe.{max (max (succ u3) (succ u1)) (succ u2), max (succ u3) (succ u2), max (max (succ u3) (succ u1)) (succ u2)} (LinearMap.{u2, u2, max u2 u3, max u1 u3 u2} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (LinearMap.{u2, u2, max u3 u2, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (ι -> R) M (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.Charpoly.LinearMap._hyg.130 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.Charpoly.LinearMap._hyg.130 : ι) => R) R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_3))))) (fun (i : ι) => Semiring.toModule.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) _inst_4) (Matrix.addCommMonoid.{u2, u3, u3} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_3)))))) (LinearMap.addCommMonoid.{u2, u2, max u3 u2, u1} R R (ι -> R) M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.Charpoly.LinearMap._hyg.130 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.Charpoly.LinearMap._hyg.130 : ι) => R) R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_3))))) (fun (i : ι) => Semiring.toModule.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) _inst_4 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) (Matrix.module.{u2, u3, u3, u2} ι ι R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_3))))) (Semiring.toModule.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (LinearMap.instModuleLinearMapAddCommMonoid.{u2, u2, u2, max u3 u2, u1} R R R (ι -> R) M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.Charpoly.LinearMap._hyg.130 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.Charpoly.LinearMap._hyg.130 : ι) => R) R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_3))))) (fun (i : ι) => Semiring.toModule.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) _inst_4 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_4 (smulCommClass_self.{u2, u1} R M (CommRing.toCommMonoid.{u2} R _inst_3) (MulActionWithZero.toMulAction.{u2, u1} R M (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (NegZeroClass.toZero.{u1} M (SubNegZeroMonoid.toNegZeroClass.{u1} M (SubtractionMonoid.toSubNegZeroMonoid.{u1} M (SubtractionCommMonoid.toSubtractionMonoid.{u1} M (AddCommGroup.toDivisionAddCommMonoid.{u1} M _inst_2))))) (Module.toMulActionWithZero.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4))))) (Matrix.{u3, u3, u2} ι ι R) (fun (_x : Matrix.{u3, u3, u2} ι ι R) => (fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6193 : Matrix.{u3, u3, u2} ι ι R) => LinearMap.{u2, u2, max u3 u2, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (ι -> R) M (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.Charpoly.LinearMap._hyg.130 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.Charpoly.LinearMap._hyg.130 : ι) => R) R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_3))))) (fun (i : ι) => Semiring.toModule.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) _inst_4) _x) (LinearMap.instFunLikeLinearMap.{u2, u2, max u3 u2, max (max u3 u1) u2} R R (Matrix.{u3, u3, u2} ι ι R) (LinearMap.{u2, u2, max u3 u2, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (ι -> R) M (Pi.addCommMonoid.{u3, u2} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.Charpoly.LinearMap._hyg.130 : ι) => R) R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_3))))) (fun (i : ι) => Semiring.toModule.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) _inst_4) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Matrix.addCommMonoid.{u2, u3, u3} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_3)))))) (LinearMap.addCommMonoid.{u2, u2, max u3 u2, u1} R R (ι -> R) M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Pi.addCommMonoid.{u3, u2} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.Charpoly.LinearMap._hyg.130 : ι) => R) R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_3))))) (fun (i : ι) => Semiring.toModule.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) _inst_4 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) (Matrix.module.{u2, u3, u3, u2} ι ι R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_3))))) (Semiring.toModule.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (LinearMap.instModuleLinearMapAddCommMonoid.{u2, u2, u2, max u3 u2, u1} R R R (ι -> R) M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Pi.addCommMonoid.{u3, u2} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.Charpoly.LinearMap._hyg.130 : ι) => R) R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_3))))) (fun (i : ι) => Semiring.toModule.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) _inst_4 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_4 (smulCommClass_self.{u2, u1} R M (CommRing.toCommMonoid.{u2} R _inst_3) (MulActionWithZero.toMulAction.{u2, u1} R M (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (NegZeroClass.toZero.{u1} M (SubNegZeroMonoid.toNegZeroClass.{u1} M (SubtractionMonoid.toSubNegZeroMonoid.{u1} M (SubtractionCommMonoid.toSubtractionMonoid.{u1} M (AddCommGroup.toDivisionAddCommMonoid.{u1} M _inst_2))))) (Module.toMulActionWithZero.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) (PiToModule.fromMatrix.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)) A) (Pi.single.{u3, u2} ι (fun (ᾰ : ι) => R) (fun (a : ι) (b : ι) => _inst_5 a b) (fun (i : ι) => CommMonoidWithZero.toZero.{u2} R (CommSemiring.toCommMonoidWithZero.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) j (OfNat.ofNat.{u2} R 1 (One.toOfNat1.{u2} R (Semiring.toOne.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))))) (Finset.sum.{u1, u3} M ι (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (Finset.univ.{u3} ι _inst_1) (fun (i : ι) => HSMul.hSMul.{u2, u1, u1} R M M (instHSMul.{u2, u1} R M (SMulZeroClass.toSMul.{u2, u1} R M (NegZeroClass.toZero.{u1} M (SubNegZeroMonoid.toNegZeroClass.{u1} M (SubtractionMonoid.toSubNegZeroMonoid.{u1} M (SubtractionCommMonoid.toSubtractionMonoid.{u1} M (AddCommGroup.toDivisionAddCommMonoid.{u1} M _inst_2))))) (SMulWithZero.toSMulZeroClass.{u2, u1} R M (CommMonoidWithZero.toZero.{u2} R (CommSemiring.toCommMonoidWithZero.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (NegZeroClass.toZero.{u1} M (SubNegZeroMonoid.toNegZeroClass.{u1} M (SubtractionMonoid.toSubNegZeroMonoid.{u1} M (SubtractionCommMonoid.toSubtractionMonoid.{u1} M (AddCommGroup.toDivisionAddCommMonoid.{u1} M _inst_2))))) (MulActionWithZero.toSMulWithZero.{u2, u1} R M (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (NegZeroClass.toZero.{u1} M (SubNegZeroMonoid.toNegZeroClass.{u1} M (SubtractionMonoid.toSubNegZeroMonoid.{u1} M (SubtractionCommMonoid.toSubtractionMonoid.{u1} M (AddCommGroup.toDivisionAddCommMonoid.{u1} M _inst_2))))) (Module.toMulActionWithZero.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4))))) (A i j) (b i)))
Case conversion may be inaccurate. Consider using '#align pi_to_module.from_matrix_apply_single_one PiToModule.fromMatrix_apply_single_oneₓ'. -/
theorem PiToModule.fromMatrix_apply_single_one [DecidableEq ι] (A : Matrix ι ι R) (j : ι) :
PiToModule.fromMatrix R b A (Pi.single j 1) = ∑ i : ι, A i j • b i :=
@@ -83,7 +83,7 @@ def PiToModule.fromEnd : Module.End R M →ₗ[R] (ι → R) →ₗ[R] M :=
lean 3 declaration is
forall {ι : Type.{u1}} [_inst_1 : Fintype.{u1} ι] {M : Type.{u2}} [_inst_2 : AddCommGroup.{u2} M] (R : Type.{u3}) [_inst_3 : CommRing.{u3} R] [_inst_4 : Module.{u3, u2} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2)] (b : ι -> M) (f : Module.End.{u3, u2} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (w : ι -> R), Eq.{succ u2} M (coeFn.{max (succ (max u1 u3)) (succ u2), max (succ (max u1 u3)) (succ u2)} (LinearMap.{u3, u3, max u1 u3, u2} R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) (ι -> R) M (Pi.addCommMonoid.{u1, u3} ι (fun (ᾰ : ι) => R) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} R (NonUnitalNonAssocRing.toAddCommGroup.{u3} R (NonAssocRing.toNonUnitalNonAssocRing.{u3} R (Ring.toNonAssocRing.{u3} R (CommRing.toRing.{u3} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (Pi.Function.module.{u1, u3, u3} ι R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u3} R (NonUnitalNonAssocRing.toAddCommGroup.{u3} R (NonAssocRing.toNonUnitalNonAssocRing.{u3} R (Ring.toNonAssocRing.{u3} R (CommRing.toRing.{u3} R _inst_3))))) (Semiring.toModule.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) _inst_4) (fun (_x : LinearMap.{u3, u3, max u1 u3, u2} R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) (ι -> R) M (Pi.addCommMonoid.{u1, u3} ι (fun (ᾰ : ι) => R) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} R (NonUnitalNonAssocRing.toAddCommGroup.{u3} R (NonAssocRing.toNonUnitalNonAssocRing.{u3} R (Ring.toNonAssocRing.{u3} R (CommRing.toRing.{u3} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (Pi.Function.module.{u1, u3, u3} ι R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u3} R (NonUnitalNonAssocRing.toAddCommGroup.{u3} R (NonAssocRing.toNonUnitalNonAssocRing.{u3} R (Ring.toNonAssocRing.{u3} R (CommRing.toRing.{u3} R _inst_3))))) (Semiring.toModule.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) _inst_4) => (ι -> R) -> M) (LinearMap.hasCoeToFun.{u3, u3, max u1 u3, u2} R R (ι -> R) M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Pi.addCommMonoid.{u1, u3} ι (fun (ᾰ : ι) => R) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} R (NonUnitalNonAssocRing.toAddCommGroup.{u3} R (NonAssocRing.toNonUnitalNonAssocRing.{u3} R (Ring.toNonAssocRing.{u3} R (CommRing.toRing.{u3} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (Pi.Function.module.{u1, u3, u3} ι R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u3} R (NonUnitalNonAssocRing.toAddCommGroup.{u3} R (NonAssocRing.toNonUnitalNonAssocRing.{u3} R (Ring.toNonAssocRing.{u3} R (CommRing.toRing.{u3} R _inst_3))))) (Semiring.toModule.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) _inst_4 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3))))) (coeFn.{max (succ u2) (succ (max (max u1 u3) u2)), max (succ u2) (succ (max (max u1 u3) u2))} (LinearMap.{u3, u3, u2, max (max u1 u3) u2} R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) (Module.End.{u3, u2} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (LinearMap.{u3, u3, max u1 u3, u2} R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) (ι -> R) M (Pi.addCommMonoid.{u1, u3} ι (fun (ᾰ : ι) => R) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} R (NonUnitalNonAssocRing.toAddCommGroup.{u3} R (NonAssocRing.toNonUnitalNonAssocRing.{u3} R (Ring.toNonAssocRing.{u3} R (CommRing.toRing.{u3} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (Pi.Function.module.{u1, u3, u3} ι R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u3} R (NonUnitalNonAssocRing.toAddCommGroup.{u3} R (NonAssocRing.toNonUnitalNonAssocRing.{u3} R (Ring.toNonAssocRing.{u3} R (CommRing.toRing.{u3} R _inst_3))))) (Semiring.toModule.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) _inst_4) (LinearMap.addCommMonoid.{u3, u3, u2, u2} R R M M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4 _inst_4 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3))))) (LinearMap.addCommMonoid.{u3, u3, max u1 u3, u2} R R (ι -> R) M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Pi.addCommMonoid.{u1, u3} ι (fun (ᾰ : ι) => R) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} R (NonUnitalNonAssocRing.toAddCommGroup.{u3} R (NonAssocRing.toNonUnitalNonAssocRing.{u3} R (Ring.toNonAssocRing.{u3} R (CommRing.toRing.{u3} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (Pi.Function.module.{u1, u3, u3} ι R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u3} R (NonUnitalNonAssocRing.toAddCommGroup.{u3} R (NonAssocRing.toNonUnitalNonAssocRing.{u3} R (Ring.toNonAssocRing.{u3} R (CommRing.toRing.{u3} R _inst_3))))) (Semiring.toModule.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) _inst_4 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3))))) (LinearMap.module.{u3, u3, u3, u2, u2} R R R M M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4 _inst_4 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) _inst_4 (PiToModule.fromEnd._proof_1.{u2, u3} M _inst_2 R _inst_3 _inst_4)) (LinearMap.module.{u3, u3, u3, max u1 u3, u2} R R R (ι -> R) M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Pi.addCommMonoid.{u1, u3} ι (fun (ᾰ : ι) => R) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} R (NonUnitalNonAssocRing.toAddCommGroup.{u3} R (NonAssocRing.toNonUnitalNonAssocRing.{u3} R (Ring.toNonAssocRing.{u3} R (CommRing.toRing.{u3} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (Pi.Function.module.{u1, u3, u3} ι R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u3} R (NonUnitalNonAssocRing.toAddCommGroup.{u3} R (NonAssocRing.toNonUnitalNonAssocRing.{u3} R (Ring.toNonAssocRing.{u3} R (CommRing.toRing.{u3} R _inst_3))))) (Semiring.toModule.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) _inst_4 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) _inst_4 (PiToModule.fromEnd._proof_2.{u2, u3} M _inst_2 R _inst_3 _inst_4))) (fun (_x : LinearMap.{u3, u3, u2, max (max u1 u3) u2} R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) (Module.End.{u3, u2} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (LinearMap.{u3, u3, max u1 u3, u2} R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) (ι -> R) M (Pi.addCommMonoid.{u1, u3} ι (fun (ᾰ : ι) => R) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} R (NonUnitalNonAssocRing.toAddCommGroup.{u3} R (NonAssocRing.toNonUnitalNonAssocRing.{u3} R (Ring.toNonAssocRing.{u3} R (CommRing.toRing.{u3} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (Pi.Function.module.{u1, u3, u3} ι R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u3} R (NonUnitalNonAssocRing.toAddCommGroup.{u3} R (NonAssocRing.toNonUnitalNonAssocRing.{u3} R (Ring.toNonAssocRing.{u3} R (CommRing.toRing.{u3} R _inst_3))))) (Semiring.toModule.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) _inst_4) (LinearMap.addCommMonoid.{u3, u3, u2, u2} R R M M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4 _inst_4 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3))))) (LinearMap.addCommMonoid.{u3, u3, max u1 u3, u2} R R (ι -> R) M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Pi.addCommMonoid.{u1, u3} ι (fun (ᾰ : ι) => R) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} R (NonUnitalNonAssocRing.toAddCommGroup.{u3} R (NonAssocRing.toNonUnitalNonAssocRing.{u3} R (Ring.toNonAssocRing.{u3} R (CommRing.toRing.{u3} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (Pi.Function.module.{u1, u3, u3} ι R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u3} R (NonUnitalNonAssocRing.toAddCommGroup.{u3} R (NonAssocRing.toNonUnitalNonAssocRing.{u3} R (Ring.toNonAssocRing.{u3} R (CommRing.toRing.{u3} R _inst_3))))) (Semiring.toModule.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) _inst_4 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3))))) (LinearMap.module.{u3, u3, u3, u2, u2} R R R M M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4 _inst_4 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) _inst_4 (PiToModule.fromEnd._proof_1.{u2, u3} M _inst_2 R _inst_3 _inst_4)) (LinearMap.module.{u3, u3, u3, max u1 u3, u2} R R R (ι -> R) M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Pi.addCommMonoid.{u1, u3} ι (fun (ᾰ : ι) => R) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} R (NonUnitalNonAssocRing.toAddCommGroup.{u3} R (NonAssocRing.toNonUnitalNonAssocRing.{u3} R (Ring.toNonAssocRing.{u3} R (CommRing.toRing.{u3} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (Pi.Function.module.{u1, u3, u3} ι R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u3} R (NonUnitalNonAssocRing.toAddCommGroup.{u3} R (NonAssocRing.toNonUnitalNonAssocRing.{u3} R (Ring.toNonAssocRing.{u3} R (CommRing.toRing.{u3} R _inst_3))))) (Semiring.toModule.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) _inst_4 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) _inst_4 (PiToModule.fromEnd._proof_2.{u2, u3} M _inst_2 R _inst_3 _inst_4))) => (Module.End.{u3, u2} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) -> (LinearMap.{u3, u3, max u1 u3, u2} R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) (ι -> R) M (Pi.addCommMonoid.{u1, u3} ι (fun (ᾰ : ι) => R) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} R (NonUnitalNonAssocRing.toAddCommGroup.{u3} R (NonAssocRing.toNonUnitalNonAssocRing.{u3} R (Ring.toNonAssocRing.{u3} R (CommRing.toRing.{u3} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (Pi.Function.module.{u1, u3, u3} ι R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u3} R (NonUnitalNonAssocRing.toAddCommGroup.{u3} R (NonAssocRing.toNonUnitalNonAssocRing.{u3} R (Ring.toNonAssocRing.{u3} R (CommRing.toRing.{u3} R _inst_3))))) (Semiring.toModule.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) _inst_4)) (LinearMap.hasCoeToFun.{u3, u3, u2, max (max u1 u3) u2} R R (Module.End.{u3, u2} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (LinearMap.{u3, u3, max u1 u3, u2} R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) (ι -> R) M (Pi.addCommMonoid.{u1, u3} ι (fun (ᾰ : ι) => R) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} R (NonUnitalNonAssocRing.toAddCommGroup.{u3} R (NonAssocRing.toNonUnitalNonAssocRing.{u3} R (Ring.toNonAssocRing.{u3} R (CommRing.toRing.{u3} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (Pi.Function.module.{u1, u3, u3} ι R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u3} R (NonUnitalNonAssocRing.toAddCommGroup.{u3} R (NonAssocRing.toNonUnitalNonAssocRing.{u3} R (Ring.toNonAssocRing.{u3} R (CommRing.toRing.{u3} R _inst_3))))) (Semiring.toModule.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) _inst_4) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (LinearMap.addCommMonoid.{u3, u3, u2, u2} R R M M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4 _inst_4 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3))))) (LinearMap.addCommMonoid.{u3, u3, max u1 u3, u2} R R (ι -> R) M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Pi.addCommMonoid.{u1, u3} ι (fun (ᾰ : ι) => R) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} R (NonUnitalNonAssocRing.toAddCommGroup.{u3} R (NonAssocRing.toNonUnitalNonAssocRing.{u3} R (Ring.toNonAssocRing.{u3} R (CommRing.toRing.{u3} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (Pi.Function.module.{u1, u3, u3} ι R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u3} R (NonUnitalNonAssocRing.toAddCommGroup.{u3} R (NonAssocRing.toNonUnitalNonAssocRing.{u3} R (Ring.toNonAssocRing.{u3} R (CommRing.toRing.{u3} R _inst_3))))) (Semiring.toModule.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) _inst_4 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3))))) (LinearMap.module.{u3, u3, u3, u2, u2} R R R M M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4 _inst_4 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) _inst_4 (PiToModule.fromEnd._proof_1.{u2, u3} M _inst_2 R _inst_3 _inst_4)) (LinearMap.module.{u3, u3, u3, max u1 u3, u2} R R R (ι -> R) M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Pi.addCommMonoid.{u1, u3} ι (fun (ᾰ : ι) => R) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} R (NonUnitalNonAssocRing.toAddCommGroup.{u3} R (NonAssocRing.toNonUnitalNonAssocRing.{u3} R (Ring.toNonAssocRing.{u3} R (CommRing.toRing.{u3} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (Pi.Function.module.{u1, u3, u3} ι R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u3} R (NonUnitalNonAssocRing.toAddCommGroup.{u3} R (NonAssocRing.toNonUnitalNonAssocRing.{u3} R (Ring.toNonAssocRing.{u3} R (CommRing.toRing.{u3} R _inst_3))))) (Semiring.toModule.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) _inst_4 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) _inst_4 (PiToModule.fromEnd._proof_2.{u2, u3} M _inst_2 R _inst_3 _inst_4)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3))))) (PiToModule.fromEnd.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b) f) w) (coeFn.{succ u2, succ u2} (Module.End.{u3, u2} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (fun (_x : LinearMap.{u3, u3, u2, u2} R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4 _inst_4) => M -> M) (LinearMap.hasCoeToFun.{u3, u3, u2, u2} R R M M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4 _inst_4 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3))))) f (coeFn.{max (succ (max u1 u3)) (succ u2), max (succ (max u1 u3)) (succ u2)} (LinearMap.{u3, u3, max u1 u3, u2} R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) (ι -> R) M (Pi.addCommMonoid.{u1, u3} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (Pi.Function.module.{u1, u3, u3} ι R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3))))) (Semiring.toModule.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) _inst_4) (fun (_x : LinearMap.{u3, u3, max u1 u3, u2} R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) (ι -> R) M (Pi.addCommMonoid.{u1, u3} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (Pi.Function.module.{u1, u3, u3} ι R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3))))) (Semiring.toModule.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) _inst_4) => (ι -> R) -> M) (LinearMap.hasCoeToFun.{u3, u3, max u1 u3, u2} R R (ι -> R) M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Pi.addCommMonoid.{u1, u3} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (Pi.Function.module.{u1, u3, u3} ι R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3))))) (Semiring.toModule.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) _inst_4 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3))))) (coeFn.{max (succ (max u1 u2)) (succ (max (max u1 u3) u2)), max (succ (max u1 u2)) (succ (max (max u1 u3) u2))} (LinearMap.{u3, u3, max u1 u2, max (max u1 u3) u2} R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) (ι -> M) (LinearMap.{u3, u3, max u1 u3, u2} R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) (ι -> R) M (Pi.addCommMonoid.{u1, u3} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (Pi.Function.module.{u1, u3, u3} ι R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3))))) (Semiring.toModule.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) _inst_4) (Pi.addCommMonoid.{u1, u2} ι (fun (ᾰ : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u2} M _inst_2)) (LinearMap.addCommMonoid.{u3, u3, max u1 u3, u2} R R (ι -> R) M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Pi.addCommMonoid.{u1, u3} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (Pi.Function.module.{u1, u3, u3} ι R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3))))) (Semiring.toModule.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) _inst_4 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3))))) (Pi.Function.module.{u1, u3, u2} ι R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (LinearMap.module.{u3, u3, u3, max u1 u3, u2} R R R (ι -> R) M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Pi.addCommMonoid.{u1, u3} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (Pi.Function.module.{u1, u3, u3} ι R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3))))) (Semiring.toModule.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) _inst_4 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) _inst_4 (smulCommClass_self.{u3, u2} R M (CommRing.toCommMonoid.{u3} R _inst_3) (MulActionWithZero.toMulAction.{u3, u2} R M (Semiring.toMonoidWithZero.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3))) (AddZeroClass.toHasZero.{u2} M (AddMonoid.toAddZeroClass.{u2} M (AddCommMonoid.toAddMonoid.{u2} M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2)))) (Module.toMulActionWithZero.{u3, u2} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4))))) (fun (_x : LinearMap.{u3, u3, max u1 u2, max (max u1 u3) u2} R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) (ι -> M) (LinearMap.{u3, u3, max u1 u3, u2} R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) (ι -> R) M (Pi.addCommMonoid.{u1, u3} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (Pi.Function.module.{u1, u3, u3} ι R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3))))) (Semiring.toModule.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) _inst_4) (Pi.addCommMonoid.{u1, u2} ι (fun (ᾰ : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u2} M _inst_2)) (LinearMap.addCommMonoid.{u3, u3, max u1 u3, u2} R R (ι -> R) M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Pi.addCommMonoid.{u1, u3} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (Pi.Function.module.{u1, u3, u3} ι R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3))))) (Semiring.toModule.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) _inst_4 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3))))) (Pi.Function.module.{u1, u3, u2} ι R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (LinearMap.module.{u3, u3, u3, max u1 u3, u2} R R R (ι -> R) M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Pi.addCommMonoid.{u1, u3} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (Pi.Function.module.{u1, u3, u3} ι R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3))))) (Semiring.toModule.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) _inst_4 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) _inst_4 (smulCommClass_self.{u3, u2} R M (CommRing.toCommMonoid.{u3} R _inst_3) (MulActionWithZero.toMulAction.{u3, u2} R M (Semiring.toMonoidWithZero.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3))) (AddZeroClass.toHasZero.{u2} M (AddMonoid.toAddZeroClass.{u2} M (AddCommMonoid.toAddMonoid.{u2} M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2)))) (Module.toMulActionWithZero.{u3, u2} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4))))) => (ι -> M) -> (LinearMap.{u3, u3, max u1 u3, u2} R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) (ι -> R) M (Pi.addCommMonoid.{u1, u3} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (Pi.Function.module.{u1, u3, u3} ι R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3))))) (Semiring.toModule.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) _inst_4)) (LinearMap.hasCoeToFun.{u3, u3, max u1 u2, max (max u1 u3) u2} R R (ι -> M) (LinearMap.{u3, u3, max u1 u3, u2} R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) (ι -> R) M (Pi.addCommMonoid.{u1, u3} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (Pi.Function.module.{u1, u3, u3} ι R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3))))) (Semiring.toModule.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) _inst_4) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Pi.addCommMonoid.{u1, u2} ι (fun (ᾰ : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u2} M _inst_2)) (LinearMap.addCommMonoid.{u3, u3, max u1 u3, u2} R R (ι -> R) M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Pi.addCommMonoid.{u1, u3} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (Pi.Function.module.{u1, u3, u3} ι R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3))))) (Semiring.toModule.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) _inst_4 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3))))) (Pi.Function.module.{u1, u3, u2} ι R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (LinearMap.module.{u3, u3, u3, max u1 u3, u2} R R R (ι -> R) M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Pi.addCommMonoid.{u1, u3} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (Pi.Function.module.{u1, u3, u3} ι R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3))))) (Semiring.toModule.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) _inst_4 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) _inst_4 (smulCommClass_self.{u3, u2} R M (CommRing.toCommMonoid.{u3} R _inst_3) (MulActionWithZero.toMulAction.{u3, u2} R M (Semiring.toMonoidWithZero.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3))) (AddZeroClass.toHasZero.{u2} M (AddMonoid.toAddZeroClass.{u2} M (AddCommMonoid.toAddMonoid.{u2} M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2)))) (Module.toMulActionWithZero.{u3, u2} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4)))) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3))))) (Fintype.total.{u1, u2, u3, u3} ι M R _inst_1 (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4 R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) _inst_4 (smulCommClass_self.{u3, u2} R M (CommRing.toCommMonoid.{u3} R _inst_3) (MulActionWithZero.toMulAction.{u3, u2} R M (Semiring.toMonoidWithZero.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3))) (AddZeroClass.toHasZero.{u2} M (AddMonoid.toAddZeroClass.{u2} M (AddCommMonoid.toAddMonoid.{u2} M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2)))) (Module.toMulActionWithZero.{u3, u2} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4)))) b) w))
but is expected to have type
- forall {ι : Type.{u1}} [_inst_1 : Fintype.{u1} ι] {M : Type.{u2}} [_inst_2 : AddCommGroup.{u2} M] (R : Type.{u3}) [_inst_3 : CommRing.{u3} R] [_inst_4 : Module.{u3, u2} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2)] (b : ι -> M) (f : Module.End.{u3, u2} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (w : ι -> R), Eq.{succ u2} ((fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6191 : ι -> R) => M) w) (FunLike.coe.{max (max (succ u1) (succ u2)) (succ u3), max (succ u1) (succ u3), succ u2} ((fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6191 : Module.End.{u3, u2} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) => LinearMap.{u3, u3, max u1 u3, u2} R R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (ι -> R) M (Pi.addCommMonoid.{u1, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.Charpoly.LinearMap._hyg.392 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u3} R (NonAssocRing.toNonUnitalNonAssocRing.{u3} R (Ring.toNonAssocRing.{u3} R (CommRing.toRing.{u3} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (Pi.module.{u1, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.Charpoly.LinearMap._hyg.392 : ι) => R) R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u3} R (NonAssocRing.toNonUnitalNonAssocRing.{u3} R (Ring.toNonAssocRing.{u3} R (CommRing.toRing.{u3} R _inst_3))))) (fun (i : ι) => Semiring.toModule.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) _inst_4) f) (ι -> R) (fun (_x : ι -> R) => (fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6191 : ι -> R) => M) _x) (LinearMap.instFunLikeLinearMap.{u3, u3, max u1 u3, u2} R R (ι -> R) M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Pi.addCommMonoid.{u1, u3} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u3} R (NonAssocRing.toNonUnitalNonAssocRing.{u3} R (Ring.toNonAssocRing.{u3} R (CommRing.toRing.{u3} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (Pi.module.{u1, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.Charpoly.LinearMap._hyg.392 : ι) => R) R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u3} R (NonAssocRing.toNonUnitalNonAssocRing.{u3} R (Ring.toNonAssocRing.{u3} R (CommRing.toRing.{u3} R _inst_3))))) (fun (i : ι) => Semiring.toModule.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) _inst_4 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))))) (FunLike.coe.{max (max (succ u1) (succ u2)) (succ u3), succ u2, max (max (succ u1) (succ u2)) (succ u3)} (LinearMap.{u3, u3, u2, max u2 u1 u3} R R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (Module.End.{u3, u2} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (LinearMap.{u3, u3, max u1 u3, u2} R R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (ι -> R) M (Pi.addCommMonoid.{u1, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.Charpoly.LinearMap._hyg.392 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u3} R (NonAssocRing.toNonUnitalNonAssocRing.{u3} R (Ring.toNonAssocRing.{u3} R (CommRing.toRing.{u3} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (Pi.module.{u1, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.Charpoly.LinearMap._hyg.392 : ι) => R) R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u3} R (NonAssocRing.toNonUnitalNonAssocRing.{u3} R (Ring.toNonAssocRing.{u3} R (CommRing.toRing.{u3} R _inst_3))))) (fun (i : ι) => Semiring.toModule.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) _inst_4) (LinearMap.addCommMonoid.{u3, u3, u2, u2} R R M M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4 _inst_4 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))))) (LinearMap.addCommMonoid.{u3, u3, max u1 u3, u2} R R (ι -> R) M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Pi.addCommMonoid.{u1, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.Charpoly.LinearMap._hyg.392 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u3} R (NonAssocRing.toNonUnitalNonAssocRing.{u3} R (Ring.toNonAssocRing.{u3} R (CommRing.toRing.{u3} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (Pi.module.{u1, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.Charpoly.LinearMap._hyg.392 : ι) => R) R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u3} R (NonAssocRing.toNonUnitalNonAssocRing.{u3} R (Ring.toNonAssocRing.{u3} R (CommRing.toRing.{u3} R _inst_3))))) (fun (i : ι) => Semiring.toModule.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) _inst_4 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u3, u3, u3, u2, u2} R R R M M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4 _inst_4 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_4 (smulCommClass_self.{u3, u2} R M (CommRing.toCommMonoid.{u3} R _inst_3) (MulActionWithZero.toMulAction.{u3, u2} R M (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))) (NegZeroClass.toZero.{u2} M (SubNegZeroMonoid.toNegZeroClass.{u2} M (SubtractionMonoid.toSubNegZeroMonoid.{u2} M (SubtractionCommMonoid.toSubtractionMonoid.{u2} M (AddCommGroup.toDivisionAddCommMonoid.{u2} M _inst_2))))) (Module.toMulActionWithZero.{u3, u2} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4)))) (LinearMap.instModuleLinearMapAddCommMonoid.{u3, u3, u3, max u1 u3, u2} R R R (ι -> R) M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Pi.addCommMonoid.{u1, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.Charpoly.LinearMap._hyg.392 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u3} R (NonAssocRing.toNonUnitalNonAssocRing.{u3} R (Ring.toNonAssocRing.{u3} R (CommRing.toRing.{u3} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (Pi.module.{u1, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.Charpoly.LinearMap._hyg.392 : ι) => R) R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u3} R (NonAssocRing.toNonUnitalNonAssocRing.{u3} R (Ring.toNonAssocRing.{u3} R (CommRing.toRing.{u3} R _inst_3))))) (fun (i : ι) => Semiring.toModule.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) _inst_4 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_4 (smulCommClass_self.{u3, u2} R M (CommRing.toCommMonoid.{u3} R _inst_3) (MulActionWithZero.toMulAction.{u3, u2} R M (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))) (NegZeroClass.toZero.{u2} M (SubNegZeroMonoid.toNegZeroClass.{u2} M (SubtractionMonoid.toSubNegZeroMonoid.{u2} M (SubtractionCommMonoid.toSubtractionMonoid.{u2} M (AddCommGroup.toDivisionAddCommMonoid.{u2} M _inst_2))))) (Module.toMulActionWithZero.{u3, u2} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4))))) (Module.End.{u3, u2} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (fun (_x : Module.End.{u3, u2} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) => (fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6191 : Module.End.{u3, u2} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) => LinearMap.{u3, u3, max u1 u3, u2} R R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (ι -> R) M (Pi.addCommMonoid.{u1, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.Charpoly.LinearMap._hyg.392 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u3} R (NonAssocRing.toNonUnitalNonAssocRing.{u3} R (Ring.toNonAssocRing.{u3} R (CommRing.toRing.{u3} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (Pi.module.{u1, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.Charpoly.LinearMap._hyg.392 : ι) => R) R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u3} R (NonAssocRing.toNonUnitalNonAssocRing.{u3} R (Ring.toNonAssocRing.{u3} R (CommRing.toRing.{u3} R _inst_3))))) (fun (i : ι) => Semiring.toModule.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) _inst_4) _x) (LinearMap.instFunLikeLinearMap.{u3, u3, u2, max (max u1 u2) u3} R R (Module.End.{u3, u2} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (LinearMap.{u3, u3, max u1 u3, u2} R R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (ι -> R) M (Pi.addCommMonoid.{u1, u3} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u3} R (NonAssocRing.toNonUnitalNonAssocRing.{u3} R (Ring.toNonAssocRing.{u3} R (CommRing.toRing.{u3} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (Pi.module.{u1, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.Charpoly.LinearMap._hyg.392 : ι) => R) R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u3} R (NonAssocRing.toNonUnitalNonAssocRing.{u3} R (Ring.toNonAssocRing.{u3} R (CommRing.toRing.{u3} R _inst_3))))) (fun (i : ι) => Semiring.toModule.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) _inst_4) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (LinearMap.addCommMonoid.{u3, u3, u2, u2} R R M M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4 _inst_4 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))))) (LinearMap.addCommMonoid.{u3, u3, max u1 u3, u2} R R (ι -> R) M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Pi.addCommMonoid.{u1, u3} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u3} R (NonAssocRing.toNonUnitalNonAssocRing.{u3} R (Ring.toNonAssocRing.{u3} R (CommRing.toRing.{u3} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (Pi.module.{u1, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.Charpoly.LinearMap._hyg.392 : ι) => R) R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u3} R (NonAssocRing.toNonUnitalNonAssocRing.{u3} R (Ring.toNonAssocRing.{u3} R (CommRing.toRing.{u3} R _inst_3))))) (fun (i : ι) => Semiring.toModule.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) _inst_4 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u3, u3, u3, u2, u2} R R R M M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4 _inst_4 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_4 (smulCommClass_self.{u3, u2} R M (CommRing.toCommMonoid.{u3} R _inst_3) (MulActionWithZero.toMulAction.{u3, u2} R M (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))) (NegZeroClass.toZero.{u2} M (SubNegZeroMonoid.toNegZeroClass.{u2} M (SubtractionMonoid.toSubNegZeroMonoid.{u2} M (SubtractionCommMonoid.toSubtractionMonoid.{u2} M (AddCommGroup.toDivisionAddCommMonoid.{u2} M _inst_2))))) (Module.toMulActionWithZero.{u3, u2} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4)))) (LinearMap.instModuleLinearMapAddCommMonoid.{u3, u3, u3, max u1 u3, u2} R R R (ι -> R) M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Pi.addCommMonoid.{u1, u3} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u3} R (NonAssocRing.toNonUnitalNonAssocRing.{u3} R (Ring.toNonAssocRing.{u3} R (CommRing.toRing.{u3} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (Pi.module.{u1, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.Charpoly.LinearMap._hyg.392 : ι) => R) R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u3} R (NonAssocRing.toNonUnitalNonAssocRing.{u3} R (Ring.toNonAssocRing.{u3} R (CommRing.toRing.{u3} R _inst_3))))) (fun (i : ι) => Semiring.toModule.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) _inst_4 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_4 (smulCommClass_self.{u3, u2} R M (CommRing.toCommMonoid.{u3} R _inst_3) (MulActionWithZero.toMulAction.{u3, u2} R M (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))) (NegZeroClass.toZero.{u2} M (SubNegZeroMonoid.toNegZeroClass.{u2} M (SubtractionMonoid.toSubNegZeroMonoid.{u2} M (SubtractionCommMonoid.toSubtractionMonoid.{u2} M (AddCommGroup.toDivisionAddCommMonoid.{u2} M _inst_2))))) (Module.toMulActionWithZero.{u3, u2} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4)))) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))))) (PiToModule.fromEnd.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b) f) w) (FunLike.coe.{succ u2, succ u2, succ u2} (Module.End.{u3, u2} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6191 : M) => M) _x) (LinearMap.instFunLikeLinearMap.{u3, u3, u2, u2} R R M M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4 _inst_4 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))))) f (FunLike.coe.{max (max (succ u1) (succ u2)) (succ u3), max (succ u1) (succ u3), succ u2} ((fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6191 : ι -> M) => LinearMap.{u3, u3, max u1 u3, u2} R R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (ι -> R) M (Pi.addCommMonoid.{u1, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Finsupp._hyg.14570 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (Pi.module.{u1, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Finsupp._hyg.14570 : ι) => R) R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))))) (fun (i : ι) => Semiring.toModule.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) _inst_4) b) (ι -> R) (fun (_x : ι -> R) => (fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6191 : ι -> R) => M) _x) (LinearMap.instFunLikeLinearMap.{u3, u3, max u1 u3, u2} R R (ι -> R) M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Pi.addCommMonoid.{u1, u3} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (Pi.module.{u1, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Finsupp._hyg.14570 : ι) => R) R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))))) (fun (i : ι) => Semiring.toModule.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) _inst_4 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))))) (FunLike.coe.{max (max (succ u3) (succ u2)) (succ u1), max (succ u2) (succ u1), max (max (succ u3) (succ u2)) (succ u1)} (LinearMap.{u3, u3, max u1 u2, max u2 u1 u3} R R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (ι -> M) (LinearMap.{u3, u3, max u1 u3, u2} R R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (ι -> R) M (Pi.addCommMonoid.{u1, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Finsupp._hyg.14570 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (Pi.module.{u1, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Finsupp._hyg.14570 : ι) => R) R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))))) (fun (i : ι) => Semiring.toModule.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) _inst_4) (Pi.addCommMonoid.{u1, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Finsupp._hyg.14558 : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u2} M _inst_2)) (LinearMap.addCommMonoid.{u3, u3, max u1 u3, u2} R R (ι -> R) M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Pi.addCommMonoid.{u1, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Finsupp._hyg.14570 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (Pi.module.{u1, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Finsupp._hyg.14570 : ι) => R) R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))))) (fun (i : ι) => Semiring.toModule.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) _inst_4 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))))) (Pi.module.{u1, u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Finsupp._hyg.14558 : ι) => M) R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (fun (i : ι) => _inst_4)) (LinearMap.instModuleLinearMapAddCommMonoid.{u3, u3, u3, max u1 u3, u2} R R R (ι -> R) M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Pi.addCommMonoid.{u1, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Finsupp._hyg.14570 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (Pi.module.{u1, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Finsupp._hyg.14570 : ι) => R) R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))))) (fun (i : ι) => Semiring.toModule.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) _inst_4 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_4 (smulCommClass_self.{u3, u2} R M (CommRing.toCommMonoid.{u3} R _inst_3) (MulActionWithZero.toMulAction.{u3, u2} R M (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))) (NegZeroClass.toZero.{u2} M (SubNegZeroMonoid.toNegZeroClass.{u2} M (SubtractionMonoid.toSubNegZeroMonoid.{u2} M (SubtractionCommMonoid.toSubtractionMonoid.{u2} M (AddCommGroup.toDivisionAddCommMonoid.{u2} M _inst_2))))) (Module.toMulActionWithZero.{u3, u2} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4))))) (ι -> M) (fun (_x : ι -> M) => (fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6191 : ι -> M) => LinearMap.{u3, u3, max u1 u3, u2} R R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (ι -> R) M (Pi.addCommMonoid.{u1, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Finsupp._hyg.14570 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (Pi.module.{u1, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Finsupp._hyg.14570 : ι) => R) R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))))) (fun (i : ι) => Semiring.toModule.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) _inst_4) _x) (LinearMap.instFunLikeLinearMap.{u3, u3, max u2 u1, max (max u3 u2) u1} R R (ι -> M) (LinearMap.{u3, u3, max u1 u3, u2} R R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (ι -> R) M (Pi.addCommMonoid.{u1, u3} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (Pi.module.{u1, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Finsupp._hyg.14570 : ι) => R) R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))))) (fun (i : ι) => Semiring.toModule.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) _inst_4) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Pi.addCommMonoid.{u1, u2} ι (fun (ᾰ : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u2} M _inst_2)) (LinearMap.addCommMonoid.{u3, u3, max u1 u3, u2} R R (ι -> R) M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Pi.addCommMonoid.{u1, u3} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (Pi.module.{u1, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Finsupp._hyg.14570 : ι) => R) R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))))) (fun (i : ι) => Semiring.toModule.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) _inst_4 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))))) (Pi.module.{u1, u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Finsupp._hyg.14558 : ι) => M) R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (fun (i : ι) => _inst_4)) (LinearMap.instModuleLinearMapAddCommMonoid.{u3, u3, u3, max u1 u3, u2} R R R (ι -> R) M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Pi.addCommMonoid.{u1, u3} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (Pi.module.{u1, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Finsupp._hyg.14570 : ι) => R) R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))))) (fun (i : ι) => Semiring.toModule.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) _inst_4 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_4 (smulCommClass_self.{u3, u2} R M (CommRing.toCommMonoid.{u3} R _inst_3) (MulActionWithZero.toMulAction.{u3, u2} R M (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))) (NegZeroClass.toZero.{u2} M (SubNegZeroMonoid.toNegZeroClass.{u2} M (SubtractionMonoid.toSubNegZeroMonoid.{u2} M (SubtractionCommMonoid.toSubtractionMonoid.{u2} M (AddCommGroup.toDivisionAddCommMonoid.{u2} M _inst_2))))) (Module.toMulActionWithZero.{u3, u2} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4)))) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))))) (Fintype.total.{u1, u2, u3, u3} ι M R _inst_1 (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4 R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_4 (smulCommClass_self.{u3, u2} R M (CommRing.toCommMonoid.{u3} R _inst_3) (MulActionWithZero.toMulAction.{u3, u2} R M (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))) (NegZeroClass.toZero.{u2} M (SubNegZeroMonoid.toNegZeroClass.{u2} M (SubtractionMonoid.toSubNegZeroMonoid.{u2} M (SubtractionCommMonoid.toSubtractionMonoid.{u2} M (AddCommGroup.toDivisionAddCommMonoid.{u2} M _inst_2))))) (Module.toMulActionWithZero.{u3, u2} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4)))) b) w))
+ forall {ι : Type.{u1}} [_inst_1 : Fintype.{u1} ι] {M : Type.{u2}} [_inst_2 : AddCommGroup.{u2} M] (R : Type.{u3}) [_inst_3 : CommRing.{u3} R] [_inst_4 : Module.{u3, u2} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2)] (b : ι -> M) (f : Module.End.{u3, u2} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (w : ι -> R), Eq.{succ u2} ((fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6193 : ι -> R) => M) w) (FunLike.coe.{max (max (succ u1) (succ u2)) (succ u3), max (succ u1) (succ u3), succ u2} ((fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6193 : Module.End.{u3, u2} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) => LinearMap.{u3, u3, max u1 u3, u2} R R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (ι -> R) M (Pi.addCommMonoid.{u1, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.Charpoly.LinearMap._hyg.392 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u3} R (NonAssocRing.toNonUnitalNonAssocRing.{u3} R (Ring.toNonAssocRing.{u3} R (CommRing.toRing.{u3} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (Pi.module.{u1, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.Charpoly.LinearMap._hyg.392 : ι) => R) R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u3} R (NonAssocRing.toNonUnitalNonAssocRing.{u3} R (Ring.toNonAssocRing.{u3} R (CommRing.toRing.{u3} R _inst_3))))) (fun (i : ι) => Semiring.toModule.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) _inst_4) f) (ι -> R) (fun (_x : ι -> R) => (fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6193 : ι -> R) => M) _x) (LinearMap.instFunLikeLinearMap.{u3, u3, max u1 u3, u2} R R (ι -> R) M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Pi.addCommMonoid.{u1, u3} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u3} R (NonAssocRing.toNonUnitalNonAssocRing.{u3} R (Ring.toNonAssocRing.{u3} R (CommRing.toRing.{u3} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (Pi.module.{u1, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.Charpoly.LinearMap._hyg.392 : ι) => R) R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u3} R (NonAssocRing.toNonUnitalNonAssocRing.{u3} R (Ring.toNonAssocRing.{u3} R (CommRing.toRing.{u3} R _inst_3))))) (fun (i : ι) => Semiring.toModule.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) _inst_4 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))))) (FunLike.coe.{max (max (succ u1) (succ u2)) (succ u3), succ u2, max (max (succ u1) (succ u2)) (succ u3)} (LinearMap.{u3, u3, u2, max u2 u1 u3} R R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (Module.End.{u3, u2} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (LinearMap.{u3, u3, max u1 u3, u2} R R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (ι -> R) M (Pi.addCommMonoid.{u1, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.Charpoly.LinearMap._hyg.392 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u3} R (NonAssocRing.toNonUnitalNonAssocRing.{u3} R (Ring.toNonAssocRing.{u3} R (CommRing.toRing.{u3} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (Pi.module.{u1, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.Charpoly.LinearMap._hyg.392 : ι) => R) R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u3} R (NonAssocRing.toNonUnitalNonAssocRing.{u3} R (Ring.toNonAssocRing.{u3} R (CommRing.toRing.{u3} R _inst_3))))) (fun (i : ι) => Semiring.toModule.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) _inst_4) (LinearMap.addCommMonoid.{u3, u3, u2, u2} R R M M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4 _inst_4 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))))) (LinearMap.addCommMonoid.{u3, u3, max u1 u3, u2} R R (ι -> R) M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Pi.addCommMonoid.{u1, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.Charpoly.LinearMap._hyg.392 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u3} R (NonAssocRing.toNonUnitalNonAssocRing.{u3} R (Ring.toNonAssocRing.{u3} R (CommRing.toRing.{u3} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (Pi.module.{u1, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.Charpoly.LinearMap._hyg.392 : ι) => R) R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u3} R (NonAssocRing.toNonUnitalNonAssocRing.{u3} R (Ring.toNonAssocRing.{u3} R (CommRing.toRing.{u3} R _inst_3))))) (fun (i : ι) => Semiring.toModule.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) _inst_4 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u3, u3, u3, u2, u2} R R R M M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4 _inst_4 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_4 (smulCommClass_self.{u3, u2} R M (CommRing.toCommMonoid.{u3} R _inst_3) (MulActionWithZero.toMulAction.{u3, u2} R M (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))) (NegZeroClass.toZero.{u2} M (SubNegZeroMonoid.toNegZeroClass.{u2} M (SubtractionMonoid.toSubNegZeroMonoid.{u2} M (SubtractionCommMonoid.toSubtractionMonoid.{u2} M (AddCommGroup.toDivisionAddCommMonoid.{u2} M _inst_2))))) (Module.toMulActionWithZero.{u3, u2} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4)))) (LinearMap.instModuleLinearMapAddCommMonoid.{u3, u3, u3, max u1 u3, u2} R R R (ι -> R) M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Pi.addCommMonoid.{u1, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.Charpoly.LinearMap._hyg.392 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u3} R (NonAssocRing.toNonUnitalNonAssocRing.{u3} R (Ring.toNonAssocRing.{u3} R (CommRing.toRing.{u3} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (Pi.module.{u1, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.Charpoly.LinearMap._hyg.392 : ι) => R) R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u3} R (NonAssocRing.toNonUnitalNonAssocRing.{u3} R (Ring.toNonAssocRing.{u3} R (CommRing.toRing.{u3} R _inst_3))))) (fun (i : ι) => Semiring.toModule.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) _inst_4 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_4 (smulCommClass_self.{u3, u2} R M (CommRing.toCommMonoid.{u3} R _inst_3) (MulActionWithZero.toMulAction.{u3, u2} R M (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))) (NegZeroClass.toZero.{u2} M (SubNegZeroMonoid.toNegZeroClass.{u2} M (SubtractionMonoid.toSubNegZeroMonoid.{u2} M (SubtractionCommMonoid.toSubtractionMonoid.{u2} M (AddCommGroup.toDivisionAddCommMonoid.{u2} M _inst_2))))) (Module.toMulActionWithZero.{u3, u2} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4))))) (Module.End.{u3, u2} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (fun (_x : Module.End.{u3, u2} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) => (fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6193 : Module.End.{u3, u2} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) => LinearMap.{u3, u3, max u1 u3, u2} R R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (ι -> R) M (Pi.addCommMonoid.{u1, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.Charpoly.LinearMap._hyg.392 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u3} R (NonAssocRing.toNonUnitalNonAssocRing.{u3} R (Ring.toNonAssocRing.{u3} R (CommRing.toRing.{u3} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (Pi.module.{u1, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.Charpoly.LinearMap._hyg.392 : ι) => R) R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u3} R (NonAssocRing.toNonUnitalNonAssocRing.{u3} R (Ring.toNonAssocRing.{u3} R (CommRing.toRing.{u3} R _inst_3))))) (fun (i : ι) => Semiring.toModule.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) _inst_4) _x) (LinearMap.instFunLikeLinearMap.{u3, u3, u2, max (max u1 u2) u3} R R (Module.End.{u3, u2} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (LinearMap.{u3, u3, max u1 u3, u2} R R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (ι -> R) M (Pi.addCommMonoid.{u1, u3} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u3} R (NonAssocRing.toNonUnitalNonAssocRing.{u3} R (Ring.toNonAssocRing.{u3} R (CommRing.toRing.{u3} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (Pi.module.{u1, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.Charpoly.LinearMap._hyg.392 : ι) => R) R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u3} R (NonAssocRing.toNonUnitalNonAssocRing.{u3} R (Ring.toNonAssocRing.{u3} R (CommRing.toRing.{u3} R _inst_3))))) (fun (i : ι) => Semiring.toModule.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) _inst_4) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (LinearMap.addCommMonoid.{u3, u3, u2, u2} R R M M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4 _inst_4 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))))) (LinearMap.addCommMonoid.{u3, u3, max u1 u3, u2} R R (ι -> R) M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Pi.addCommMonoid.{u1, u3} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u3} R (NonAssocRing.toNonUnitalNonAssocRing.{u3} R (Ring.toNonAssocRing.{u3} R (CommRing.toRing.{u3} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (Pi.module.{u1, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.Charpoly.LinearMap._hyg.392 : ι) => R) R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u3} R (NonAssocRing.toNonUnitalNonAssocRing.{u3} R (Ring.toNonAssocRing.{u3} R (CommRing.toRing.{u3} R _inst_3))))) (fun (i : ι) => Semiring.toModule.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) _inst_4 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u3, u3, u3, u2, u2} R R R M M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4 _inst_4 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_4 (smulCommClass_self.{u3, u2} R M (CommRing.toCommMonoid.{u3} R _inst_3) (MulActionWithZero.toMulAction.{u3, u2} R M (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))) (NegZeroClass.toZero.{u2} M (SubNegZeroMonoid.toNegZeroClass.{u2} M (SubtractionMonoid.toSubNegZeroMonoid.{u2} M (SubtractionCommMonoid.toSubtractionMonoid.{u2} M (AddCommGroup.toDivisionAddCommMonoid.{u2} M _inst_2))))) (Module.toMulActionWithZero.{u3, u2} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4)))) (LinearMap.instModuleLinearMapAddCommMonoid.{u3, u3, u3, max u1 u3, u2} R R R (ι -> R) M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Pi.addCommMonoid.{u1, u3} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u3} R (NonAssocRing.toNonUnitalNonAssocRing.{u3} R (Ring.toNonAssocRing.{u3} R (CommRing.toRing.{u3} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (Pi.module.{u1, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.Charpoly.LinearMap._hyg.392 : ι) => R) R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u3} R (NonAssocRing.toNonUnitalNonAssocRing.{u3} R (Ring.toNonAssocRing.{u3} R (CommRing.toRing.{u3} R _inst_3))))) (fun (i : ι) => Semiring.toModule.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) _inst_4 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_4 (smulCommClass_self.{u3, u2} R M (CommRing.toCommMonoid.{u3} R _inst_3) (MulActionWithZero.toMulAction.{u3, u2} R M (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))) (NegZeroClass.toZero.{u2} M (SubNegZeroMonoid.toNegZeroClass.{u2} M (SubtractionMonoid.toSubNegZeroMonoid.{u2} M (SubtractionCommMonoid.toSubtractionMonoid.{u2} M (AddCommGroup.toDivisionAddCommMonoid.{u2} M _inst_2))))) (Module.toMulActionWithZero.{u3, u2} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4)))) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))))) (PiToModule.fromEnd.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b) f) w) (FunLike.coe.{succ u2, succ u2, succ u2} (Module.End.{u3, u2} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6193 : M) => M) _x) (LinearMap.instFunLikeLinearMap.{u3, u3, u2, u2} R R M M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4 _inst_4 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))))) f (FunLike.coe.{max (max (succ u1) (succ u2)) (succ u3), max (succ u1) (succ u3), succ u2} ((fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6193 : ι -> M) => LinearMap.{u3, u3, max u1 u3, u2} R R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (ι -> R) M (Pi.addCommMonoid.{u1, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Finsupp._hyg.14570 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (Pi.module.{u1, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Finsupp._hyg.14570 : ι) => R) R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))))) (fun (i : ι) => Semiring.toModule.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) _inst_4) b) (ι -> R) (fun (_x : ι -> R) => (fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6193 : ι -> R) => M) _x) (LinearMap.instFunLikeLinearMap.{u3, u3, max u1 u3, u2} R R (ι -> R) M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Pi.addCommMonoid.{u1, u3} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (Pi.module.{u1, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Finsupp._hyg.14570 : ι) => R) R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))))) (fun (i : ι) => Semiring.toModule.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) _inst_4 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))))) (FunLike.coe.{max (max (succ u3) (succ u2)) (succ u1), max (succ u2) (succ u1), max (max (succ u3) (succ u2)) (succ u1)} (LinearMap.{u3, u3, max u1 u2, max u2 u1 u3} R R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (ι -> M) (LinearMap.{u3, u3, max u1 u3, u2} R R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (ι -> R) M (Pi.addCommMonoid.{u1, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Finsupp._hyg.14570 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (Pi.module.{u1, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Finsupp._hyg.14570 : ι) => R) R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))))) (fun (i : ι) => Semiring.toModule.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) _inst_4) (Pi.addCommMonoid.{u1, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Finsupp._hyg.14558 : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u2} M _inst_2)) (LinearMap.addCommMonoid.{u3, u3, max u1 u3, u2} R R (ι -> R) M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Pi.addCommMonoid.{u1, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Finsupp._hyg.14570 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (Pi.module.{u1, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Finsupp._hyg.14570 : ι) => R) R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))))) (fun (i : ι) => Semiring.toModule.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) _inst_4 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))))) (Pi.module.{u1, u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Finsupp._hyg.14558 : ι) => M) R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (fun (i : ι) => _inst_4)) (LinearMap.instModuleLinearMapAddCommMonoid.{u3, u3, u3, max u1 u3, u2} R R R (ι -> R) M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Pi.addCommMonoid.{u1, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Finsupp._hyg.14570 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (Pi.module.{u1, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Finsupp._hyg.14570 : ι) => R) R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))))) (fun (i : ι) => Semiring.toModule.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) _inst_4 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_4 (smulCommClass_self.{u3, u2} R M (CommRing.toCommMonoid.{u3} R _inst_3) (MulActionWithZero.toMulAction.{u3, u2} R M (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))) (NegZeroClass.toZero.{u2} M (SubNegZeroMonoid.toNegZeroClass.{u2} M (SubtractionMonoid.toSubNegZeroMonoid.{u2} M (SubtractionCommMonoid.toSubtractionMonoid.{u2} M (AddCommGroup.toDivisionAddCommMonoid.{u2} M _inst_2))))) (Module.toMulActionWithZero.{u3, u2} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4))))) (ι -> M) (fun (_x : ι -> M) => (fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6193 : ι -> M) => LinearMap.{u3, u3, max u1 u3, u2} R R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (ι -> R) M (Pi.addCommMonoid.{u1, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Finsupp._hyg.14570 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (Pi.module.{u1, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Finsupp._hyg.14570 : ι) => R) R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))))) (fun (i : ι) => Semiring.toModule.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) _inst_4) _x) (LinearMap.instFunLikeLinearMap.{u3, u3, max u2 u1, max (max u3 u2) u1} R R (ι -> M) (LinearMap.{u3, u3, max u1 u3, u2} R R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (ι -> R) M (Pi.addCommMonoid.{u1, u3} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (Pi.module.{u1, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Finsupp._hyg.14570 : ι) => R) R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))))) (fun (i : ι) => Semiring.toModule.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) _inst_4) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Pi.addCommMonoid.{u1, u2} ι (fun (ᾰ : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u2} M _inst_2)) (LinearMap.addCommMonoid.{u3, u3, max u1 u3, u2} R R (ι -> R) M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Pi.addCommMonoid.{u1, u3} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (Pi.module.{u1, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Finsupp._hyg.14570 : ι) => R) R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))))) (fun (i : ι) => Semiring.toModule.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) _inst_4 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))))) (Pi.module.{u1, u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Finsupp._hyg.14558 : ι) => M) R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (fun (i : ι) => _inst_4)) (LinearMap.instModuleLinearMapAddCommMonoid.{u3, u3, u3, max u1 u3, u2} R R R (ι -> R) M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Pi.addCommMonoid.{u1, u3} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (Pi.module.{u1, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Finsupp._hyg.14570 : ι) => R) R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))))) (fun (i : ι) => Semiring.toModule.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) _inst_4 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_4 (smulCommClass_self.{u3, u2} R M (CommRing.toCommMonoid.{u3} R _inst_3) (MulActionWithZero.toMulAction.{u3, u2} R M (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))) (NegZeroClass.toZero.{u2} M (SubNegZeroMonoid.toNegZeroClass.{u2} M (SubtractionMonoid.toSubNegZeroMonoid.{u2} M (SubtractionCommMonoid.toSubtractionMonoid.{u2} M (AddCommGroup.toDivisionAddCommMonoid.{u2} M _inst_2))))) (Module.toMulActionWithZero.{u3, u2} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4)))) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))))) (Fintype.total.{u1, u2, u3, u3} ι M R _inst_1 (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4 R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_4 (smulCommClass_self.{u3, u2} R M (CommRing.toCommMonoid.{u3} R _inst_3) (MulActionWithZero.toMulAction.{u3, u2} R M (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))) (NegZeroClass.toZero.{u2} M (SubNegZeroMonoid.toNegZeroClass.{u2} M (SubtractionMonoid.toSubNegZeroMonoid.{u2} M (SubtractionCommMonoid.toSubtractionMonoid.{u2} M (AddCommGroup.toDivisionAddCommMonoid.{u2} M _inst_2))))) (Module.toMulActionWithZero.{u3, u2} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4)))) b) w))
Case conversion may be inaccurate. Consider using '#align pi_to_module.from_End_apply PiToModule.fromEnd_applyₓ'. -/
theorem PiToModule.fromEnd_apply (f : Module.End R M) (w : ι → R) :
PiToModule.fromEnd R b f w = f (Fintype.total R R b w) :=
@@ -94,7 +94,7 @@ theorem PiToModule.fromEnd_apply (f : Module.End R M) (w : ι → R) :
lean 3 declaration is
forall {ι : Type.{u1}} [_inst_1 : Fintype.{u1} ι] {M : Type.{u2}} [_inst_2 : AddCommGroup.{u2} M] (R : Type.{u3}) [_inst_3 : CommRing.{u3} R] [_inst_4 : Module.{u3, u2} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2)] (b : ι -> M) [_inst_5 : DecidableEq.{succ u1} ι] (f : Module.End.{u3, u2} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (i : ι), Eq.{succ u2} M (coeFn.{max (succ (max u1 u3)) (succ u2), max (succ (max u1 u3)) (succ u2)} (LinearMap.{u3, u3, max u1 u3, u2} R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) (ι -> R) M (Pi.addCommMonoid.{u1, u3} ι (fun (ᾰ : ι) => R) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} R (NonUnitalNonAssocRing.toAddCommGroup.{u3} R (NonAssocRing.toNonUnitalNonAssocRing.{u3} R (Ring.toNonAssocRing.{u3} R (CommRing.toRing.{u3} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (Pi.Function.module.{u1, u3, u3} ι R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u3} R (NonUnitalNonAssocRing.toAddCommGroup.{u3} R (NonAssocRing.toNonUnitalNonAssocRing.{u3} R (Ring.toNonAssocRing.{u3} R (CommRing.toRing.{u3} R _inst_3))))) (Semiring.toModule.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) _inst_4) (fun (_x : LinearMap.{u3, u3, max u1 u3, u2} R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) (ι -> R) M (Pi.addCommMonoid.{u1, u3} ι (fun (ᾰ : ι) => R) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} R (NonUnitalNonAssocRing.toAddCommGroup.{u3} R (NonAssocRing.toNonUnitalNonAssocRing.{u3} R (Ring.toNonAssocRing.{u3} R (CommRing.toRing.{u3} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (Pi.Function.module.{u1, u3, u3} ι R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u3} R (NonUnitalNonAssocRing.toAddCommGroup.{u3} R (NonAssocRing.toNonUnitalNonAssocRing.{u3} R (Ring.toNonAssocRing.{u3} R (CommRing.toRing.{u3} R _inst_3))))) (Semiring.toModule.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) _inst_4) => (ι -> R) -> M) (LinearMap.hasCoeToFun.{u3, u3, max u1 u3, u2} R R (ι -> R) M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Pi.addCommMonoid.{u1, u3} ι (fun (ᾰ : ι) => R) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} R (NonUnitalNonAssocRing.toAddCommGroup.{u3} R (NonAssocRing.toNonUnitalNonAssocRing.{u3} R (Ring.toNonAssocRing.{u3} R (CommRing.toRing.{u3} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (Pi.Function.module.{u1, u3, u3} ι R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u3} R (NonUnitalNonAssocRing.toAddCommGroup.{u3} R (NonAssocRing.toNonUnitalNonAssocRing.{u3} R (Ring.toNonAssocRing.{u3} R (CommRing.toRing.{u3} R _inst_3))))) (Semiring.toModule.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) _inst_4 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3))))) (coeFn.{max (succ u2) (succ (max (max u1 u3) u2)), max (succ u2) (succ (max (max u1 u3) u2))} (LinearMap.{u3, u3, u2, max (max u1 u3) u2} R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) (Module.End.{u3, u2} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (LinearMap.{u3, u3, max u1 u3, u2} R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) (ι -> R) M (Pi.addCommMonoid.{u1, u3} ι (fun (ᾰ : ι) => R) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} R (NonUnitalNonAssocRing.toAddCommGroup.{u3} R (NonAssocRing.toNonUnitalNonAssocRing.{u3} R (Ring.toNonAssocRing.{u3} R (CommRing.toRing.{u3} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (Pi.Function.module.{u1, u3, u3} ι R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u3} R (NonUnitalNonAssocRing.toAddCommGroup.{u3} R (NonAssocRing.toNonUnitalNonAssocRing.{u3} R (Ring.toNonAssocRing.{u3} R (CommRing.toRing.{u3} R _inst_3))))) (Semiring.toModule.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) _inst_4) (LinearMap.addCommMonoid.{u3, u3, u2, u2} R R M M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4 _inst_4 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3))))) (LinearMap.addCommMonoid.{u3, u3, max u1 u3, u2} R R (ι -> R) M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Pi.addCommMonoid.{u1, u3} ι (fun (ᾰ : ι) => R) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} R (NonUnitalNonAssocRing.toAddCommGroup.{u3} R (NonAssocRing.toNonUnitalNonAssocRing.{u3} R (Ring.toNonAssocRing.{u3} R (CommRing.toRing.{u3} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (Pi.Function.module.{u1, u3, u3} ι R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u3} R (NonUnitalNonAssocRing.toAddCommGroup.{u3} R (NonAssocRing.toNonUnitalNonAssocRing.{u3} R (Ring.toNonAssocRing.{u3} R (CommRing.toRing.{u3} R _inst_3))))) (Semiring.toModule.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) _inst_4 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3))))) (LinearMap.module.{u3, u3, u3, u2, u2} R R R M M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4 _inst_4 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) _inst_4 (PiToModule.fromEnd._proof_1.{u2, u3} M _inst_2 R _inst_3 _inst_4)) (LinearMap.module.{u3, u3, u3, max u1 u3, u2} R R R (ι -> R) M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Pi.addCommMonoid.{u1, u3} ι (fun (ᾰ : ι) => R) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} R (NonUnitalNonAssocRing.toAddCommGroup.{u3} R (NonAssocRing.toNonUnitalNonAssocRing.{u3} R (Ring.toNonAssocRing.{u3} R (CommRing.toRing.{u3} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (Pi.Function.module.{u1, u3, u3} ι R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u3} R (NonUnitalNonAssocRing.toAddCommGroup.{u3} R (NonAssocRing.toNonUnitalNonAssocRing.{u3} R (Ring.toNonAssocRing.{u3} R (CommRing.toRing.{u3} R _inst_3))))) (Semiring.toModule.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) _inst_4 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) _inst_4 (PiToModule.fromEnd._proof_2.{u2, u3} M _inst_2 R _inst_3 _inst_4))) (fun (_x : LinearMap.{u3, u3, u2, max (max u1 u3) u2} R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) (Module.End.{u3, u2} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (LinearMap.{u3, u3, max u1 u3, u2} R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) (ι -> R) M (Pi.addCommMonoid.{u1, u3} ι (fun (ᾰ : ι) => R) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} R (NonUnitalNonAssocRing.toAddCommGroup.{u3} R (NonAssocRing.toNonUnitalNonAssocRing.{u3} R (Ring.toNonAssocRing.{u3} R (CommRing.toRing.{u3} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (Pi.Function.module.{u1, u3, u3} ι R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u3} R (NonUnitalNonAssocRing.toAddCommGroup.{u3} R (NonAssocRing.toNonUnitalNonAssocRing.{u3} R (Ring.toNonAssocRing.{u3} R (CommRing.toRing.{u3} R _inst_3))))) (Semiring.toModule.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) _inst_4) (LinearMap.addCommMonoid.{u3, u3, u2, u2} R R M M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4 _inst_4 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3))))) (LinearMap.addCommMonoid.{u3, u3, max u1 u3, u2} R R (ι -> R) M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Pi.addCommMonoid.{u1, u3} ι (fun (ᾰ : ι) => R) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} R (NonUnitalNonAssocRing.toAddCommGroup.{u3} R (NonAssocRing.toNonUnitalNonAssocRing.{u3} R (Ring.toNonAssocRing.{u3} R (CommRing.toRing.{u3} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (Pi.Function.module.{u1, u3, u3} ι R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u3} R (NonUnitalNonAssocRing.toAddCommGroup.{u3} R (NonAssocRing.toNonUnitalNonAssocRing.{u3} R (Ring.toNonAssocRing.{u3} R (CommRing.toRing.{u3} R _inst_3))))) (Semiring.toModule.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) _inst_4 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3))))) (LinearMap.module.{u3, u3, u3, u2, u2} R R R M M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4 _inst_4 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) _inst_4 (PiToModule.fromEnd._proof_1.{u2, u3} M _inst_2 R _inst_3 _inst_4)) (LinearMap.module.{u3, u3, u3, max u1 u3, u2} R R R (ι -> R) M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Pi.addCommMonoid.{u1, u3} ι (fun (ᾰ : ι) => R) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} R (NonUnitalNonAssocRing.toAddCommGroup.{u3} R (NonAssocRing.toNonUnitalNonAssocRing.{u3} R (Ring.toNonAssocRing.{u3} R (CommRing.toRing.{u3} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (Pi.Function.module.{u1, u3, u3} ι R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u3} R (NonUnitalNonAssocRing.toAddCommGroup.{u3} R (NonAssocRing.toNonUnitalNonAssocRing.{u3} R (Ring.toNonAssocRing.{u3} R (CommRing.toRing.{u3} R _inst_3))))) (Semiring.toModule.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) _inst_4 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) _inst_4 (PiToModule.fromEnd._proof_2.{u2, u3} M _inst_2 R _inst_3 _inst_4))) => (Module.End.{u3, u2} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) -> (LinearMap.{u3, u3, max u1 u3, u2} R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) (ι -> R) M (Pi.addCommMonoid.{u1, u3} ι (fun (ᾰ : ι) => R) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} R (NonUnitalNonAssocRing.toAddCommGroup.{u3} R (NonAssocRing.toNonUnitalNonAssocRing.{u3} R (Ring.toNonAssocRing.{u3} R (CommRing.toRing.{u3} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (Pi.Function.module.{u1, u3, u3} ι R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u3} R (NonUnitalNonAssocRing.toAddCommGroup.{u3} R (NonAssocRing.toNonUnitalNonAssocRing.{u3} R (Ring.toNonAssocRing.{u3} R (CommRing.toRing.{u3} R _inst_3))))) (Semiring.toModule.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) _inst_4)) (LinearMap.hasCoeToFun.{u3, u3, u2, max (max u1 u3) u2} R R (Module.End.{u3, u2} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (LinearMap.{u3, u3, max u1 u3, u2} R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) (ι -> R) M (Pi.addCommMonoid.{u1, u3} ι (fun (ᾰ : ι) => R) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} R (NonUnitalNonAssocRing.toAddCommGroup.{u3} R (NonAssocRing.toNonUnitalNonAssocRing.{u3} R (Ring.toNonAssocRing.{u3} R (CommRing.toRing.{u3} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (Pi.Function.module.{u1, u3, u3} ι R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u3} R (NonUnitalNonAssocRing.toAddCommGroup.{u3} R (NonAssocRing.toNonUnitalNonAssocRing.{u3} R (Ring.toNonAssocRing.{u3} R (CommRing.toRing.{u3} R _inst_3))))) (Semiring.toModule.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) _inst_4) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (LinearMap.addCommMonoid.{u3, u3, u2, u2} R R M M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4 _inst_4 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3))))) (LinearMap.addCommMonoid.{u3, u3, max u1 u3, u2} R R (ι -> R) M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Pi.addCommMonoid.{u1, u3} ι (fun (ᾰ : ι) => R) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} R (NonUnitalNonAssocRing.toAddCommGroup.{u3} R (NonAssocRing.toNonUnitalNonAssocRing.{u3} R (Ring.toNonAssocRing.{u3} R (CommRing.toRing.{u3} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (Pi.Function.module.{u1, u3, u3} ι R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u3} R (NonUnitalNonAssocRing.toAddCommGroup.{u3} R (NonAssocRing.toNonUnitalNonAssocRing.{u3} R (Ring.toNonAssocRing.{u3} R (CommRing.toRing.{u3} R _inst_3))))) (Semiring.toModule.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) _inst_4 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3))))) (LinearMap.module.{u3, u3, u3, u2, u2} R R R M M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4 _inst_4 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) _inst_4 (PiToModule.fromEnd._proof_1.{u2, u3} M _inst_2 R _inst_3 _inst_4)) (LinearMap.module.{u3, u3, u3, max u1 u3, u2} R R R (ι -> R) M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Pi.addCommMonoid.{u1, u3} ι (fun (ᾰ : ι) => R) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} R (NonUnitalNonAssocRing.toAddCommGroup.{u3} R (NonAssocRing.toNonUnitalNonAssocRing.{u3} R (Ring.toNonAssocRing.{u3} R (CommRing.toRing.{u3} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (Pi.Function.module.{u1, u3, u3} ι R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u3} R (NonUnitalNonAssocRing.toAddCommGroup.{u3} R (NonAssocRing.toNonUnitalNonAssocRing.{u3} R (Ring.toNonAssocRing.{u3} R (CommRing.toRing.{u3} R _inst_3))))) (Semiring.toModule.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) _inst_4 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) _inst_4 (PiToModule.fromEnd._proof_2.{u2, u3} M _inst_2 R _inst_3 _inst_4)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3))))) (PiToModule.fromEnd.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b) f) (Pi.single.{u1, u3} ι (fun (ᾰ : ι) => R) (fun (a : ι) (b : ι) => _inst_5 a b) (fun (i : ι) => MulZeroClass.toHasZero.{u3} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u3} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u3} R (NonAssocRing.toNonUnitalNonAssocRing.{u3} R (Ring.toNonAssocRing.{u3} R (CommRing.toRing.{u3} R _inst_3)))))) i (OfNat.ofNat.{u3} R 1 (OfNat.mk.{u3} R 1 (One.one.{u3} R (AddMonoidWithOne.toOne.{u3} R (AddGroupWithOne.toAddMonoidWithOne.{u3} R (AddCommGroupWithOne.toAddGroupWithOne.{u3} R (Ring.toAddCommGroupWithOne.{u3} R (CommRing.toRing.{u3} R _inst_3)))))))))) (coeFn.{succ u2, succ u2} (Module.End.{u3, u2} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (fun (_x : LinearMap.{u3, u3, u2, u2} R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4 _inst_4) => M -> M) (LinearMap.hasCoeToFun.{u3, u3, u2, u2} R R M M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4 _inst_4 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3))))) f (b i))
but is expected to have type
- forall {ι : Type.{u3}} [_inst_1 : Fintype.{u3} ι] {M : Type.{u1}} [_inst_2 : AddCommGroup.{u1} M] (R : Type.{u2}) [_inst_3 : CommRing.{u2} R] [_inst_4 : Module.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2)] (b : ι -> M) [_inst_5 : DecidableEq.{succ u3} ι] (f : Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (i : ι), Eq.{succ u1} ((fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6191 : ι -> R) => M) (Pi.single.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.Charpoly.LinearMap._hyg.392 : ι) => R) (fun (a : ι) (b : ι) => _inst_5 a b) (fun (i : ι) => CommMonoidWithZero.toZero.{u2} R (CommSemiring.toCommMonoidWithZero.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) i (OfNat.ofNat.{u2} R 1 (One.toOfNat1.{u2} R (Semiring.toOne.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))))) (FunLike.coe.{max (max (succ u3) (succ u1)) (succ u2), max (succ u3) (succ u2), succ u1} ((fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6191 : Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) => LinearMap.{u2, u2, max u3 u2, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (ι -> R) M (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.Charpoly.LinearMap._hyg.392 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.Charpoly.LinearMap._hyg.392 : ι) => R) R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_3))))) (fun (i : ι) => Semiring.toModule.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) _inst_4) f) (ι -> R) (fun (_x : ι -> R) => (fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6191 : ι -> R) => M) _x) (LinearMap.instFunLikeLinearMap.{u2, u2, max u3 u2, u1} R R (ι -> R) M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Pi.addCommMonoid.{u3, u2} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.Charpoly.LinearMap._hyg.392 : ι) => R) R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_3))))) (fun (i : ι) => Semiring.toModule.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) _inst_4 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) (FunLike.coe.{max (max (succ u3) (succ u1)) (succ u2), succ u1, max (max (succ u3) (succ u1)) (succ u2)} (LinearMap.{u2, u2, u1, max u1 u3 u2} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (LinearMap.{u2, u2, max u3 u2, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (ι -> R) M (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.Charpoly.LinearMap._hyg.392 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.Charpoly.LinearMap._hyg.392 : ι) => R) R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_3))))) (fun (i : ι) => Semiring.toModule.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) _inst_4) (LinearMap.addCommMonoid.{u2, u2, u1, u1} R R M M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4 _inst_4 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) (LinearMap.addCommMonoid.{u2, u2, max u3 u2, u1} R R (ι -> R) M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.Charpoly.LinearMap._hyg.392 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.Charpoly.LinearMap._hyg.392 : ι) => R) R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_3))))) (fun (i : ι) => Semiring.toModule.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) _inst_4 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u2, u2, u2, u1, u1} R R R M M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4 _inst_4 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_4 (smulCommClass_self.{u2, u1} R M (CommRing.toCommMonoid.{u2} R _inst_3) (MulActionWithZero.toMulAction.{u2, u1} R M (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (NegZeroClass.toZero.{u1} M (SubNegZeroMonoid.toNegZeroClass.{u1} M (SubtractionMonoid.toSubNegZeroMonoid.{u1} M (SubtractionCommMonoid.toSubtractionMonoid.{u1} M (AddCommGroup.toDivisionAddCommMonoid.{u1} M _inst_2))))) (Module.toMulActionWithZero.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4)))) (LinearMap.instModuleLinearMapAddCommMonoid.{u2, u2, u2, max u3 u2, u1} R R R (ι -> R) M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.Charpoly.LinearMap._hyg.392 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.Charpoly.LinearMap._hyg.392 : ι) => R) R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_3))))) (fun (i : ι) => Semiring.toModule.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) _inst_4 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_4 (smulCommClass_self.{u2, u1} R M (CommRing.toCommMonoid.{u2} R _inst_3) (MulActionWithZero.toMulAction.{u2, u1} R M (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (NegZeroClass.toZero.{u1} M (SubNegZeroMonoid.toNegZeroClass.{u1} M (SubtractionMonoid.toSubNegZeroMonoid.{u1} M (SubtractionCommMonoid.toSubtractionMonoid.{u1} M (AddCommGroup.toDivisionAddCommMonoid.{u1} M _inst_2))))) (Module.toMulActionWithZero.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4))))) (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (fun (_x : Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) => (fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6191 : Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) => LinearMap.{u2, u2, max u3 u2, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (ι -> R) M (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.Charpoly.LinearMap._hyg.392 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.Charpoly.LinearMap._hyg.392 : ι) => R) R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_3))))) (fun (i : ι) => Semiring.toModule.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) _inst_4) _x) (LinearMap.instFunLikeLinearMap.{u2, u2, u1, max (max u3 u1) u2} R R (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (LinearMap.{u2, u2, max u3 u2, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (ι -> R) M (Pi.addCommMonoid.{u3, u2} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.Charpoly.LinearMap._hyg.392 : ι) => R) R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_3))))) (fun (i : ι) => Semiring.toModule.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) _inst_4) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (LinearMap.addCommMonoid.{u2, u2, u1, u1} R R M M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4 _inst_4 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) (LinearMap.addCommMonoid.{u2, u2, max u3 u2, u1} R R (ι -> R) M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Pi.addCommMonoid.{u3, u2} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.Charpoly.LinearMap._hyg.392 : ι) => R) R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_3))))) (fun (i : ι) => Semiring.toModule.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) _inst_4 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u2, u2, u2, u1, u1} R R R M M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4 _inst_4 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_4 (smulCommClass_self.{u2, u1} R M (CommRing.toCommMonoid.{u2} R _inst_3) (MulActionWithZero.toMulAction.{u2, u1} R M (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (NegZeroClass.toZero.{u1} M (SubNegZeroMonoid.toNegZeroClass.{u1} M (SubtractionMonoid.toSubNegZeroMonoid.{u1} M (SubtractionCommMonoid.toSubtractionMonoid.{u1} M (AddCommGroup.toDivisionAddCommMonoid.{u1} M _inst_2))))) (Module.toMulActionWithZero.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4)))) (LinearMap.instModuleLinearMapAddCommMonoid.{u2, u2, u2, max u3 u2, u1} R R R (ι -> R) M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Pi.addCommMonoid.{u3, u2} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.Charpoly.LinearMap._hyg.392 : ι) => R) R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_3))))) (fun (i : ι) => Semiring.toModule.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) _inst_4 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_4 (smulCommClass_self.{u2, u1} R M (CommRing.toCommMonoid.{u2} R _inst_3) (MulActionWithZero.toMulAction.{u2, u1} R M (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (NegZeroClass.toZero.{u1} M (SubNegZeroMonoid.toNegZeroClass.{u1} M (SubtractionMonoid.toSubNegZeroMonoid.{u1} M (SubtractionCommMonoid.toSubtractionMonoid.{u1} M (AddCommGroup.toDivisionAddCommMonoid.{u1} M _inst_2))))) (Module.toMulActionWithZero.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) (PiToModule.fromEnd.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b) f) (Pi.single.{u3, u2} ι (fun (ᾰ : ι) => R) (fun (a : ι) (b : ι) => _inst_5 a b) (fun (i : ι) => CommMonoidWithZero.toZero.{u2} R (CommSemiring.toCommMonoidWithZero.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) i (OfNat.ofNat.{u2} R 1 (One.toOfNat1.{u2} R (Semiring.toOne.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))))) (FunLike.coe.{succ u1, succ u1, succ u1} (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6191 : M) => M) _x) (LinearMap.instFunLikeLinearMap.{u2, u2, u1, u1} R R M M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4 _inst_4 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) f (b i))
+ forall {ι : Type.{u3}} [_inst_1 : Fintype.{u3} ι] {M : Type.{u1}} [_inst_2 : AddCommGroup.{u1} M] (R : Type.{u2}) [_inst_3 : CommRing.{u2} R] [_inst_4 : Module.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2)] (b : ι -> M) [_inst_5 : DecidableEq.{succ u3} ι] (f : Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (i : ι), Eq.{succ u1} ((fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6193 : ι -> R) => M) (Pi.single.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.Charpoly.LinearMap._hyg.392 : ι) => R) (fun (a : ι) (b : ι) => _inst_5 a b) (fun (i : ι) => CommMonoidWithZero.toZero.{u2} R (CommSemiring.toCommMonoidWithZero.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) i (OfNat.ofNat.{u2} R 1 (One.toOfNat1.{u2} R (Semiring.toOne.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))))) (FunLike.coe.{max (max (succ u3) (succ u1)) (succ u2), max (succ u3) (succ u2), succ u1} ((fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6193 : Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) => LinearMap.{u2, u2, max u3 u2, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (ι -> R) M (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.Charpoly.LinearMap._hyg.392 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.Charpoly.LinearMap._hyg.392 : ι) => R) R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_3))))) (fun (i : ι) => Semiring.toModule.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) _inst_4) f) (ι -> R) (fun (_x : ι -> R) => (fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6193 : ι -> R) => M) _x) (LinearMap.instFunLikeLinearMap.{u2, u2, max u3 u2, u1} R R (ι -> R) M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Pi.addCommMonoid.{u3, u2} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.Charpoly.LinearMap._hyg.392 : ι) => R) R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_3))))) (fun (i : ι) => Semiring.toModule.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) _inst_4 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) (FunLike.coe.{max (max (succ u3) (succ u1)) (succ u2), succ u1, max (max (succ u3) (succ u1)) (succ u2)} (LinearMap.{u2, u2, u1, max u1 u3 u2} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (LinearMap.{u2, u2, max u3 u2, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (ι -> R) M (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.Charpoly.LinearMap._hyg.392 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.Charpoly.LinearMap._hyg.392 : ι) => R) R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_3))))) (fun (i : ι) => Semiring.toModule.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) _inst_4) (LinearMap.addCommMonoid.{u2, u2, u1, u1} R R M M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4 _inst_4 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) (LinearMap.addCommMonoid.{u2, u2, max u3 u2, u1} R R (ι -> R) M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.Charpoly.LinearMap._hyg.392 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.Charpoly.LinearMap._hyg.392 : ι) => R) R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_3))))) (fun (i : ι) => Semiring.toModule.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) _inst_4 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u2, u2, u2, u1, u1} R R R M M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4 _inst_4 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_4 (smulCommClass_self.{u2, u1} R M (CommRing.toCommMonoid.{u2} R _inst_3) (MulActionWithZero.toMulAction.{u2, u1} R M (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (NegZeroClass.toZero.{u1} M (SubNegZeroMonoid.toNegZeroClass.{u1} M (SubtractionMonoid.toSubNegZeroMonoid.{u1} M (SubtractionCommMonoid.toSubtractionMonoid.{u1} M (AddCommGroup.toDivisionAddCommMonoid.{u1} M _inst_2))))) (Module.toMulActionWithZero.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4)))) (LinearMap.instModuleLinearMapAddCommMonoid.{u2, u2, u2, max u3 u2, u1} R R R (ι -> R) M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.Charpoly.LinearMap._hyg.392 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.Charpoly.LinearMap._hyg.392 : ι) => R) R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_3))))) (fun (i : ι) => Semiring.toModule.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) _inst_4 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_4 (smulCommClass_self.{u2, u1} R M (CommRing.toCommMonoid.{u2} R _inst_3) (MulActionWithZero.toMulAction.{u2, u1} R M (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (NegZeroClass.toZero.{u1} M (SubNegZeroMonoid.toNegZeroClass.{u1} M (SubtractionMonoid.toSubNegZeroMonoid.{u1} M (SubtractionCommMonoid.toSubtractionMonoid.{u1} M (AddCommGroup.toDivisionAddCommMonoid.{u1} M _inst_2))))) (Module.toMulActionWithZero.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4))))) (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (fun (_x : Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) => (fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6193 : Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) => LinearMap.{u2, u2, max u3 u2, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (ι -> R) M (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.Charpoly.LinearMap._hyg.392 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.Charpoly.LinearMap._hyg.392 : ι) => R) R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_3))))) (fun (i : ι) => Semiring.toModule.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) _inst_4) _x) (LinearMap.instFunLikeLinearMap.{u2, u2, u1, max (max u3 u1) u2} R R (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (LinearMap.{u2, u2, max u3 u2, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (ι -> R) M (Pi.addCommMonoid.{u3, u2} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.Charpoly.LinearMap._hyg.392 : ι) => R) R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_3))))) (fun (i : ι) => Semiring.toModule.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) _inst_4) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (LinearMap.addCommMonoid.{u2, u2, u1, u1} R R M M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4 _inst_4 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) (LinearMap.addCommMonoid.{u2, u2, max u3 u2, u1} R R (ι -> R) M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Pi.addCommMonoid.{u3, u2} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.Charpoly.LinearMap._hyg.392 : ι) => R) R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_3))))) (fun (i : ι) => Semiring.toModule.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) _inst_4 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u2, u2, u2, u1, u1} R R R M M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4 _inst_4 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_4 (smulCommClass_self.{u2, u1} R M (CommRing.toCommMonoid.{u2} R _inst_3) (MulActionWithZero.toMulAction.{u2, u1} R M (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (NegZeroClass.toZero.{u1} M (SubNegZeroMonoid.toNegZeroClass.{u1} M (SubtractionMonoid.toSubNegZeroMonoid.{u1} M (SubtractionCommMonoid.toSubtractionMonoid.{u1} M (AddCommGroup.toDivisionAddCommMonoid.{u1} M _inst_2))))) (Module.toMulActionWithZero.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4)))) (LinearMap.instModuleLinearMapAddCommMonoid.{u2, u2, u2, max u3 u2, u1} R R R (ι -> R) M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Pi.addCommMonoid.{u3, u2} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.Charpoly.LinearMap._hyg.392 : ι) => R) R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_3))))) (fun (i : ι) => Semiring.toModule.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) _inst_4 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_4 (smulCommClass_self.{u2, u1} R M (CommRing.toCommMonoid.{u2} R _inst_3) (MulActionWithZero.toMulAction.{u2, u1} R M (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (NegZeroClass.toZero.{u1} M (SubNegZeroMonoid.toNegZeroClass.{u1} M (SubtractionMonoid.toSubNegZeroMonoid.{u1} M (SubtractionCommMonoid.toSubtractionMonoid.{u1} M (AddCommGroup.toDivisionAddCommMonoid.{u1} M _inst_2))))) (Module.toMulActionWithZero.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) (PiToModule.fromEnd.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b) f) (Pi.single.{u3, u2} ι (fun (ᾰ : ι) => R) (fun (a : ι) (b : ι) => _inst_5 a b) (fun (i : ι) => CommMonoidWithZero.toZero.{u2} R (CommSemiring.toCommMonoidWithZero.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) i (OfNat.ofNat.{u2} R 1 (One.toOfNat1.{u2} R (Semiring.toOne.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))))) (FunLike.coe.{succ u1, succ u1, succ u1} (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6193 : M) => M) _x) (LinearMap.instFunLikeLinearMap.{u2, u2, u1, u1} R R M M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4 _inst_4 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) f (b i))
Case conversion may be inaccurate. Consider using '#align pi_to_module.from_End_apply_single_one PiToModule.fromEnd_apply_single_oneₓ'. -/
theorem PiToModule.fromEnd_apply_single_one [DecidableEq ι] (f : Module.End R M) (i : ι) :
PiToModule.fromEnd R b f (Pi.single i 1) = f (b i) :=
@@ -109,7 +109,7 @@ theorem PiToModule.fromEnd_apply_single_one [DecidableEq ι] (f : Module.End R M
lean 3 declaration is
forall {ι : Type.{u1}} [_inst_1 : Fintype.{u1} ι] {M : Type.{u2}} [_inst_2 : AddCommGroup.{u2} M] (R : Type.{u3}) [_inst_3 : CommRing.{u3} R] [_inst_4 : Module.{u3, u2} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2)] (b : ι -> M), (Eq.{succ u2} (Submodule.{u3, u2} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (Submodule.span.{u3, u2} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4 (Set.range.{u2, succ u1} M ι b)) (Top.top.{u2} (Submodule.{u3, u2} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (Submodule.hasTop.{u3, u2} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4))) -> (Function.Injective.{succ u2, max (succ (max u1 u3)) (succ u2)} (Module.End.{u3, u2} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (LinearMap.{u3, u3, max u1 u3, u2} R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) (ι -> R) M (Pi.addCommMonoid.{u1, u3} ι (fun (ᾰ : ι) => R) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} R (NonUnitalNonAssocRing.toAddCommGroup.{u3} R (NonAssocRing.toNonUnitalNonAssocRing.{u3} R (Ring.toNonAssocRing.{u3} R (CommRing.toRing.{u3} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (Pi.Function.module.{u1, u3, u3} ι R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u3} R (NonUnitalNonAssocRing.toAddCommGroup.{u3} R (NonAssocRing.toNonUnitalNonAssocRing.{u3} R (Ring.toNonAssocRing.{u3} R (CommRing.toRing.{u3} R _inst_3))))) (Semiring.toModule.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) _inst_4) (coeFn.{max (succ u2) (succ (max (max u1 u3) u2)), max (succ u2) (succ (max (max u1 u3) u2))} (LinearMap.{u3, u3, u2, max (max u1 u3) u2} R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) (Module.End.{u3, u2} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (LinearMap.{u3, u3, max u1 u3, u2} R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) (ι -> R) M (Pi.addCommMonoid.{u1, u3} ι (fun (ᾰ : ι) => R) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} R (NonUnitalNonAssocRing.toAddCommGroup.{u3} R (NonAssocRing.toNonUnitalNonAssocRing.{u3} R (Ring.toNonAssocRing.{u3} R (CommRing.toRing.{u3} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (Pi.Function.module.{u1, u3, u3} ι R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u3} R (NonUnitalNonAssocRing.toAddCommGroup.{u3} R (NonAssocRing.toNonUnitalNonAssocRing.{u3} R (Ring.toNonAssocRing.{u3} R (CommRing.toRing.{u3} R _inst_3))))) (Semiring.toModule.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) _inst_4) (LinearMap.addCommMonoid.{u3, u3, u2, u2} R R M M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4 _inst_4 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3))))) (LinearMap.addCommMonoid.{u3, u3, max u1 u3, u2} R R (ι -> R) M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Pi.addCommMonoid.{u1, u3} ι (fun (ᾰ : ι) => R) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} R (NonUnitalNonAssocRing.toAddCommGroup.{u3} R (NonAssocRing.toNonUnitalNonAssocRing.{u3} R (Ring.toNonAssocRing.{u3} R (CommRing.toRing.{u3} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (Pi.Function.module.{u1, u3, u3} ι R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u3} R (NonUnitalNonAssocRing.toAddCommGroup.{u3} R (NonAssocRing.toNonUnitalNonAssocRing.{u3} R (Ring.toNonAssocRing.{u3} R (CommRing.toRing.{u3} R _inst_3))))) (Semiring.toModule.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) _inst_4 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3))))) (LinearMap.module.{u3, u3, u3, u2, u2} R R R M M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4 _inst_4 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) _inst_4 (PiToModule.fromEnd._proof_1.{u2, u3} M _inst_2 R _inst_3 _inst_4)) (LinearMap.module.{u3, u3, u3, max u1 u3, u2} R R R (ι -> R) M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Pi.addCommMonoid.{u1, u3} ι (fun (ᾰ : ι) => R) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} R (NonUnitalNonAssocRing.toAddCommGroup.{u3} R (NonAssocRing.toNonUnitalNonAssocRing.{u3} R (Ring.toNonAssocRing.{u3} R (CommRing.toRing.{u3} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (Pi.Function.module.{u1, u3, u3} ι R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u3} R (NonUnitalNonAssocRing.toAddCommGroup.{u3} R (NonAssocRing.toNonUnitalNonAssocRing.{u3} R (Ring.toNonAssocRing.{u3} R (CommRing.toRing.{u3} R _inst_3))))) (Semiring.toModule.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) _inst_4 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) _inst_4 (PiToModule.fromEnd._proof_2.{u2, u3} M _inst_2 R _inst_3 _inst_4))) (fun (_x : LinearMap.{u3, u3, u2, max (max u1 u3) u2} R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) (Module.End.{u3, u2} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (LinearMap.{u3, u3, max u1 u3, u2} R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) (ι -> R) M (Pi.addCommMonoid.{u1, u3} ι (fun (ᾰ : ι) => R) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} R (NonUnitalNonAssocRing.toAddCommGroup.{u3} R (NonAssocRing.toNonUnitalNonAssocRing.{u3} R (Ring.toNonAssocRing.{u3} R (CommRing.toRing.{u3} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (Pi.Function.module.{u1, u3, u3} ι R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u3} R (NonUnitalNonAssocRing.toAddCommGroup.{u3} R (NonAssocRing.toNonUnitalNonAssocRing.{u3} R (Ring.toNonAssocRing.{u3} R (CommRing.toRing.{u3} R _inst_3))))) (Semiring.toModule.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) _inst_4) (LinearMap.addCommMonoid.{u3, u3, u2, u2} R R M M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4 _inst_4 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3))))) (LinearMap.addCommMonoid.{u3, u3, max u1 u3, u2} R R (ι -> R) M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Pi.addCommMonoid.{u1, u3} ι (fun (ᾰ : ι) => R) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} R (NonUnitalNonAssocRing.toAddCommGroup.{u3} R (NonAssocRing.toNonUnitalNonAssocRing.{u3} R (Ring.toNonAssocRing.{u3} R (CommRing.toRing.{u3} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (Pi.Function.module.{u1, u3, u3} ι R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u3} R (NonUnitalNonAssocRing.toAddCommGroup.{u3} R (NonAssocRing.toNonUnitalNonAssocRing.{u3} R (Ring.toNonAssocRing.{u3} R (CommRing.toRing.{u3} R _inst_3))))) (Semiring.toModule.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) _inst_4 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3))))) (LinearMap.module.{u3, u3, u3, u2, u2} R R R M M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4 _inst_4 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) _inst_4 (PiToModule.fromEnd._proof_1.{u2, u3} M _inst_2 R _inst_3 _inst_4)) (LinearMap.module.{u3, u3, u3, max u1 u3, u2} R R R (ι -> R) M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Pi.addCommMonoid.{u1, u3} ι (fun (ᾰ : ι) => R) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} R (NonUnitalNonAssocRing.toAddCommGroup.{u3} R (NonAssocRing.toNonUnitalNonAssocRing.{u3} R (Ring.toNonAssocRing.{u3} R (CommRing.toRing.{u3} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (Pi.Function.module.{u1, u3, u3} ι R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u3} R (NonUnitalNonAssocRing.toAddCommGroup.{u3} R (NonAssocRing.toNonUnitalNonAssocRing.{u3} R (Ring.toNonAssocRing.{u3} R (CommRing.toRing.{u3} R _inst_3))))) (Semiring.toModule.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) _inst_4 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) _inst_4 (PiToModule.fromEnd._proof_2.{u2, u3} M _inst_2 R _inst_3 _inst_4))) => (Module.End.{u3, u2} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) -> (LinearMap.{u3, u3, max u1 u3, u2} R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) (ι -> R) M (Pi.addCommMonoid.{u1, u3} ι (fun (ᾰ : ι) => R) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} R (NonUnitalNonAssocRing.toAddCommGroup.{u3} R (NonAssocRing.toNonUnitalNonAssocRing.{u3} R (Ring.toNonAssocRing.{u3} R (CommRing.toRing.{u3} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (Pi.Function.module.{u1, u3, u3} ι R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u3} R (NonUnitalNonAssocRing.toAddCommGroup.{u3} R (NonAssocRing.toNonUnitalNonAssocRing.{u3} R (Ring.toNonAssocRing.{u3} R (CommRing.toRing.{u3} R _inst_3))))) (Semiring.toModule.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) _inst_4)) (LinearMap.hasCoeToFun.{u3, u3, u2, max (max u1 u3) u2} R R (Module.End.{u3, u2} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (LinearMap.{u3, u3, max u1 u3, u2} R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) (ι -> R) M (Pi.addCommMonoid.{u1, u3} ι (fun (ᾰ : ι) => R) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} R (NonUnitalNonAssocRing.toAddCommGroup.{u3} R (NonAssocRing.toNonUnitalNonAssocRing.{u3} R (Ring.toNonAssocRing.{u3} R (CommRing.toRing.{u3} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (Pi.Function.module.{u1, u3, u3} ι R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u3} R (NonUnitalNonAssocRing.toAddCommGroup.{u3} R (NonAssocRing.toNonUnitalNonAssocRing.{u3} R (Ring.toNonAssocRing.{u3} R (CommRing.toRing.{u3} R _inst_3))))) (Semiring.toModule.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) _inst_4) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (LinearMap.addCommMonoid.{u3, u3, u2, u2} R R M M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4 _inst_4 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3))))) (LinearMap.addCommMonoid.{u3, u3, max u1 u3, u2} R R (ι -> R) M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Pi.addCommMonoid.{u1, u3} ι (fun (ᾰ : ι) => R) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} R (NonUnitalNonAssocRing.toAddCommGroup.{u3} R (NonAssocRing.toNonUnitalNonAssocRing.{u3} R (Ring.toNonAssocRing.{u3} R (CommRing.toRing.{u3} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (Pi.Function.module.{u1, u3, u3} ι R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u3} R (NonUnitalNonAssocRing.toAddCommGroup.{u3} R (NonAssocRing.toNonUnitalNonAssocRing.{u3} R (Ring.toNonAssocRing.{u3} R (CommRing.toRing.{u3} R _inst_3))))) (Semiring.toModule.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) _inst_4 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3))))) (LinearMap.module.{u3, u3, u3, u2, u2} R R R M M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4 _inst_4 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) _inst_4 (PiToModule.fromEnd._proof_1.{u2, u3} M _inst_2 R _inst_3 _inst_4)) (LinearMap.module.{u3, u3, u3, max u1 u3, u2} R R R (ι -> R) M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Pi.addCommMonoid.{u1, u3} ι (fun (ᾰ : ι) => R) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} R (NonUnitalNonAssocRing.toAddCommGroup.{u3} R (NonAssocRing.toNonUnitalNonAssocRing.{u3} R (Ring.toNonAssocRing.{u3} R (CommRing.toRing.{u3} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (Pi.Function.module.{u1, u3, u3} ι R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u3} R (NonUnitalNonAssocRing.toAddCommGroup.{u3} R (NonAssocRing.toNonUnitalNonAssocRing.{u3} R (Ring.toNonAssocRing.{u3} R (CommRing.toRing.{u3} R _inst_3))))) (Semiring.toModule.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) _inst_4 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) _inst_4 (PiToModule.fromEnd._proof_2.{u2, u3} M _inst_2 R _inst_3 _inst_4)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3))))) (PiToModule.fromEnd.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b)))
but is expected to have type
- forall {ι : Type.{u1}} [_inst_1 : Fintype.{u1} ι] {M : Type.{u3}} [_inst_2 : AddCommGroup.{u3} M] (R : Type.{u2}) [_inst_3 : CommRing.{u2} R] [_inst_4 : Module.{u2, u3} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2)] (b : ι -> M), (Eq.{succ u3} (Submodule.{u2, u3} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_4) (Submodule.span.{u2, u3} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_4 (Set.range.{u3, succ u1} M ι b)) (Top.top.{u3} (Submodule.{u2, u3} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_4) (Submodule.instTopSubmodule.{u2, u3} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_4))) -> (Function.Injective.{succ u3, max (max (succ u1) (succ u3)) (succ u2)} (Module.End.{u2, u3} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_4) (LinearMap.{u2, u2, max u1 u2, u3} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (ι -> R) M (Pi.addCommMonoid.{u1, u2} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (Pi.module.{u1, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.Charpoly.LinearMap._hyg.392 : ι) => R) R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_3))))) (fun (i : ι) => Semiring.toModule.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) _inst_4) (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u3, max (max (succ u1) (succ u3)) (succ u2)} (LinearMap.{u2, u2, u3, max u3 u1 u2} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Module.End.{u2, u3} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_4) (LinearMap.{u2, u2, max u1 u2, u3} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (ι -> R) M (Pi.addCommMonoid.{u1, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.Charpoly.LinearMap._hyg.392 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (Pi.module.{u1, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.Charpoly.LinearMap._hyg.392 : ι) => R) R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_3))))) (fun (i : ι) => Semiring.toModule.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) _inst_4) (LinearMap.addCommMonoid.{u2, u2, u3, u3} R R M M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_4 _inst_4 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) (LinearMap.addCommMonoid.{u2, u2, max u1 u2, u3} R R (ι -> R) M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Pi.addCommMonoid.{u1, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.Charpoly.LinearMap._hyg.392 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (Pi.module.{u1, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.Charpoly.LinearMap._hyg.392 : ι) => R) R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_3))))) (fun (i : ι) => Semiring.toModule.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) _inst_4 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u2, u2, u2, u3, u3} R R R M M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_4 _inst_4 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_4 (smulCommClass_self.{u2, u3} R M (CommRing.toCommMonoid.{u2} R _inst_3) (MulActionWithZero.toMulAction.{u2, u3} R M (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (NegZeroClass.toZero.{u3} M (SubNegZeroMonoid.toNegZeroClass.{u3} M (SubtractionMonoid.toSubNegZeroMonoid.{u3} M (SubtractionCommMonoid.toSubtractionMonoid.{u3} M (AddCommGroup.toDivisionAddCommMonoid.{u3} M _inst_2))))) (Module.toMulActionWithZero.{u2, u3} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_4)))) (LinearMap.instModuleLinearMapAddCommMonoid.{u2, u2, u2, max u1 u2, u3} R R R (ι -> R) M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Pi.addCommMonoid.{u1, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.Charpoly.LinearMap._hyg.392 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (Pi.module.{u1, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.Charpoly.LinearMap._hyg.392 : ι) => R) R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_3))))) (fun (i : ι) => Semiring.toModule.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) _inst_4 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_4 (smulCommClass_self.{u2, u3} R M (CommRing.toCommMonoid.{u2} R _inst_3) (MulActionWithZero.toMulAction.{u2, u3} R M (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (NegZeroClass.toZero.{u3} M (SubNegZeroMonoid.toNegZeroClass.{u3} M (SubtractionMonoid.toSubNegZeroMonoid.{u3} M (SubtractionCommMonoid.toSubtractionMonoid.{u3} M (AddCommGroup.toDivisionAddCommMonoid.{u3} M _inst_2))))) (Module.toMulActionWithZero.{u2, u3} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_4))))) (Module.End.{u2, u3} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_4) (fun (_x : Module.End.{u2, u3} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_4) => (fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6191 : Module.End.{u2, u3} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_4) => LinearMap.{u2, u2, max u1 u2, u3} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (ι -> R) M (Pi.addCommMonoid.{u1, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.Charpoly.LinearMap._hyg.392 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (Pi.module.{u1, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.Charpoly.LinearMap._hyg.392 : ι) => R) R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_3))))) (fun (i : ι) => Semiring.toModule.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) _inst_4) _x) (LinearMap.instFunLikeLinearMap.{u2, u2, u3, max (max u1 u3) u2} R R (Module.End.{u2, u3} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_4) (LinearMap.{u2, u2, max u1 u2, u3} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (ι -> R) M (Pi.addCommMonoid.{u1, u2} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (Pi.module.{u1, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.Charpoly.LinearMap._hyg.392 : ι) => R) R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_3))))) (fun (i : ι) => Semiring.toModule.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) _inst_4) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (LinearMap.addCommMonoid.{u2, u2, u3, u3} R R M M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_4 _inst_4 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) (LinearMap.addCommMonoid.{u2, u2, max u1 u2, u3} R R (ι -> R) M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Pi.addCommMonoid.{u1, u2} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (Pi.module.{u1, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.Charpoly.LinearMap._hyg.392 : ι) => R) R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_3))))) (fun (i : ι) => Semiring.toModule.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) _inst_4 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u2, u2, u2, u3, u3} R R R M M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_4 _inst_4 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_4 (smulCommClass_self.{u2, u3} R M (CommRing.toCommMonoid.{u2} R _inst_3) (MulActionWithZero.toMulAction.{u2, u3} R M (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (NegZeroClass.toZero.{u3} M (SubNegZeroMonoid.toNegZeroClass.{u3} M (SubtractionMonoid.toSubNegZeroMonoid.{u3} M (SubtractionCommMonoid.toSubtractionMonoid.{u3} M (AddCommGroup.toDivisionAddCommMonoid.{u3} M _inst_2))))) (Module.toMulActionWithZero.{u2, u3} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_4)))) (LinearMap.instModuleLinearMapAddCommMonoid.{u2, u2, u2, max u1 u2, u3} R R R (ι -> R) M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Pi.addCommMonoid.{u1, u2} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (Pi.module.{u1, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.Charpoly.LinearMap._hyg.392 : ι) => R) R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_3))))) (fun (i : ι) => Semiring.toModule.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) _inst_4 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_4 (smulCommClass_self.{u2, u3} R M (CommRing.toCommMonoid.{u2} R _inst_3) (MulActionWithZero.toMulAction.{u2, u3} R M (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (NegZeroClass.toZero.{u3} M (SubNegZeroMonoid.toNegZeroClass.{u3} M (SubtractionMonoid.toSubNegZeroMonoid.{u3} M (SubtractionCommMonoid.toSubtractionMonoid.{u3} M (AddCommGroup.toDivisionAddCommMonoid.{u3} M _inst_2))))) (Module.toMulActionWithZero.{u2, u3} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_4)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) (PiToModule.fromEnd.{u1, u3, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b)))
+ forall {ι : Type.{u1}} [_inst_1 : Fintype.{u1} ι] {M : Type.{u3}} [_inst_2 : AddCommGroup.{u3} M] (R : Type.{u2}) [_inst_3 : CommRing.{u2} R] [_inst_4 : Module.{u2, u3} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2)] (b : ι -> M), (Eq.{succ u3} (Submodule.{u2, u3} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_4) (Submodule.span.{u2, u3} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_4 (Set.range.{u3, succ u1} M ι b)) (Top.top.{u3} (Submodule.{u2, u3} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_4) (Submodule.instTopSubmodule.{u2, u3} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_4))) -> (Function.Injective.{succ u3, max (max (succ u1) (succ u3)) (succ u2)} (Module.End.{u2, u3} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_4) (LinearMap.{u2, u2, max u1 u2, u3} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (ι -> R) M (Pi.addCommMonoid.{u1, u2} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (Pi.module.{u1, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.Charpoly.LinearMap._hyg.392 : ι) => R) R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_3))))) (fun (i : ι) => Semiring.toModule.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) _inst_4) (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u3, max (max (succ u1) (succ u3)) (succ u2)} (LinearMap.{u2, u2, u3, max u3 u1 u2} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Module.End.{u2, u3} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_4) (LinearMap.{u2, u2, max u1 u2, u3} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (ι -> R) M (Pi.addCommMonoid.{u1, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.Charpoly.LinearMap._hyg.392 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (Pi.module.{u1, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.Charpoly.LinearMap._hyg.392 : ι) => R) R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_3))))) (fun (i : ι) => Semiring.toModule.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) _inst_4) (LinearMap.addCommMonoid.{u2, u2, u3, u3} R R M M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_4 _inst_4 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) (LinearMap.addCommMonoid.{u2, u2, max u1 u2, u3} R R (ι -> R) M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Pi.addCommMonoid.{u1, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.Charpoly.LinearMap._hyg.392 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (Pi.module.{u1, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.Charpoly.LinearMap._hyg.392 : ι) => R) R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_3))))) (fun (i : ι) => Semiring.toModule.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) _inst_4 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u2, u2, u2, u3, u3} R R R M M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_4 _inst_4 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_4 (smulCommClass_self.{u2, u3} R M (CommRing.toCommMonoid.{u2} R _inst_3) (MulActionWithZero.toMulAction.{u2, u3} R M (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (NegZeroClass.toZero.{u3} M (SubNegZeroMonoid.toNegZeroClass.{u3} M (SubtractionMonoid.toSubNegZeroMonoid.{u3} M (SubtractionCommMonoid.toSubtractionMonoid.{u3} M (AddCommGroup.toDivisionAddCommMonoid.{u3} M _inst_2))))) (Module.toMulActionWithZero.{u2, u3} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_4)))) (LinearMap.instModuleLinearMapAddCommMonoid.{u2, u2, u2, max u1 u2, u3} R R R (ι -> R) M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Pi.addCommMonoid.{u1, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.Charpoly.LinearMap._hyg.392 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (Pi.module.{u1, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.Charpoly.LinearMap._hyg.392 : ι) => R) R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_3))))) (fun (i : ι) => Semiring.toModule.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) _inst_4 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_4 (smulCommClass_self.{u2, u3} R M (CommRing.toCommMonoid.{u2} R _inst_3) (MulActionWithZero.toMulAction.{u2, u3} R M (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (NegZeroClass.toZero.{u3} M (SubNegZeroMonoid.toNegZeroClass.{u3} M (SubtractionMonoid.toSubNegZeroMonoid.{u3} M (SubtractionCommMonoid.toSubtractionMonoid.{u3} M (AddCommGroup.toDivisionAddCommMonoid.{u3} M _inst_2))))) (Module.toMulActionWithZero.{u2, u3} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_4))))) (Module.End.{u2, u3} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_4) (fun (_x : Module.End.{u2, u3} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_4) => (fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6193 : Module.End.{u2, u3} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_4) => LinearMap.{u2, u2, max u1 u2, u3} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (ι -> R) M (Pi.addCommMonoid.{u1, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.Charpoly.LinearMap._hyg.392 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (Pi.module.{u1, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.Charpoly.LinearMap._hyg.392 : ι) => R) R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_3))))) (fun (i : ι) => Semiring.toModule.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) _inst_4) _x) (LinearMap.instFunLikeLinearMap.{u2, u2, u3, max (max u1 u3) u2} R R (Module.End.{u2, u3} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_4) (LinearMap.{u2, u2, max u1 u2, u3} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (ι -> R) M (Pi.addCommMonoid.{u1, u2} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (Pi.module.{u1, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.Charpoly.LinearMap._hyg.392 : ι) => R) R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_3))))) (fun (i : ι) => Semiring.toModule.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) _inst_4) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (LinearMap.addCommMonoid.{u2, u2, u3, u3} R R M M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_4 _inst_4 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) (LinearMap.addCommMonoid.{u2, u2, max u1 u2, u3} R R (ι -> R) M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Pi.addCommMonoid.{u1, u2} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (Pi.module.{u1, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.Charpoly.LinearMap._hyg.392 : ι) => R) R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_3))))) (fun (i : ι) => Semiring.toModule.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) _inst_4 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u2, u2, u2, u3, u3} R R R M M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_4 _inst_4 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_4 (smulCommClass_self.{u2, u3} R M (CommRing.toCommMonoid.{u2} R _inst_3) (MulActionWithZero.toMulAction.{u2, u3} R M (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (NegZeroClass.toZero.{u3} M (SubNegZeroMonoid.toNegZeroClass.{u3} M (SubtractionMonoid.toSubNegZeroMonoid.{u3} M (SubtractionCommMonoid.toSubtractionMonoid.{u3} M (AddCommGroup.toDivisionAddCommMonoid.{u3} M _inst_2))))) (Module.toMulActionWithZero.{u2, u3} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_4)))) (LinearMap.instModuleLinearMapAddCommMonoid.{u2, u2, u2, max u1 u2, u3} R R R (ι -> R) M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Pi.addCommMonoid.{u1, u2} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (Pi.module.{u1, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.Charpoly.LinearMap._hyg.392 : ι) => R) R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_3))))) (fun (i : ι) => Semiring.toModule.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) _inst_4 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_4 (smulCommClass_self.{u2, u3} R M (CommRing.toCommMonoid.{u2} R _inst_3) (MulActionWithZero.toMulAction.{u2, u3} R M (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (NegZeroClass.toZero.{u3} M (SubNegZeroMonoid.toNegZeroClass.{u3} M (SubtractionMonoid.toSubNegZeroMonoid.{u3} M (SubtractionCommMonoid.toSubtractionMonoid.{u3} M (AddCommGroup.toDivisionAddCommMonoid.{u3} M _inst_2))))) (Module.toMulActionWithZero.{u2, u3} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_4)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) (PiToModule.fromEnd.{u1, u3, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b)))
Case conversion may be inaccurate. Consider using '#align pi_to_module.from_End_injective PiToModule.fromEnd_injectiveₓ'. -/
theorem PiToModule.fromEnd_injective (hb : Submodule.span R (Set.range b) = ⊤) :
Function.Injective (PiToModule.fromEnd R b) :=
@@ -141,7 +141,7 @@ variable {b}
lean 3 declaration is
forall {ι : Type.{u1}} [_inst_1 : Fintype.{u1} ι] {M : Type.{u2}} [_inst_2 : AddCommGroup.{u2} M] {R : Type.{u3}} [_inst_3 : CommRing.{u3} R] [_inst_4 : Module.{u3, u2} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2)] {b : ι -> M} [_inst_5 : DecidableEq.{succ u1} ι] {A : Matrix.{u1, u1, u3} ι ι R} {f : Module.End.{u3, u2} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4}, (Matrix.Represents.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b) A f) -> (forall (x : ι -> R), Eq.{succ u2} M (coeFn.{max (succ (max u1 u3)) (succ u2), max (succ (max u1 u3)) (succ u2)} (LinearMap.{u3, u3, max u1 u3, u2} R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) (ι -> R) M (Pi.addCommMonoid.{u1, u3} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (Pi.Function.module.{u1, u3, u3} ι R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3))))) (Semiring.toModule.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) _inst_4) (fun (_x : LinearMap.{u3, u3, max u1 u3, u2} R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) (ι -> R) M (Pi.addCommMonoid.{u1, u3} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (Pi.Function.module.{u1, u3, u3} ι R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3))))) (Semiring.toModule.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) _inst_4) => (ι -> R) -> M) (LinearMap.hasCoeToFun.{u3, u3, max u1 u3, u2} R R (ι -> R) M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Pi.addCommMonoid.{u1, u3} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (Pi.Function.module.{u1, u3, u3} ι R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3))))) (Semiring.toModule.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) _inst_4 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3))))) (coeFn.{max (succ (max u1 u2)) (succ (max (max u1 u3) u2)), max (succ (max u1 u2)) (succ (max (max u1 u3) u2))} (LinearMap.{u3, u3, max u1 u2, max (max u1 u3) u2} R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) (ι -> M) (LinearMap.{u3, u3, max u1 u3, u2} R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) (ι -> R) M (Pi.addCommMonoid.{u1, u3} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (Pi.Function.module.{u1, u3, u3} ι R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3))))) (Semiring.toModule.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) _inst_4) (Pi.addCommMonoid.{u1, u2} ι (fun (ᾰ : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u2} M _inst_2)) (LinearMap.addCommMonoid.{u3, u3, max u1 u3, u2} R R (ι -> R) M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Pi.addCommMonoid.{u1, u3} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (Pi.Function.module.{u1, u3, u3} ι R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3))))) (Semiring.toModule.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) _inst_4 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3))))) (Pi.Function.module.{u1, u3, u2} ι R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (LinearMap.module.{u3, u3, u3, max u1 u3, u2} R R R (ι -> R) M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Pi.addCommMonoid.{u1, u3} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (Pi.Function.module.{u1, u3, u3} ι R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3))))) (Semiring.toModule.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) _inst_4 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) _inst_4 (smulCommClass_self.{u3, u2} R M (CommRing.toCommMonoid.{u3} R _inst_3) (MulActionWithZero.toMulAction.{u3, u2} R M (Semiring.toMonoidWithZero.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3))) (AddZeroClass.toHasZero.{u2} M (AddMonoid.toAddZeroClass.{u2} M (AddCommMonoid.toAddMonoid.{u2} M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2)))) (Module.toMulActionWithZero.{u3, u2} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4))))) (fun (_x : LinearMap.{u3, u3, max u1 u2, max (max u1 u3) u2} R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) (ι -> M) (LinearMap.{u3, u3, max u1 u3, u2} R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) (ι -> R) M (Pi.addCommMonoid.{u1, u3} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (Pi.Function.module.{u1, u3, u3} ι R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3))))) (Semiring.toModule.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) _inst_4) (Pi.addCommMonoid.{u1, u2} ι (fun (ᾰ : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u2} M _inst_2)) (LinearMap.addCommMonoid.{u3, u3, max u1 u3, u2} R R (ι -> R) M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Pi.addCommMonoid.{u1, u3} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (Pi.Function.module.{u1, u3, u3} ι R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3))))) (Semiring.toModule.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) _inst_4 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3))))) (Pi.Function.module.{u1, u3, u2} ι R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (LinearMap.module.{u3, u3, u3, max u1 u3, u2} R R R (ι -> R) M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Pi.addCommMonoid.{u1, u3} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (Pi.Function.module.{u1, u3, u3} ι R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3))))) (Semiring.toModule.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) _inst_4 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) _inst_4 (smulCommClass_self.{u3, u2} R M (CommRing.toCommMonoid.{u3} R _inst_3) (MulActionWithZero.toMulAction.{u3, u2} R M (Semiring.toMonoidWithZero.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3))) (AddZeroClass.toHasZero.{u2} M (AddMonoid.toAddZeroClass.{u2} M (AddCommMonoid.toAddMonoid.{u2} M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2)))) (Module.toMulActionWithZero.{u3, u2} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4))))) => (ι -> M) -> (LinearMap.{u3, u3, max u1 u3, u2} R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) (ι -> R) M (Pi.addCommMonoid.{u1, u3} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (Pi.Function.module.{u1, u3, u3} ι R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3))))) (Semiring.toModule.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) _inst_4)) (LinearMap.hasCoeToFun.{u3, u3, max u1 u2, max (max u1 u3) u2} R R (ι -> M) (LinearMap.{u3, u3, max u1 u3, u2} R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) (ι -> R) M (Pi.addCommMonoid.{u1, u3} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (Pi.Function.module.{u1, u3, u3} ι R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3))))) (Semiring.toModule.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) _inst_4) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Pi.addCommMonoid.{u1, u2} ι (fun (ᾰ : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u2} M _inst_2)) (LinearMap.addCommMonoid.{u3, u3, max u1 u3, u2} R R (ι -> R) M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Pi.addCommMonoid.{u1, u3} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (Pi.Function.module.{u1, u3, u3} ι R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3))))) (Semiring.toModule.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) _inst_4 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3))))) (Pi.Function.module.{u1, u3, u2} ι R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (LinearMap.module.{u3, u3, u3, max u1 u3, u2} R R R (ι -> R) M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Pi.addCommMonoid.{u1, u3} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (Pi.Function.module.{u1, u3, u3} ι R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3))))) (Semiring.toModule.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) _inst_4 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) _inst_4 (smulCommClass_self.{u3, u2} R M (CommRing.toCommMonoid.{u3} R _inst_3) (MulActionWithZero.toMulAction.{u3, u2} R M (Semiring.toMonoidWithZero.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3))) (AddZeroClass.toHasZero.{u2} M (AddMonoid.toAddZeroClass.{u2} M (AddCommMonoid.toAddMonoid.{u2} M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2)))) (Module.toMulActionWithZero.{u3, u2} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4)))) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3))))) (Fintype.total.{u1, u2, u3, u3} ι M R _inst_1 (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4 R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) _inst_4 (smulCommClass_self.{u3, u2} R M (CommRing.toCommMonoid.{u3} R _inst_3) (MulActionWithZero.toMulAction.{u3, u2} R M (Semiring.toMonoidWithZero.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3))) (AddZeroClass.toHasZero.{u2} M (AddMonoid.toAddZeroClass.{u2} M (AddCommMonoid.toAddMonoid.{u2} M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2)))) (Module.toMulActionWithZero.{u3, u2} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4)))) b) (Matrix.mulVec.{u3, u1, u1} ι ι R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u3} R (NonAssocRing.toNonUnitalNonAssocRing.{u3} R (Ring.toNonAssocRing.{u3} R (CommRing.toRing.{u3} R _inst_3)))) _inst_1 A x)) (coeFn.{succ u2, succ u2} (Module.End.{u3, u2} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (fun (_x : LinearMap.{u3, u3, u2, u2} R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4 _inst_4) => M -> M) (LinearMap.hasCoeToFun.{u3, u3, u2, u2} R R M M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4 _inst_4 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3))))) f (coeFn.{max (succ (max u1 u3)) (succ u2), max (succ (max u1 u3)) (succ u2)} (LinearMap.{u3, u3, max u1 u3, u2} R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) (ι -> R) M (Pi.addCommMonoid.{u1, u3} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (Pi.Function.module.{u1, u3, u3} ι R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3))))) (Semiring.toModule.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) _inst_4) (fun (_x : LinearMap.{u3, u3, max u1 u3, u2} R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) (ι -> R) M (Pi.addCommMonoid.{u1, u3} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (Pi.Function.module.{u1, u3, u3} ι R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3))))) (Semiring.toModule.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) _inst_4) => (ι -> R) -> M) (LinearMap.hasCoeToFun.{u3, u3, max u1 u3, u2} R R (ι -> R) M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Pi.addCommMonoid.{u1, u3} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (Pi.Function.module.{u1, u3, u3} ι R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3))))) (Semiring.toModule.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) _inst_4 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3))))) (coeFn.{max (succ (max u1 u2)) (succ (max (max u1 u3) u2)), max (succ (max u1 u2)) (succ (max (max u1 u3) u2))} (LinearMap.{u3, u3, max u1 u2, max (max u1 u3) u2} R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) (ι -> M) (LinearMap.{u3, u3, max u1 u3, u2} R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) (ι -> R) M (Pi.addCommMonoid.{u1, u3} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (Pi.Function.module.{u1, u3, u3} ι R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3))))) (Semiring.toModule.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) _inst_4) (Pi.addCommMonoid.{u1, u2} ι (fun (ᾰ : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u2} M _inst_2)) (LinearMap.addCommMonoid.{u3, u3, max u1 u3, u2} R R (ι -> R) M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Pi.addCommMonoid.{u1, u3} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (Pi.Function.module.{u1, u3, u3} ι R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3))))) (Semiring.toModule.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) _inst_4 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3))))) (Pi.Function.module.{u1, u3, u2} ι R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (LinearMap.module.{u3, u3, u3, max u1 u3, u2} R R R (ι -> R) M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Pi.addCommMonoid.{u1, u3} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (Pi.Function.module.{u1, u3, u3} ι R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3))))) (Semiring.toModule.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) _inst_4 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) _inst_4 (smulCommClass_self.{u3, u2} R M (CommRing.toCommMonoid.{u3} R _inst_3) (MulActionWithZero.toMulAction.{u3, u2} R M (Semiring.toMonoidWithZero.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3))) (AddZeroClass.toHasZero.{u2} M (AddMonoid.toAddZeroClass.{u2} M (AddCommMonoid.toAddMonoid.{u2} M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2)))) (Module.toMulActionWithZero.{u3, u2} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4))))) (fun (_x : LinearMap.{u3, u3, max u1 u2, max (max u1 u3) u2} R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) (ι -> M) (LinearMap.{u3, u3, max u1 u3, u2} R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) (ι -> R) M (Pi.addCommMonoid.{u1, u3} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (Pi.Function.module.{u1, u3, u3} ι R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3))))) (Semiring.toModule.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) _inst_4) (Pi.addCommMonoid.{u1, u2} ι (fun (ᾰ : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u2} M _inst_2)) (LinearMap.addCommMonoid.{u3, u3, max u1 u3, u2} R R (ι -> R) M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Pi.addCommMonoid.{u1, u3} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (Pi.Function.module.{u1, u3, u3} ι R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3))))) (Semiring.toModule.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) _inst_4 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3))))) (Pi.Function.module.{u1, u3, u2} ι R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (LinearMap.module.{u3, u3, u3, max u1 u3, u2} R R R (ι -> R) M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Pi.addCommMonoid.{u1, u3} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (Pi.Function.module.{u1, u3, u3} ι R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3))))) (Semiring.toModule.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) _inst_4 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) _inst_4 (smulCommClass_self.{u3, u2} R M (CommRing.toCommMonoid.{u3} R _inst_3) (MulActionWithZero.toMulAction.{u3, u2} R M (Semiring.toMonoidWithZero.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3))) (AddZeroClass.toHasZero.{u2} M (AddMonoid.toAddZeroClass.{u2} M (AddCommMonoid.toAddMonoid.{u2} M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2)))) (Module.toMulActionWithZero.{u3, u2} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4))))) => (ι -> M) -> (LinearMap.{u3, u3, max u1 u3, u2} R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) (ι -> R) M (Pi.addCommMonoid.{u1, u3} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (Pi.Function.module.{u1, u3, u3} ι R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3))))) (Semiring.toModule.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) _inst_4)) (LinearMap.hasCoeToFun.{u3, u3, max u1 u2, max (max u1 u3) u2} R R (ι -> M) (LinearMap.{u3, u3, max u1 u3, u2} R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) (ι -> R) M (Pi.addCommMonoid.{u1, u3} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (Pi.Function.module.{u1, u3, u3} ι R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3))))) (Semiring.toModule.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) _inst_4) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Pi.addCommMonoid.{u1, u2} ι (fun (ᾰ : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u2} M _inst_2)) (LinearMap.addCommMonoid.{u3, u3, max u1 u3, u2} R R (ι -> R) M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Pi.addCommMonoid.{u1, u3} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (Pi.Function.module.{u1, u3, u3} ι R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3))))) (Semiring.toModule.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) _inst_4 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3))))) (Pi.Function.module.{u1, u3, u2} ι R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (LinearMap.module.{u3, u3, u3, max u1 u3, u2} R R R (ι -> R) M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Pi.addCommMonoid.{u1, u3} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (Pi.Function.module.{u1, u3, u3} ι R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3))))) (Semiring.toModule.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) _inst_4 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) _inst_4 (smulCommClass_self.{u3, u2} R M (CommRing.toCommMonoid.{u3} R _inst_3) (MulActionWithZero.toMulAction.{u3, u2} R M (Semiring.toMonoidWithZero.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3))) (AddZeroClass.toHasZero.{u2} M (AddMonoid.toAddZeroClass.{u2} M (AddCommMonoid.toAddMonoid.{u2} M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2)))) (Module.toMulActionWithZero.{u3, u2} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4)))) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3))))) (Fintype.total.{u1, u2, u3, u3} ι M R _inst_1 (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4 R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) _inst_4 (smulCommClass_self.{u3, u2} R M (CommRing.toCommMonoid.{u3} R _inst_3) (MulActionWithZero.toMulAction.{u3, u2} R M (Semiring.toMonoidWithZero.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3))) (AddZeroClass.toHasZero.{u2} M (AddMonoid.toAddZeroClass.{u2} M (AddCommMonoid.toAddMonoid.{u2} M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2)))) (Module.toMulActionWithZero.{u3, u2} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4)))) b) x)))
but is expected to have type
- forall {ι : Type.{u3}} [_inst_1 : Fintype.{u3} ι] {M : Type.{u1}} [_inst_2 : AddCommGroup.{u1} M] {R : Type.{u2}} [_inst_3 : CommRing.{u2} R] [_inst_4 : Module.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2)] {b : ι -> M} [_inst_5 : DecidableEq.{succ u3} ι] {A : Matrix.{u3, u3, u2} ι ι R} {f : Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4}, (Matrix.Represents.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b) A f) -> (forall (x : ι -> R), Eq.{succ u1} ((fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6191 : ι -> R) => M) (Matrix.mulVec.{u2, u3, u3} ι ι R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_3)))) _inst_1 A x)) (FunLike.coe.{max (max (succ u3) (succ u1)) (succ u2), max (succ u3) (succ u2), succ u1} ((fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6191 : ι -> M) => LinearMap.{u2, u2, max u3 u2, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (ι -> R) M (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Finsupp._hyg.14570 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Finsupp._hyg.14570 : ι) => R) R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) (fun (i : ι) => Semiring.toModule.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) _inst_4) b) (ι -> R) (fun (_x : ι -> R) => (fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6191 : ι -> R) => M) _x) (LinearMap.instFunLikeLinearMap.{u2, u2, max u3 u2, u1} R R (ι -> R) M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Pi.addCommMonoid.{u3, u2} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Finsupp._hyg.14570 : ι) => R) R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) (fun (i : ι) => Semiring.toModule.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) _inst_4 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), max (succ u1) (succ u3), max (max (succ u2) (succ u1)) (succ u3)} (LinearMap.{u2, u2, max u3 u1, max u1 u3 u2} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (ι -> M) (LinearMap.{u2, u2, max u3 u2, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (ι -> R) M (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Finsupp._hyg.14570 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Finsupp._hyg.14570 : ι) => R) R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) (fun (i : ι) => Semiring.toModule.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) _inst_4) (Pi.addCommMonoid.{u3, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Finsupp._hyg.14558 : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u1} M _inst_2)) (LinearMap.addCommMonoid.{u2, u2, max u3 u2, u1} R R (ι -> R) M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Finsupp._hyg.14570 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Finsupp._hyg.14570 : ι) => R) R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) (fun (i : ι) => Semiring.toModule.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) _inst_4 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) (Pi.module.{u3, u1, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Finsupp._hyg.14558 : ι) => M) R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (fun (i : ι) => _inst_4)) (LinearMap.instModuleLinearMapAddCommMonoid.{u2, u2, u2, max u3 u2, u1} R R R (ι -> R) M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Finsupp._hyg.14570 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Finsupp._hyg.14570 : ι) => R) R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) (fun (i : ι) => Semiring.toModule.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) _inst_4 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_4 (smulCommClass_self.{u2, u1} R M (CommRing.toCommMonoid.{u2} R _inst_3) (MulActionWithZero.toMulAction.{u2, u1} R M (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (NegZeroClass.toZero.{u1} M (SubNegZeroMonoid.toNegZeroClass.{u1} M (SubtractionMonoid.toSubNegZeroMonoid.{u1} M (SubtractionCommMonoid.toSubtractionMonoid.{u1} M (AddCommGroup.toDivisionAddCommMonoid.{u1} M _inst_2))))) (Module.toMulActionWithZero.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4))))) (ι -> M) (fun (_x : ι -> M) => (fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6191 : ι -> M) => LinearMap.{u2, u2, max u3 u2, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (ι -> R) M (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Finsupp._hyg.14570 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Finsupp._hyg.14570 : ι) => R) R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) (fun (i : ι) => Semiring.toModule.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) _inst_4) _x) (LinearMap.instFunLikeLinearMap.{u2, u2, max u1 u3, max (max u2 u1) u3} R R (ι -> M) (LinearMap.{u2, u2, max u3 u2, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (ι -> R) M (Pi.addCommMonoid.{u3, u2} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Finsupp._hyg.14570 : ι) => R) R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) (fun (i : ι) => Semiring.toModule.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) _inst_4) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Pi.addCommMonoid.{u3, u1} ι (fun (ᾰ : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u1} M _inst_2)) (LinearMap.addCommMonoid.{u2, u2, max u3 u2, u1} R R (ι -> R) M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Pi.addCommMonoid.{u3, u2} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Finsupp._hyg.14570 : ι) => R) R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) (fun (i : ι) => Semiring.toModule.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) _inst_4 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) (Pi.module.{u3, u1, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Finsupp._hyg.14558 : ι) => M) R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (fun (i : ι) => _inst_4)) (LinearMap.instModuleLinearMapAddCommMonoid.{u2, u2, u2, max u3 u2, u1} R R R (ι -> R) M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Pi.addCommMonoid.{u3, u2} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Finsupp._hyg.14570 : ι) => R) R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) (fun (i : ι) => Semiring.toModule.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) _inst_4 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_4 (smulCommClass_self.{u2, u1} R M (CommRing.toCommMonoid.{u2} R _inst_3) (MulActionWithZero.toMulAction.{u2, u1} R M (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (NegZeroClass.toZero.{u1} M (SubNegZeroMonoid.toNegZeroClass.{u1} M (SubtractionMonoid.toSubNegZeroMonoid.{u1} M (SubtractionCommMonoid.toSubtractionMonoid.{u1} M (AddCommGroup.toDivisionAddCommMonoid.{u1} M _inst_2))))) (Module.toMulActionWithZero.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) (Fintype.total.{u3, u1, u2, u2} ι M R _inst_1 (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4 R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_4 (smulCommClass_self.{u2, u1} R M (CommRing.toCommMonoid.{u2} R _inst_3) (MulActionWithZero.toMulAction.{u2, u1} R M (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (NegZeroClass.toZero.{u1} M (SubNegZeroMonoid.toNegZeroClass.{u1} M (SubtractionMonoid.toSubNegZeroMonoid.{u1} M (SubtractionCommMonoid.toSubtractionMonoid.{u1} M (AddCommGroup.toDivisionAddCommMonoid.{u1} M _inst_2))))) (Module.toMulActionWithZero.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4)))) b) (Matrix.mulVec.{u2, u3, u3} ι ι R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_3)))) _inst_1 A x)) (FunLike.coe.{succ u1, succ u1, succ u1} (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6191 : M) => M) _x) (LinearMap.instFunLikeLinearMap.{u2, u2, u1, u1} R R M M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4 _inst_4 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) f (FunLike.coe.{max (max (succ u3) (succ u1)) (succ u2), max (succ u3) (succ u2), succ u1} ((fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6191 : ι -> M) => LinearMap.{u2, u2, max u3 u2, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (ι -> R) M (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Finsupp._hyg.14570 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Finsupp._hyg.14570 : ι) => R) R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) (fun (i : ι) => Semiring.toModule.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) _inst_4) b) (ι -> R) (fun (_x : ι -> R) => (fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6191 : ι -> R) => M) _x) (LinearMap.instFunLikeLinearMap.{u2, u2, max u3 u2, u1} R R (ι -> R) M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Pi.addCommMonoid.{u3, u2} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Finsupp._hyg.14570 : ι) => R) R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) (fun (i : ι) => Semiring.toModule.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) _inst_4 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), max (succ u1) (succ u3), max (max (succ u2) (succ u1)) (succ u3)} (LinearMap.{u2, u2, max u3 u1, max u1 u3 u2} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (ι -> M) (LinearMap.{u2, u2, max u3 u2, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (ι -> R) M (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Finsupp._hyg.14570 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Finsupp._hyg.14570 : ι) => R) R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) (fun (i : ι) => Semiring.toModule.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) _inst_4) (Pi.addCommMonoid.{u3, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Finsupp._hyg.14558 : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u1} M _inst_2)) (LinearMap.addCommMonoid.{u2, u2, max u3 u2, u1} R R (ι -> R) M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Finsupp._hyg.14570 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Finsupp._hyg.14570 : ι) => R) R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) (fun (i : ι) => Semiring.toModule.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) _inst_4 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) (Pi.module.{u3, u1, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Finsupp._hyg.14558 : ι) => M) R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (fun (i : ι) => _inst_4)) (LinearMap.instModuleLinearMapAddCommMonoid.{u2, u2, u2, max u3 u2, u1} R R R (ι -> R) M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Finsupp._hyg.14570 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Finsupp._hyg.14570 : ι) => R) R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) (fun (i : ι) => Semiring.toModule.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) _inst_4 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_4 (smulCommClass_self.{u2, u1} R M (CommRing.toCommMonoid.{u2} R _inst_3) (MulActionWithZero.toMulAction.{u2, u1} R M (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (NegZeroClass.toZero.{u1} M (SubNegZeroMonoid.toNegZeroClass.{u1} M (SubtractionMonoid.toSubNegZeroMonoid.{u1} M (SubtractionCommMonoid.toSubtractionMonoid.{u1} M (AddCommGroup.toDivisionAddCommMonoid.{u1} M _inst_2))))) (Module.toMulActionWithZero.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4))))) (ι -> M) (fun (_x : ι -> M) => (fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6191 : ι -> M) => LinearMap.{u2, u2, max u3 u2, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (ι -> R) M (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Finsupp._hyg.14570 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Finsupp._hyg.14570 : ι) => R) R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) (fun (i : ι) => Semiring.toModule.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) _inst_4) _x) (LinearMap.instFunLikeLinearMap.{u2, u2, max u1 u3, max (max u2 u1) u3} R R (ι -> M) (LinearMap.{u2, u2, max u3 u2, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (ι -> R) M (Pi.addCommMonoid.{u3, u2} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Finsupp._hyg.14570 : ι) => R) R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) (fun (i : ι) => Semiring.toModule.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) _inst_4) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Pi.addCommMonoid.{u3, u1} ι (fun (ᾰ : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u1} M _inst_2)) (LinearMap.addCommMonoid.{u2, u2, max u3 u2, u1} R R (ι -> R) M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Pi.addCommMonoid.{u3, u2} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Finsupp._hyg.14570 : ι) => R) R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) (fun (i : ι) => Semiring.toModule.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) _inst_4 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) (Pi.module.{u3, u1, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Finsupp._hyg.14558 : ι) => M) R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (fun (i : ι) => _inst_4)) (LinearMap.instModuleLinearMapAddCommMonoid.{u2, u2, u2, max u3 u2, u1} R R R (ι -> R) M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Pi.addCommMonoid.{u3, u2} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Finsupp._hyg.14570 : ι) => R) R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) (fun (i : ι) => Semiring.toModule.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) _inst_4 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_4 (smulCommClass_self.{u2, u1} R M (CommRing.toCommMonoid.{u2} R _inst_3) (MulActionWithZero.toMulAction.{u2, u1} R M (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (NegZeroClass.toZero.{u1} M (SubNegZeroMonoid.toNegZeroClass.{u1} M (SubtractionMonoid.toSubNegZeroMonoid.{u1} M (SubtractionCommMonoid.toSubtractionMonoid.{u1} M (AddCommGroup.toDivisionAddCommMonoid.{u1} M _inst_2))))) (Module.toMulActionWithZero.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) (Fintype.total.{u3, u1, u2, u2} ι M R _inst_1 (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4 R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_4 (smulCommClass_self.{u2, u1} R M (CommRing.toCommMonoid.{u2} R _inst_3) (MulActionWithZero.toMulAction.{u2, u1} R M (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (NegZeroClass.toZero.{u1} M (SubNegZeroMonoid.toNegZeroClass.{u1} M (SubtractionMonoid.toSubNegZeroMonoid.{u1} M (SubtractionCommMonoid.toSubtractionMonoid.{u1} M (AddCommGroup.toDivisionAddCommMonoid.{u1} M _inst_2))))) (Module.toMulActionWithZero.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4)))) b) x)))
+ forall {ι : Type.{u3}} [_inst_1 : Fintype.{u3} ι] {M : Type.{u1}} [_inst_2 : AddCommGroup.{u1} M] {R : Type.{u2}} [_inst_3 : CommRing.{u2} R] [_inst_4 : Module.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2)] {b : ι -> M} [_inst_5 : DecidableEq.{succ u3} ι] {A : Matrix.{u3, u3, u2} ι ι R} {f : Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4}, (Matrix.Represents.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b) A f) -> (forall (x : ι -> R), Eq.{succ u1} ((fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6193 : ι -> R) => M) (Matrix.mulVec.{u2, u3, u3} ι ι R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_3)))) _inst_1 A x)) (FunLike.coe.{max (max (succ u3) (succ u1)) (succ u2), max (succ u3) (succ u2), succ u1} ((fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6193 : ι -> M) => LinearMap.{u2, u2, max u3 u2, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (ι -> R) M (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Finsupp._hyg.14570 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Finsupp._hyg.14570 : ι) => R) R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) (fun (i : ι) => Semiring.toModule.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) _inst_4) b) (ι -> R) (fun (_x : ι -> R) => (fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6193 : ι -> R) => M) _x) (LinearMap.instFunLikeLinearMap.{u2, u2, max u3 u2, u1} R R (ι -> R) M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Pi.addCommMonoid.{u3, u2} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Finsupp._hyg.14570 : ι) => R) R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) (fun (i : ι) => Semiring.toModule.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) _inst_4 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), max (succ u1) (succ u3), max (max (succ u2) (succ u1)) (succ u3)} (LinearMap.{u2, u2, max u3 u1, max u1 u3 u2} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (ι -> M) (LinearMap.{u2, u2, max u3 u2, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (ι -> R) M (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Finsupp._hyg.14570 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Finsupp._hyg.14570 : ι) => R) R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) (fun (i : ι) => Semiring.toModule.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) _inst_4) (Pi.addCommMonoid.{u3, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Finsupp._hyg.14558 : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u1} M _inst_2)) (LinearMap.addCommMonoid.{u2, u2, max u3 u2, u1} R R (ι -> R) M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Finsupp._hyg.14570 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Finsupp._hyg.14570 : ι) => R) R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) (fun (i : ι) => Semiring.toModule.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) _inst_4 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) (Pi.module.{u3, u1, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Finsupp._hyg.14558 : ι) => M) R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (fun (i : ι) => _inst_4)) (LinearMap.instModuleLinearMapAddCommMonoid.{u2, u2, u2, max u3 u2, u1} R R R (ι -> R) M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Finsupp._hyg.14570 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Finsupp._hyg.14570 : ι) => R) R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) (fun (i : ι) => Semiring.toModule.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) _inst_4 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_4 (smulCommClass_self.{u2, u1} R M (CommRing.toCommMonoid.{u2} R _inst_3) (MulActionWithZero.toMulAction.{u2, u1} R M (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (NegZeroClass.toZero.{u1} M (SubNegZeroMonoid.toNegZeroClass.{u1} M (SubtractionMonoid.toSubNegZeroMonoid.{u1} M (SubtractionCommMonoid.toSubtractionMonoid.{u1} M (AddCommGroup.toDivisionAddCommMonoid.{u1} M _inst_2))))) (Module.toMulActionWithZero.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4))))) (ι -> M) (fun (_x : ι -> M) => (fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6193 : ι -> M) => LinearMap.{u2, u2, max u3 u2, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (ι -> R) M (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Finsupp._hyg.14570 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Finsupp._hyg.14570 : ι) => R) R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) (fun (i : ι) => Semiring.toModule.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) _inst_4) _x) (LinearMap.instFunLikeLinearMap.{u2, u2, max u1 u3, max (max u2 u1) u3} R R (ι -> M) (LinearMap.{u2, u2, max u3 u2, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (ι -> R) M (Pi.addCommMonoid.{u3, u2} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Finsupp._hyg.14570 : ι) => R) R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) (fun (i : ι) => Semiring.toModule.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) _inst_4) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Pi.addCommMonoid.{u3, u1} ι (fun (ᾰ : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u1} M _inst_2)) (LinearMap.addCommMonoid.{u2, u2, max u3 u2, u1} R R (ι -> R) M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Pi.addCommMonoid.{u3, u2} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Finsupp._hyg.14570 : ι) => R) R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) (fun (i : ι) => Semiring.toModule.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) _inst_4 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) (Pi.module.{u3, u1, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Finsupp._hyg.14558 : ι) => M) R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (fun (i : ι) => _inst_4)) (LinearMap.instModuleLinearMapAddCommMonoid.{u2, u2, u2, max u3 u2, u1} R R R (ι -> R) M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Pi.addCommMonoid.{u3, u2} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Finsupp._hyg.14570 : ι) => R) R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) (fun (i : ι) => Semiring.toModule.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) _inst_4 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_4 (smulCommClass_self.{u2, u1} R M (CommRing.toCommMonoid.{u2} R _inst_3) (MulActionWithZero.toMulAction.{u2, u1} R M (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (NegZeroClass.toZero.{u1} M (SubNegZeroMonoid.toNegZeroClass.{u1} M (SubtractionMonoid.toSubNegZeroMonoid.{u1} M (SubtractionCommMonoid.toSubtractionMonoid.{u1} M (AddCommGroup.toDivisionAddCommMonoid.{u1} M _inst_2))))) (Module.toMulActionWithZero.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) (Fintype.total.{u3, u1, u2, u2} ι M R _inst_1 (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4 R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_4 (smulCommClass_self.{u2, u1} R M (CommRing.toCommMonoid.{u2} R _inst_3) (MulActionWithZero.toMulAction.{u2, u1} R M (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (NegZeroClass.toZero.{u1} M (SubNegZeroMonoid.toNegZeroClass.{u1} M (SubtractionMonoid.toSubNegZeroMonoid.{u1} M (SubtractionCommMonoid.toSubtractionMonoid.{u1} M (AddCommGroup.toDivisionAddCommMonoid.{u1} M _inst_2))))) (Module.toMulActionWithZero.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4)))) b) (Matrix.mulVec.{u2, u3, u3} ι ι R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_3)))) _inst_1 A x)) (FunLike.coe.{succ u1, succ u1, succ u1} (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6193 : M) => M) _x) (LinearMap.instFunLikeLinearMap.{u2, u2, u1, u1} R R M M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4 _inst_4 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) f (FunLike.coe.{max (max (succ u3) (succ u1)) (succ u2), max (succ u3) (succ u2), succ u1} ((fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6193 : ι -> M) => LinearMap.{u2, u2, max u3 u2, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (ι -> R) M (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Finsupp._hyg.14570 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Finsupp._hyg.14570 : ι) => R) R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) (fun (i : ι) => Semiring.toModule.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) _inst_4) b) (ι -> R) (fun (_x : ι -> R) => (fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6193 : ι -> R) => M) _x) (LinearMap.instFunLikeLinearMap.{u2, u2, max u3 u2, u1} R R (ι -> R) M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Pi.addCommMonoid.{u3, u2} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Finsupp._hyg.14570 : ι) => R) R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) (fun (i : ι) => Semiring.toModule.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) _inst_4 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), max (succ u1) (succ u3), max (max (succ u2) (succ u1)) (succ u3)} (LinearMap.{u2, u2, max u3 u1, max u1 u3 u2} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (ι -> M) (LinearMap.{u2, u2, max u3 u2, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (ι -> R) M (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Finsupp._hyg.14570 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Finsupp._hyg.14570 : ι) => R) R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) (fun (i : ι) => Semiring.toModule.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) _inst_4) (Pi.addCommMonoid.{u3, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Finsupp._hyg.14558 : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u1} M _inst_2)) (LinearMap.addCommMonoid.{u2, u2, max u3 u2, u1} R R (ι -> R) M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Finsupp._hyg.14570 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Finsupp._hyg.14570 : ι) => R) R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) (fun (i : ι) => Semiring.toModule.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) _inst_4 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) (Pi.module.{u3, u1, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Finsupp._hyg.14558 : ι) => M) R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (fun (i : ι) => _inst_4)) (LinearMap.instModuleLinearMapAddCommMonoid.{u2, u2, u2, max u3 u2, u1} R R R (ι -> R) M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Finsupp._hyg.14570 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Finsupp._hyg.14570 : ι) => R) R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) (fun (i : ι) => Semiring.toModule.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) _inst_4 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_4 (smulCommClass_self.{u2, u1} R M (CommRing.toCommMonoid.{u2} R _inst_3) (MulActionWithZero.toMulAction.{u2, u1} R M (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (NegZeroClass.toZero.{u1} M (SubNegZeroMonoid.toNegZeroClass.{u1} M (SubtractionMonoid.toSubNegZeroMonoid.{u1} M (SubtractionCommMonoid.toSubtractionMonoid.{u1} M (AddCommGroup.toDivisionAddCommMonoid.{u1} M _inst_2))))) (Module.toMulActionWithZero.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4))))) (ι -> M) (fun (_x : ι -> M) => (fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6193 : ι -> M) => LinearMap.{u2, u2, max u3 u2, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (ι -> R) M (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Finsupp._hyg.14570 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Finsupp._hyg.14570 : ι) => R) R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) (fun (i : ι) => Semiring.toModule.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) _inst_4) _x) (LinearMap.instFunLikeLinearMap.{u2, u2, max u1 u3, max (max u2 u1) u3} R R (ι -> M) (LinearMap.{u2, u2, max u3 u2, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (ι -> R) M (Pi.addCommMonoid.{u3, u2} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Finsupp._hyg.14570 : ι) => R) R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) (fun (i : ι) => Semiring.toModule.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) _inst_4) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Pi.addCommMonoid.{u3, u1} ι (fun (ᾰ : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u1} M _inst_2)) (LinearMap.addCommMonoid.{u2, u2, max u3 u2, u1} R R (ι -> R) M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Pi.addCommMonoid.{u3, u2} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Finsupp._hyg.14570 : ι) => R) R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) (fun (i : ι) => Semiring.toModule.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) _inst_4 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) (Pi.module.{u3, u1, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Finsupp._hyg.14558 : ι) => M) R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (fun (i : ι) => _inst_4)) (LinearMap.instModuleLinearMapAddCommMonoid.{u2, u2, u2, max u3 u2, u1} R R R (ι -> R) M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Pi.addCommMonoid.{u3, u2} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Finsupp._hyg.14570 : ι) => R) R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) (fun (i : ι) => Semiring.toModule.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) _inst_4 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_4 (smulCommClass_self.{u2, u1} R M (CommRing.toCommMonoid.{u2} R _inst_3) (MulActionWithZero.toMulAction.{u2, u1} R M (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (NegZeroClass.toZero.{u1} M (SubNegZeroMonoid.toNegZeroClass.{u1} M (SubtractionMonoid.toSubNegZeroMonoid.{u1} M (SubtractionCommMonoid.toSubtractionMonoid.{u1} M (AddCommGroup.toDivisionAddCommMonoid.{u1} M _inst_2))))) (Module.toMulActionWithZero.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) (Fintype.total.{u3, u1, u2, u2} ι M R _inst_1 (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4 R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_4 (smulCommClass_self.{u2, u1} R M (CommRing.toCommMonoid.{u2} R _inst_3) (MulActionWithZero.toMulAction.{u2, u1} R M (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (NegZeroClass.toZero.{u1} M (SubNegZeroMonoid.toNegZeroClass.{u1} M (SubtractionMonoid.toSubNegZeroMonoid.{u1} M (SubtractionCommMonoid.toSubtractionMonoid.{u1} M (AddCommGroup.toDivisionAddCommMonoid.{u1} M _inst_2))))) (Module.toMulActionWithZero.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4)))) b) x)))
Case conversion may be inaccurate. Consider using '#align matrix.represents.congr_fun Matrix.Represents.congr_funₓ'. -/
theorem Matrix.Represents.congr_fun {A : Matrix ι ι R} {f : Module.End R M} (h : A.Represents b f)
(x) : Fintype.total R R b (A.mulVec x) = f (Fintype.total R R b x) :=
@@ -152,7 +152,7 @@ theorem Matrix.Represents.congr_fun {A : Matrix ι ι R} {f : Module.End R M} (h
lean 3 declaration is
forall {ι : Type.{u1}} [_inst_1 : Fintype.{u1} ι] {M : Type.{u2}} [_inst_2 : AddCommGroup.{u2} M] {R : Type.{u3}} [_inst_3 : CommRing.{u3} R] [_inst_4 : Module.{u3, u2} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2)] {b : ι -> M} [_inst_5 : DecidableEq.{succ u1} ι] {A : Matrix.{u1, u1, u3} ι ι R} {f : Module.End.{u3, u2} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4}, Iff (Matrix.Represents.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b) A f) (forall (x : ι -> R), Eq.{succ u2} M (coeFn.{max (succ (max u1 u3)) (succ u2), max (succ (max u1 u3)) (succ u2)} (LinearMap.{u3, u3, max u1 u3, u2} R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) (ι -> R) M (Pi.addCommMonoid.{u1, u3} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (Pi.Function.module.{u1, u3, u3} ι R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3))))) (Semiring.toModule.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) _inst_4) (fun (_x : LinearMap.{u3, u3, max u1 u3, u2} R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) (ι -> R) M (Pi.addCommMonoid.{u1, u3} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (Pi.Function.module.{u1, u3, u3} ι R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3))))) (Semiring.toModule.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) _inst_4) => (ι -> R) -> M) (LinearMap.hasCoeToFun.{u3, u3, max u1 u3, u2} R R (ι -> R) M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Pi.addCommMonoid.{u1, u3} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (Pi.Function.module.{u1, u3, u3} ι R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3))))) (Semiring.toModule.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) _inst_4 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3))))) (coeFn.{max (succ (max u1 u2)) (succ (max (max u1 u3) u2)), max (succ (max u1 u2)) (succ (max (max u1 u3) u2))} (LinearMap.{u3, u3, max u1 u2, max (max u1 u3) u2} R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) (ι -> M) (LinearMap.{u3, u3, max u1 u3, u2} R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) (ι -> R) M (Pi.addCommMonoid.{u1, u3} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (Pi.Function.module.{u1, u3, u3} ι R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3))))) (Semiring.toModule.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) _inst_4) (Pi.addCommMonoid.{u1, u2} ι (fun (ᾰ : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u2} M _inst_2)) (LinearMap.addCommMonoid.{u3, u3, max u1 u3, u2} R R (ι -> R) M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Pi.addCommMonoid.{u1, u3} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (Pi.Function.module.{u1, u3, u3} ι R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3))))) (Semiring.toModule.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) _inst_4 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3))))) (Pi.Function.module.{u1, u3, u2} ι R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (LinearMap.module.{u3, u3, u3, max u1 u3, u2} R R R (ι -> R) M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Pi.addCommMonoid.{u1, u3} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (Pi.Function.module.{u1, u3, u3} ι R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3))))) (Semiring.toModule.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) _inst_4 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) _inst_4 (smulCommClass_self.{u3, u2} R M (CommRing.toCommMonoid.{u3} R _inst_3) (MulActionWithZero.toMulAction.{u3, u2} R M (Semiring.toMonoidWithZero.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3))) (AddZeroClass.toHasZero.{u2} M (AddMonoid.toAddZeroClass.{u2} M (AddCommMonoid.toAddMonoid.{u2} M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2)))) (Module.toMulActionWithZero.{u3, u2} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4))))) (fun (_x : LinearMap.{u3, u3, max u1 u2, max (max u1 u3) u2} R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) (ι -> M) (LinearMap.{u3, u3, max u1 u3, u2} R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) (ι -> R) M (Pi.addCommMonoid.{u1, u3} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (Pi.Function.module.{u1, u3, u3} ι R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3))))) (Semiring.toModule.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) _inst_4) (Pi.addCommMonoid.{u1, u2} ι (fun (ᾰ : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u2} M _inst_2)) (LinearMap.addCommMonoid.{u3, u3, max u1 u3, u2} R R (ι -> R) M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Pi.addCommMonoid.{u1, u3} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (Pi.Function.module.{u1, u3, u3} ι R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3))))) (Semiring.toModule.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) _inst_4 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3))))) (Pi.Function.module.{u1, u3, u2} ι R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (LinearMap.module.{u3, u3, u3, max u1 u3, u2} R R R (ι -> R) M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Pi.addCommMonoid.{u1, u3} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (Pi.Function.module.{u1, u3, u3} ι R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3))))) (Semiring.toModule.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) _inst_4 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) _inst_4 (smulCommClass_self.{u3, u2} R M (CommRing.toCommMonoid.{u3} R _inst_3) (MulActionWithZero.toMulAction.{u3, u2} R M (Semiring.toMonoidWithZero.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3))) (AddZeroClass.toHasZero.{u2} M (AddMonoid.toAddZeroClass.{u2} M (AddCommMonoid.toAddMonoid.{u2} M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2)))) (Module.toMulActionWithZero.{u3, u2} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4))))) => (ι -> M) -> (LinearMap.{u3, u3, max u1 u3, u2} R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) (ι -> R) M (Pi.addCommMonoid.{u1, u3} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (Pi.Function.module.{u1, u3, u3} ι R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3))))) (Semiring.toModule.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) _inst_4)) (LinearMap.hasCoeToFun.{u3, u3, max u1 u2, max (max u1 u3) u2} R R (ι -> M) (LinearMap.{u3, u3, max u1 u3, u2} R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) (ι -> R) M (Pi.addCommMonoid.{u1, u3} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (Pi.Function.module.{u1, u3, u3} ι R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3))))) (Semiring.toModule.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) _inst_4) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Pi.addCommMonoid.{u1, u2} ι (fun (ᾰ : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u2} M _inst_2)) (LinearMap.addCommMonoid.{u3, u3, max u1 u3, u2} R R (ι -> R) M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Pi.addCommMonoid.{u1, u3} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (Pi.Function.module.{u1, u3, u3} ι R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3))))) (Semiring.toModule.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) _inst_4 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3))))) (Pi.Function.module.{u1, u3, u2} ι R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (LinearMap.module.{u3, u3, u3, max u1 u3, u2} R R R (ι -> R) M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Pi.addCommMonoid.{u1, u3} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (Pi.Function.module.{u1, u3, u3} ι R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3))))) (Semiring.toModule.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) _inst_4 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) _inst_4 (smulCommClass_self.{u3, u2} R M (CommRing.toCommMonoid.{u3} R _inst_3) (MulActionWithZero.toMulAction.{u3, u2} R M (Semiring.toMonoidWithZero.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3))) (AddZeroClass.toHasZero.{u2} M (AddMonoid.toAddZeroClass.{u2} M (AddCommMonoid.toAddMonoid.{u2} M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2)))) (Module.toMulActionWithZero.{u3, u2} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4)))) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3))))) (Fintype.total.{u1, u2, u3, u3} ι M R _inst_1 (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4 R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) _inst_4 (smulCommClass_self.{u3, u2} R M (CommRing.toCommMonoid.{u3} R _inst_3) (MulActionWithZero.toMulAction.{u3, u2} R M (Semiring.toMonoidWithZero.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3))) (AddZeroClass.toHasZero.{u2} M (AddMonoid.toAddZeroClass.{u2} M (AddCommMonoid.toAddMonoid.{u2} M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2)))) (Module.toMulActionWithZero.{u3, u2} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4)))) b) (Matrix.mulVec.{u3, u1, u1} ι ι R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u3} R (NonAssocRing.toNonUnitalNonAssocRing.{u3} R (Ring.toNonAssocRing.{u3} R (CommRing.toRing.{u3} R _inst_3)))) _inst_1 A x)) (coeFn.{succ u2, succ u2} (Module.End.{u3, u2} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (fun (_x : LinearMap.{u3, u3, u2, u2} R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4 _inst_4) => M -> M) (LinearMap.hasCoeToFun.{u3, u3, u2, u2} R R M M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4 _inst_4 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3))))) f (coeFn.{max (succ (max u1 u3)) (succ u2), max (succ (max u1 u3)) (succ u2)} (LinearMap.{u3, u3, max u1 u3, u2} R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) (ι -> R) M (Pi.addCommMonoid.{u1, u3} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (Pi.Function.module.{u1, u3, u3} ι R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3))))) (Semiring.toModule.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) _inst_4) (fun (_x : LinearMap.{u3, u3, max u1 u3, u2} R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) (ι -> R) M (Pi.addCommMonoid.{u1, u3} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (Pi.Function.module.{u1, u3, u3} ι R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3))))) (Semiring.toModule.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) _inst_4) => (ι -> R) -> M) (LinearMap.hasCoeToFun.{u3, u3, max u1 u3, u2} R R (ι -> R) M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Pi.addCommMonoid.{u1, u3} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (Pi.Function.module.{u1, u3, u3} ι R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3))))) (Semiring.toModule.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) _inst_4 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3))))) (coeFn.{max (succ (max u1 u2)) (succ (max (max u1 u3) u2)), max (succ (max u1 u2)) (succ (max (max u1 u3) u2))} (LinearMap.{u3, u3, max u1 u2, max (max u1 u3) u2} R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) (ι -> M) (LinearMap.{u3, u3, max u1 u3, u2} R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) (ι -> R) M (Pi.addCommMonoid.{u1, u3} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (Pi.Function.module.{u1, u3, u3} ι R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3))))) (Semiring.toModule.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) _inst_4) (Pi.addCommMonoid.{u1, u2} ι (fun (ᾰ : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u2} M _inst_2)) (LinearMap.addCommMonoid.{u3, u3, max u1 u3, u2} R R (ι -> R) M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Pi.addCommMonoid.{u1, u3} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (Pi.Function.module.{u1, u3, u3} ι R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3))))) (Semiring.toModule.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) _inst_4 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3))))) (Pi.Function.module.{u1, u3, u2} ι R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (LinearMap.module.{u3, u3, u3, max u1 u3, u2} R R R (ι -> R) M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Pi.addCommMonoid.{u1, u3} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (Pi.Function.module.{u1, u3, u3} ι R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3))))) (Semiring.toModule.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) _inst_4 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) _inst_4 (smulCommClass_self.{u3, u2} R M (CommRing.toCommMonoid.{u3} R _inst_3) (MulActionWithZero.toMulAction.{u3, u2} R M (Semiring.toMonoidWithZero.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3))) (AddZeroClass.toHasZero.{u2} M (AddMonoid.toAddZeroClass.{u2} M (AddCommMonoid.toAddMonoid.{u2} M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2)))) (Module.toMulActionWithZero.{u3, u2} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4))))) (fun (_x : LinearMap.{u3, u3, max u1 u2, max (max u1 u3) u2} R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) (ι -> M) (LinearMap.{u3, u3, max u1 u3, u2} R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) (ι -> R) M (Pi.addCommMonoid.{u1, u3} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (Pi.Function.module.{u1, u3, u3} ι R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3))))) (Semiring.toModule.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) _inst_4) (Pi.addCommMonoid.{u1, u2} ι (fun (ᾰ : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u2} M _inst_2)) (LinearMap.addCommMonoid.{u3, u3, max u1 u3, u2} R R (ι -> R) M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Pi.addCommMonoid.{u1, u3} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (Pi.Function.module.{u1, u3, u3} ι R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3))))) (Semiring.toModule.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) _inst_4 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3))))) (Pi.Function.module.{u1, u3, u2} ι R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (LinearMap.module.{u3, u3, u3, max u1 u3, u2} R R R (ι -> R) M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Pi.addCommMonoid.{u1, u3} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (Pi.Function.module.{u1, u3, u3} ι R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3))))) (Semiring.toModule.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) _inst_4 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) _inst_4 (smulCommClass_self.{u3, u2} R M (CommRing.toCommMonoid.{u3} R _inst_3) (MulActionWithZero.toMulAction.{u3, u2} R M (Semiring.toMonoidWithZero.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3))) (AddZeroClass.toHasZero.{u2} M (AddMonoid.toAddZeroClass.{u2} M (AddCommMonoid.toAddMonoid.{u2} M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2)))) (Module.toMulActionWithZero.{u3, u2} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4))))) => (ι -> M) -> (LinearMap.{u3, u3, max u1 u3, u2} R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) (ι -> R) M (Pi.addCommMonoid.{u1, u3} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (Pi.Function.module.{u1, u3, u3} ι R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3))))) (Semiring.toModule.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) _inst_4)) (LinearMap.hasCoeToFun.{u3, u3, max u1 u2, max (max u1 u3) u2} R R (ι -> M) (LinearMap.{u3, u3, max u1 u3, u2} R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) (ι -> R) M (Pi.addCommMonoid.{u1, u3} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (Pi.Function.module.{u1, u3, u3} ι R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3))))) (Semiring.toModule.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) _inst_4) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Pi.addCommMonoid.{u1, u2} ι (fun (ᾰ : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u2} M _inst_2)) (LinearMap.addCommMonoid.{u3, u3, max u1 u3, u2} R R (ι -> R) M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Pi.addCommMonoid.{u1, u3} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (Pi.Function.module.{u1, u3, u3} ι R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3))))) (Semiring.toModule.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) _inst_4 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3))))) (Pi.Function.module.{u1, u3, u2} ι R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (LinearMap.module.{u3, u3, u3, max u1 u3, u2} R R R (ι -> R) M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Pi.addCommMonoid.{u1, u3} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (Pi.Function.module.{u1, u3, u3} ι R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3))))) (Semiring.toModule.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) _inst_4 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) _inst_4 (smulCommClass_self.{u3, u2} R M (CommRing.toCommMonoid.{u3} R _inst_3) (MulActionWithZero.toMulAction.{u3, u2} R M (Semiring.toMonoidWithZero.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3))) (AddZeroClass.toHasZero.{u2} M (AddMonoid.toAddZeroClass.{u2} M (AddCommMonoid.toAddMonoid.{u2} M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2)))) (Module.toMulActionWithZero.{u3, u2} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4)))) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3))))) (Fintype.total.{u1, u2, u3, u3} ι M R _inst_1 (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4 R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) _inst_4 (smulCommClass_self.{u3, u2} R M (CommRing.toCommMonoid.{u3} R _inst_3) (MulActionWithZero.toMulAction.{u3, u2} R M (Semiring.toMonoidWithZero.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3))) (AddZeroClass.toHasZero.{u2} M (AddMonoid.toAddZeroClass.{u2} M (AddCommMonoid.toAddMonoid.{u2} M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2)))) (Module.toMulActionWithZero.{u3, u2} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4)))) b) x)))
but is expected to have type
- forall {ι : Type.{u3}} [_inst_1 : Fintype.{u3} ι] {M : Type.{u1}} [_inst_2 : AddCommGroup.{u1} M] {R : Type.{u2}} [_inst_3 : CommRing.{u2} R] [_inst_4 : Module.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2)] {b : ι -> M} [_inst_5 : DecidableEq.{succ u3} ι] {A : Matrix.{u3, u3, u2} ι ι R} {f : Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4}, Iff (Matrix.Represents.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b) A f) (forall (x : ι -> R), Eq.{succ u1} ((fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6191 : ι -> R) => M) (Matrix.mulVec.{u2, u3, u3} ι ι R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_3)))) _inst_1 A x)) (FunLike.coe.{max (max (succ u3) (succ u1)) (succ u2), max (succ u3) (succ u2), succ u1} ((fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6191 : ι -> M) => LinearMap.{u2, u2, max u3 u2, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (ι -> R) M (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Finsupp._hyg.14570 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Finsupp._hyg.14570 : ι) => R) R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) (fun (i : ι) => Semiring.toModule.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) _inst_4) b) (ι -> R) (fun (_x : ι -> R) => (fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6191 : ι -> R) => M) _x) (LinearMap.instFunLikeLinearMap.{u2, u2, max u3 u2, u1} R R (ι -> R) M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Pi.addCommMonoid.{u3, u2} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Finsupp._hyg.14570 : ι) => R) R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) (fun (i : ι) => Semiring.toModule.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) _inst_4 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), max (succ u1) (succ u3), max (max (succ u2) (succ u1)) (succ u3)} (LinearMap.{u2, u2, max u3 u1, max u1 u3 u2} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (ι -> M) (LinearMap.{u2, u2, max u3 u2, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (ι -> R) M (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Finsupp._hyg.14570 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Finsupp._hyg.14570 : ι) => R) R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) (fun (i : ι) => Semiring.toModule.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) _inst_4) (Pi.addCommMonoid.{u3, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Finsupp._hyg.14558 : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u1} M _inst_2)) (LinearMap.addCommMonoid.{u2, u2, max u3 u2, u1} R R (ι -> R) M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Finsupp._hyg.14570 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Finsupp._hyg.14570 : ι) => R) R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) (fun (i : ι) => Semiring.toModule.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) _inst_4 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) (Pi.module.{u3, u1, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Finsupp._hyg.14558 : ι) => M) R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (fun (i : ι) => _inst_4)) (LinearMap.instModuleLinearMapAddCommMonoid.{u2, u2, u2, max u3 u2, u1} R R R (ι -> R) M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Finsupp._hyg.14570 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Finsupp._hyg.14570 : ι) => R) R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) (fun (i : ι) => Semiring.toModule.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) _inst_4 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_4 (smulCommClass_self.{u2, u1} R M (CommRing.toCommMonoid.{u2} R _inst_3) (MulActionWithZero.toMulAction.{u2, u1} R M (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (NegZeroClass.toZero.{u1} M (SubNegZeroMonoid.toNegZeroClass.{u1} M (SubtractionMonoid.toSubNegZeroMonoid.{u1} M (SubtractionCommMonoid.toSubtractionMonoid.{u1} M (AddCommGroup.toDivisionAddCommMonoid.{u1} M _inst_2))))) (Module.toMulActionWithZero.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4))))) (ι -> M) (fun (_x : ι -> M) => (fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6191 : ι -> M) => LinearMap.{u2, u2, max u3 u2, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (ι -> R) M (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Finsupp._hyg.14570 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Finsupp._hyg.14570 : ι) => R) R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) (fun (i : ι) => Semiring.toModule.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) _inst_4) _x) (LinearMap.instFunLikeLinearMap.{u2, u2, max u1 u3, max (max u2 u1) u3} R R (ι -> M) (LinearMap.{u2, u2, max u3 u2, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (ι -> R) M (Pi.addCommMonoid.{u3, u2} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Finsupp._hyg.14570 : ι) => R) R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) (fun (i : ι) => Semiring.toModule.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) _inst_4) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Pi.addCommMonoid.{u3, u1} ι (fun (ᾰ : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u1} M _inst_2)) (LinearMap.addCommMonoid.{u2, u2, max u3 u2, u1} R R (ι -> R) M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Pi.addCommMonoid.{u3, u2} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Finsupp._hyg.14570 : ι) => R) R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) (fun (i : ι) => Semiring.toModule.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) _inst_4 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) (Pi.module.{u3, u1, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Finsupp._hyg.14558 : ι) => M) R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (fun (i : ι) => _inst_4)) (LinearMap.instModuleLinearMapAddCommMonoid.{u2, u2, u2, max u3 u2, u1} R R R (ι -> R) M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Pi.addCommMonoid.{u3, u2} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Finsupp._hyg.14570 : ι) => R) R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) (fun (i : ι) => Semiring.toModule.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) _inst_4 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_4 (smulCommClass_self.{u2, u1} R M (CommRing.toCommMonoid.{u2} R _inst_3) (MulActionWithZero.toMulAction.{u2, u1} R M (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (NegZeroClass.toZero.{u1} M (SubNegZeroMonoid.toNegZeroClass.{u1} M (SubtractionMonoid.toSubNegZeroMonoid.{u1} M (SubtractionCommMonoid.toSubtractionMonoid.{u1} M (AddCommGroup.toDivisionAddCommMonoid.{u1} M _inst_2))))) (Module.toMulActionWithZero.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) (Fintype.total.{u3, u1, u2, u2} ι M R _inst_1 (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4 R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_4 (smulCommClass_self.{u2, u1} R M (CommRing.toCommMonoid.{u2} R _inst_3) (MulActionWithZero.toMulAction.{u2, u1} R M (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (NegZeroClass.toZero.{u1} M (SubNegZeroMonoid.toNegZeroClass.{u1} M (SubtractionMonoid.toSubNegZeroMonoid.{u1} M (SubtractionCommMonoid.toSubtractionMonoid.{u1} M (AddCommGroup.toDivisionAddCommMonoid.{u1} M _inst_2))))) (Module.toMulActionWithZero.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4)))) b) (Matrix.mulVec.{u2, u3, u3} ι ι R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_3)))) _inst_1 A x)) (FunLike.coe.{succ u1, succ u1, succ u1} (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6191 : M) => M) _x) (LinearMap.instFunLikeLinearMap.{u2, u2, u1, u1} R R M M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4 _inst_4 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) f (FunLike.coe.{max (max (succ u3) (succ u1)) (succ u2), max (succ u3) (succ u2), succ u1} ((fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6191 : ι -> M) => LinearMap.{u2, u2, max u3 u2, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (ι -> R) M (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Finsupp._hyg.14570 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Finsupp._hyg.14570 : ι) => R) R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) (fun (i : ι) => Semiring.toModule.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) _inst_4) b) (ι -> R) (fun (_x : ι -> R) => (fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6191 : ι -> R) => M) _x) (LinearMap.instFunLikeLinearMap.{u2, u2, max u3 u2, u1} R R (ι -> R) M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Pi.addCommMonoid.{u3, u2} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Finsupp._hyg.14570 : ι) => R) R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) (fun (i : ι) => Semiring.toModule.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) _inst_4 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), max (succ u1) (succ u3), max (max (succ u2) (succ u1)) (succ u3)} (LinearMap.{u2, u2, max u3 u1, max u1 u3 u2} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (ι -> M) (LinearMap.{u2, u2, max u3 u2, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (ι -> R) M (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Finsupp._hyg.14570 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Finsupp._hyg.14570 : ι) => R) R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) (fun (i : ι) => Semiring.toModule.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) _inst_4) (Pi.addCommMonoid.{u3, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Finsupp._hyg.14558 : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u1} M _inst_2)) (LinearMap.addCommMonoid.{u2, u2, max u3 u2, u1} R R (ι -> R) M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Finsupp._hyg.14570 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Finsupp._hyg.14570 : ι) => R) R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) (fun (i : ι) => Semiring.toModule.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) _inst_4 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) (Pi.module.{u3, u1, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Finsupp._hyg.14558 : ι) => M) R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (fun (i : ι) => _inst_4)) (LinearMap.instModuleLinearMapAddCommMonoid.{u2, u2, u2, max u3 u2, u1} R R R (ι -> R) M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Finsupp._hyg.14570 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Finsupp._hyg.14570 : ι) => R) R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) (fun (i : ι) => Semiring.toModule.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) _inst_4 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_4 (smulCommClass_self.{u2, u1} R M (CommRing.toCommMonoid.{u2} R _inst_3) (MulActionWithZero.toMulAction.{u2, u1} R M (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (NegZeroClass.toZero.{u1} M (SubNegZeroMonoid.toNegZeroClass.{u1} M (SubtractionMonoid.toSubNegZeroMonoid.{u1} M (SubtractionCommMonoid.toSubtractionMonoid.{u1} M (AddCommGroup.toDivisionAddCommMonoid.{u1} M _inst_2))))) (Module.toMulActionWithZero.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4))))) (ι -> M) (fun (_x : ι -> M) => (fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6191 : ι -> M) => LinearMap.{u2, u2, max u3 u2, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (ι -> R) M (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Finsupp._hyg.14570 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Finsupp._hyg.14570 : ι) => R) R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) (fun (i : ι) => Semiring.toModule.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) _inst_4) _x) (LinearMap.instFunLikeLinearMap.{u2, u2, max u1 u3, max (max u2 u1) u3} R R (ι -> M) (LinearMap.{u2, u2, max u3 u2, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (ι -> R) M (Pi.addCommMonoid.{u3, u2} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Finsupp._hyg.14570 : ι) => R) R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) (fun (i : ι) => Semiring.toModule.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) _inst_4) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Pi.addCommMonoid.{u3, u1} ι (fun (ᾰ : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u1} M _inst_2)) (LinearMap.addCommMonoid.{u2, u2, max u3 u2, u1} R R (ι -> R) M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Pi.addCommMonoid.{u3, u2} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Finsupp._hyg.14570 : ι) => R) R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) (fun (i : ι) => Semiring.toModule.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) _inst_4 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) (Pi.module.{u3, u1, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Finsupp._hyg.14558 : ι) => M) R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (fun (i : ι) => _inst_4)) (LinearMap.instModuleLinearMapAddCommMonoid.{u2, u2, u2, max u3 u2, u1} R R R (ι -> R) M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Pi.addCommMonoid.{u3, u2} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Finsupp._hyg.14570 : ι) => R) R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) (fun (i : ι) => Semiring.toModule.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) _inst_4 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_4 (smulCommClass_self.{u2, u1} R M (CommRing.toCommMonoid.{u2} R _inst_3) (MulActionWithZero.toMulAction.{u2, u1} R M (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (NegZeroClass.toZero.{u1} M (SubNegZeroMonoid.toNegZeroClass.{u1} M (SubtractionMonoid.toSubNegZeroMonoid.{u1} M (SubtractionCommMonoid.toSubtractionMonoid.{u1} M (AddCommGroup.toDivisionAddCommMonoid.{u1} M _inst_2))))) (Module.toMulActionWithZero.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) (Fintype.total.{u3, u1, u2, u2} ι M R _inst_1 (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4 R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_4 (smulCommClass_self.{u2, u1} R M (CommRing.toCommMonoid.{u2} R _inst_3) (MulActionWithZero.toMulAction.{u2, u1} R M (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (NegZeroClass.toZero.{u1} M (SubNegZeroMonoid.toNegZeroClass.{u1} M (SubtractionMonoid.toSubNegZeroMonoid.{u1} M (SubtractionCommMonoid.toSubtractionMonoid.{u1} M (AddCommGroup.toDivisionAddCommMonoid.{u1} M _inst_2))))) (Module.toMulActionWithZero.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4)))) b) x)))
+ forall {ι : Type.{u3}} [_inst_1 : Fintype.{u3} ι] {M : Type.{u1}} [_inst_2 : AddCommGroup.{u1} M] {R : Type.{u2}} [_inst_3 : CommRing.{u2} R] [_inst_4 : Module.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2)] {b : ι -> M} [_inst_5 : DecidableEq.{succ u3} ι] {A : Matrix.{u3, u3, u2} ι ι R} {f : Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4}, Iff (Matrix.Represents.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b) A f) (forall (x : ι -> R), Eq.{succ u1} ((fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6193 : ι -> R) => M) (Matrix.mulVec.{u2, u3, u3} ι ι R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_3)))) _inst_1 A x)) (FunLike.coe.{max (max (succ u3) (succ u1)) (succ u2), max (succ u3) (succ u2), succ u1} ((fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6193 : ι -> M) => LinearMap.{u2, u2, max u3 u2, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (ι -> R) M (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Finsupp._hyg.14570 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Finsupp._hyg.14570 : ι) => R) R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) (fun (i : ι) => Semiring.toModule.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) _inst_4) b) (ι -> R) (fun (_x : ι -> R) => (fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6193 : ι -> R) => M) _x) (LinearMap.instFunLikeLinearMap.{u2, u2, max u3 u2, u1} R R (ι -> R) M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Pi.addCommMonoid.{u3, u2} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Finsupp._hyg.14570 : ι) => R) R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) (fun (i : ι) => Semiring.toModule.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) _inst_4 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), max (succ u1) (succ u3), max (max (succ u2) (succ u1)) (succ u3)} (LinearMap.{u2, u2, max u3 u1, max u1 u3 u2} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (ι -> M) (LinearMap.{u2, u2, max u3 u2, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (ι -> R) M (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Finsupp._hyg.14570 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Finsupp._hyg.14570 : ι) => R) R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) (fun (i : ι) => Semiring.toModule.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) _inst_4) (Pi.addCommMonoid.{u3, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Finsupp._hyg.14558 : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u1} M _inst_2)) (LinearMap.addCommMonoid.{u2, u2, max u3 u2, u1} R R (ι -> R) M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Finsupp._hyg.14570 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Finsupp._hyg.14570 : ι) => R) R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) (fun (i : ι) => Semiring.toModule.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) _inst_4 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) (Pi.module.{u3, u1, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Finsupp._hyg.14558 : ι) => M) R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (fun (i : ι) => _inst_4)) (LinearMap.instModuleLinearMapAddCommMonoid.{u2, u2, u2, max u3 u2, u1} R R R (ι -> R) M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Finsupp._hyg.14570 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Finsupp._hyg.14570 : ι) => R) R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) (fun (i : ι) => Semiring.toModule.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) _inst_4 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_4 (smulCommClass_self.{u2, u1} R M (CommRing.toCommMonoid.{u2} R _inst_3) (MulActionWithZero.toMulAction.{u2, u1} R M (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (NegZeroClass.toZero.{u1} M (SubNegZeroMonoid.toNegZeroClass.{u1} M (SubtractionMonoid.toSubNegZeroMonoid.{u1} M (SubtractionCommMonoid.toSubtractionMonoid.{u1} M (AddCommGroup.toDivisionAddCommMonoid.{u1} M _inst_2))))) (Module.toMulActionWithZero.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4))))) (ι -> M) (fun (_x : ι -> M) => (fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6193 : ι -> M) => LinearMap.{u2, u2, max u3 u2, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (ι -> R) M (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Finsupp._hyg.14570 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Finsupp._hyg.14570 : ι) => R) R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) (fun (i : ι) => Semiring.toModule.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) _inst_4) _x) (LinearMap.instFunLikeLinearMap.{u2, u2, max u1 u3, max (max u2 u1) u3} R R (ι -> M) (LinearMap.{u2, u2, max u3 u2, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (ι -> R) M (Pi.addCommMonoid.{u3, u2} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Finsupp._hyg.14570 : ι) => R) R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) (fun (i : ι) => Semiring.toModule.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) _inst_4) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Pi.addCommMonoid.{u3, u1} ι (fun (ᾰ : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u1} M _inst_2)) (LinearMap.addCommMonoid.{u2, u2, max u3 u2, u1} R R (ι -> R) M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Pi.addCommMonoid.{u3, u2} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Finsupp._hyg.14570 : ι) => R) R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) (fun (i : ι) => Semiring.toModule.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) _inst_4 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) (Pi.module.{u3, u1, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Finsupp._hyg.14558 : ι) => M) R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (fun (i : ι) => _inst_4)) (LinearMap.instModuleLinearMapAddCommMonoid.{u2, u2, u2, max u3 u2, u1} R R R (ι -> R) M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Pi.addCommMonoid.{u3, u2} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Finsupp._hyg.14570 : ι) => R) R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) (fun (i : ι) => Semiring.toModule.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) _inst_4 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_4 (smulCommClass_self.{u2, u1} R M (CommRing.toCommMonoid.{u2} R _inst_3) (MulActionWithZero.toMulAction.{u2, u1} R M (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (NegZeroClass.toZero.{u1} M (SubNegZeroMonoid.toNegZeroClass.{u1} M (SubtractionMonoid.toSubNegZeroMonoid.{u1} M (SubtractionCommMonoid.toSubtractionMonoid.{u1} M (AddCommGroup.toDivisionAddCommMonoid.{u1} M _inst_2))))) (Module.toMulActionWithZero.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) (Fintype.total.{u3, u1, u2, u2} ι M R _inst_1 (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4 R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_4 (smulCommClass_self.{u2, u1} R M (CommRing.toCommMonoid.{u2} R _inst_3) (MulActionWithZero.toMulAction.{u2, u1} R M (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (NegZeroClass.toZero.{u1} M (SubNegZeroMonoid.toNegZeroClass.{u1} M (SubtractionMonoid.toSubNegZeroMonoid.{u1} M (SubtractionCommMonoid.toSubtractionMonoid.{u1} M (AddCommGroup.toDivisionAddCommMonoid.{u1} M _inst_2))))) (Module.toMulActionWithZero.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4)))) b) (Matrix.mulVec.{u2, u3, u3} ι ι R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_3)))) _inst_1 A x)) (FunLike.coe.{succ u1, succ u1, succ u1} (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6193 : M) => M) _x) (LinearMap.instFunLikeLinearMap.{u2, u2, u1, u1} R R M M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4 _inst_4 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) f (FunLike.coe.{max (max (succ u3) (succ u1)) (succ u2), max (succ u3) (succ u2), succ u1} ((fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6193 : ι -> M) => LinearMap.{u2, u2, max u3 u2, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (ι -> R) M (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Finsupp._hyg.14570 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Finsupp._hyg.14570 : ι) => R) R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) (fun (i : ι) => Semiring.toModule.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) _inst_4) b) (ι -> R) (fun (_x : ι -> R) => (fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6193 : ι -> R) => M) _x) (LinearMap.instFunLikeLinearMap.{u2, u2, max u3 u2, u1} R R (ι -> R) M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Pi.addCommMonoid.{u3, u2} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Finsupp._hyg.14570 : ι) => R) R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) (fun (i : ι) => Semiring.toModule.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) _inst_4 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), max (succ u1) (succ u3), max (max (succ u2) (succ u1)) (succ u3)} (LinearMap.{u2, u2, max u3 u1, max u1 u3 u2} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (ι -> M) (LinearMap.{u2, u2, max u3 u2, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (ι -> R) M (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Finsupp._hyg.14570 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Finsupp._hyg.14570 : ι) => R) R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) (fun (i : ι) => Semiring.toModule.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) _inst_4) (Pi.addCommMonoid.{u3, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Finsupp._hyg.14558 : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u1} M _inst_2)) (LinearMap.addCommMonoid.{u2, u2, max u3 u2, u1} R R (ι -> R) M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Finsupp._hyg.14570 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Finsupp._hyg.14570 : ι) => R) R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) (fun (i : ι) => Semiring.toModule.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) _inst_4 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) (Pi.module.{u3, u1, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Finsupp._hyg.14558 : ι) => M) R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (fun (i : ι) => _inst_4)) (LinearMap.instModuleLinearMapAddCommMonoid.{u2, u2, u2, max u3 u2, u1} R R R (ι -> R) M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Finsupp._hyg.14570 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Finsupp._hyg.14570 : ι) => R) R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) (fun (i : ι) => Semiring.toModule.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) _inst_4 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_4 (smulCommClass_self.{u2, u1} R M (CommRing.toCommMonoid.{u2} R _inst_3) (MulActionWithZero.toMulAction.{u2, u1} R M (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (NegZeroClass.toZero.{u1} M (SubNegZeroMonoid.toNegZeroClass.{u1} M (SubtractionMonoid.toSubNegZeroMonoid.{u1} M (SubtractionCommMonoid.toSubtractionMonoid.{u1} M (AddCommGroup.toDivisionAddCommMonoid.{u1} M _inst_2))))) (Module.toMulActionWithZero.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4))))) (ι -> M) (fun (_x : ι -> M) => (fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6193 : ι -> M) => LinearMap.{u2, u2, max u3 u2, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (ι -> R) M (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Finsupp._hyg.14570 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Finsupp._hyg.14570 : ι) => R) R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) (fun (i : ι) => Semiring.toModule.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) _inst_4) _x) (LinearMap.instFunLikeLinearMap.{u2, u2, max u1 u3, max (max u2 u1) u3} R R (ι -> M) (LinearMap.{u2, u2, max u3 u2, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (ι -> R) M (Pi.addCommMonoid.{u3, u2} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Finsupp._hyg.14570 : ι) => R) R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) (fun (i : ι) => Semiring.toModule.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) _inst_4) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Pi.addCommMonoid.{u3, u1} ι (fun (ᾰ : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u1} M _inst_2)) (LinearMap.addCommMonoid.{u2, u2, max u3 u2, u1} R R (ι -> R) M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Pi.addCommMonoid.{u3, u2} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Finsupp._hyg.14570 : ι) => R) R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) (fun (i : ι) => Semiring.toModule.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) _inst_4 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) (Pi.module.{u3, u1, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Finsupp._hyg.14558 : ι) => M) R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (fun (i : ι) => _inst_4)) (LinearMap.instModuleLinearMapAddCommMonoid.{u2, u2, u2, max u3 u2, u1} R R R (ι -> R) M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Pi.addCommMonoid.{u3, u2} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Finsupp._hyg.14570 : ι) => R) R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) (fun (i : ι) => Semiring.toModule.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) _inst_4 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_4 (smulCommClass_self.{u2, u1} R M (CommRing.toCommMonoid.{u2} R _inst_3) (MulActionWithZero.toMulAction.{u2, u1} R M (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (NegZeroClass.toZero.{u1} M (SubNegZeroMonoid.toNegZeroClass.{u1} M (SubtractionMonoid.toSubNegZeroMonoid.{u1} M (SubtractionCommMonoid.toSubtractionMonoid.{u1} M (AddCommGroup.toDivisionAddCommMonoid.{u1} M _inst_2))))) (Module.toMulActionWithZero.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) (Fintype.total.{u3, u1, u2, u2} ι M R _inst_1 (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4 R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_4 (smulCommClass_self.{u2, u1} R M (CommRing.toCommMonoid.{u2} R _inst_3) (MulActionWithZero.toMulAction.{u2, u1} R M (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (NegZeroClass.toZero.{u1} M (SubNegZeroMonoid.toNegZeroClass.{u1} M (SubtractionMonoid.toSubNegZeroMonoid.{u1} M (SubtractionCommMonoid.toSubtractionMonoid.{u1} M (AddCommGroup.toDivisionAddCommMonoid.{u1} M _inst_2))))) (Module.toMulActionWithZero.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4)))) b) x)))
Case conversion may be inaccurate. Consider using '#align matrix.represents_iff Matrix.represents_iffₓ'. -/
theorem Matrix.represents_iff {A : Matrix ι ι R} {f : Module.End R M} :
A.Represents b f ↔ ∀ x, Fintype.total R R b (A.mulVec x) = f (Fintype.total R R b x) :=
@@ -163,7 +163,7 @@ theorem Matrix.represents_iff {A : Matrix ι ι R} {f : Module.End R M} :
lean 3 declaration is
forall {ι : Type.{u1}} [_inst_1 : Fintype.{u1} ι] {M : Type.{u2}} [_inst_2 : AddCommGroup.{u2} M] {R : Type.{u3}} [_inst_3 : CommRing.{u3} R] [_inst_4 : Module.{u3, u2} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2)] {b : ι -> M} [_inst_5 : DecidableEq.{succ u1} ι] {A : Matrix.{u1, u1, u3} ι ι R} {f : Module.End.{u3, u2} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4}, Iff (Matrix.Represents.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b) A f) (forall (j : ι), Eq.{succ u2} M (Finset.sum.{u2, u1} M ι (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (Finset.univ.{u1} ι _inst_1) (fun (i : ι) => SMul.smul.{u3, u2} R M (SMulZeroClass.toHasSmul.{u3, u2} R M (AddZeroClass.toHasZero.{u2} M (AddMonoid.toAddZeroClass.{u2} M (AddCommMonoid.toAddMonoid.{u2} M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2)))) (SMulWithZero.toSmulZeroClass.{u3, u2} R M (MulZeroClass.toHasZero.{u3} R (MulZeroOneClass.toMulZeroClass.{u3} R (MonoidWithZero.toMulZeroOneClass.{u3} R (Semiring.toMonoidWithZero.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))))) (AddZeroClass.toHasZero.{u2} M (AddMonoid.toAddZeroClass.{u2} M (AddCommMonoid.toAddMonoid.{u2} M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2)))) (MulActionWithZero.toSMulWithZero.{u3, u2} R M (Semiring.toMonoidWithZero.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3))) (AddZeroClass.toHasZero.{u2} M (AddMonoid.toAddZeroClass.{u2} M (AddCommMonoid.toAddMonoid.{u2} M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2)))) (Module.toMulActionWithZero.{u3, u2} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4)))) (A i j) (b i))) (coeFn.{succ u2, succ u2} (Module.End.{u3, u2} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (fun (_x : LinearMap.{u3, u3, u2, u2} R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4 _inst_4) => M -> M) (LinearMap.hasCoeToFun.{u3, u3, u2, u2} R R M M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4 _inst_4 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3))))) f (b j)))
but is expected to have type
- forall {ι : Type.{u3}} [_inst_1 : Fintype.{u3} ι] {M : Type.{u1}} [_inst_2 : AddCommGroup.{u1} M] {R : Type.{u2}} [_inst_3 : CommRing.{u2} R] [_inst_4 : Module.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2)] {b : ι -> M} [_inst_5 : DecidableEq.{succ u3} ι] {A : Matrix.{u3, u3, u2} ι ι R} {f : Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4}, Iff (Matrix.Represents.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b) A f) (forall (j : ι), Eq.{succ u1} M (Finset.sum.{u1, u3} M ι (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (Finset.univ.{u3} ι _inst_1) (fun (i : ι) => HSMul.hSMul.{u2, u1, u1} R M M (instHSMul.{u2, u1} R M (SMulZeroClass.toSMul.{u2, u1} R M (NegZeroClass.toZero.{u1} M (SubNegZeroMonoid.toNegZeroClass.{u1} M (SubtractionMonoid.toSubNegZeroMonoid.{u1} M (SubtractionCommMonoid.toSubtractionMonoid.{u1} M (AddCommGroup.toDivisionAddCommMonoid.{u1} M _inst_2))))) (SMulWithZero.toSMulZeroClass.{u2, u1} R M (CommMonoidWithZero.toZero.{u2} R (CommSemiring.toCommMonoidWithZero.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (NegZeroClass.toZero.{u1} M (SubNegZeroMonoid.toNegZeroClass.{u1} M (SubtractionMonoid.toSubNegZeroMonoid.{u1} M (SubtractionCommMonoid.toSubtractionMonoid.{u1} M (AddCommGroup.toDivisionAddCommMonoid.{u1} M _inst_2))))) (MulActionWithZero.toSMulWithZero.{u2, u1} R M (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (NegZeroClass.toZero.{u1} M (SubNegZeroMonoid.toNegZeroClass.{u1} M (SubtractionMonoid.toSubNegZeroMonoid.{u1} M (SubtractionCommMonoid.toSubtractionMonoid.{u1} M (AddCommGroup.toDivisionAddCommMonoid.{u1} M _inst_2))))) (Module.toMulActionWithZero.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4))))) (A i j) (b i))) (FunLike.coe.{succ u1, succ u1, succ u1} (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6191 : M) => M) _x) (LinearMap.instFunLikeLinearMap.{u2, u2, u1, u1} R R M M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4 _inst_4 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) f (b j)))
+ forall {ι : Type.{u3}} [_inst_1 : Fintype.{u3} ι] {M : Type.{u1}} [_inst_2 : AddCommGroup.{u1} M] {R : Type.{u2}} [_inst_3 : CommRing.{u2} R] [_inst_4 : Module.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2)] {b : ι -> M} [_inst_5 : DecidableEq.{succ u3} ι] {A : Matrix.{u3, u3, u2} ι ι R} {f : Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4}, Iff (Matrix.Represents.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b) A f) (forall (j : ι), Eq.{succ u1} M (Finset.sum.{u1, u3} M ι (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (Finset.univ.{u3} ι _inst_1) (fun (i : ι) => HSMul.hSMul.{u2, u1, u1} R M M (instHSMul.{u2, u1} R M (SMulZeroClass.toSMul.{u2, u1} R M (NegZeroClass.toZero.{u1} M (SubNegZeroMonoid.toNegZeroClass.{u1} M (SubtractionMonoid.toSubNegZeroMonoid.{u1} M (SubtractionCommMonoid.toSubtractionMonoid.{u1} M (AddCommGroup.toDivisionAddCommMonoid.{u1} M _inst_2))))) (SMulWithZero.toSMulZeroClass.{u2, u1} R M (CommMonoidWithZero.toZero.{u2} R (CommSemiring.toCommMonoidWithZero.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (NegZeroClass.toZero.{u1} M (SubNegZeroMonoid.toNegZeroClass.{u1} M (SubtractionMonoid.toSubNegZeroMonoid.{u1} M (SubtractionCommMonoid.toSubtractionMonoid.{u1} M (AddCommGroup.toDivisionAddCommMonoid.{u1} M _inst_2))))) (MulActionWithZero.toSMulWithZero.{u2, u1} R M (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (NegZeroClass.toZero.{u1} M (SubNegZeroMonoid.toNegZeroClass.{u1} M (SubtractionMonoid.toSubNegZeroMonoid.{u1} M (SubtractionCommMonoid.toSubtractionMonoid.{u1} M (AddCommGroup.toDivisionAddCommMonoid.{u1} M _inst_2))))) (Module.toMulActionWithZero.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4))))) (A i j) (b i))) (FunLike.coe.{succ u1, succ u1, succ u1} (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6193 : M) => M) _x) (LinearMap.instFunLikeLinearMap.{u2, u2, u1, u1} R R M M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4 _inst_4 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) f (b j)))
Case conversion may be inaccurate. Consider using '#align matrix.represents_iff' Matrix.represents_iff'ₓ'. -/
theorem Matrix.represents_iff' {A : Matrix ι ι R} {f : Module.End R M} :
A.Represents b f ↔ ∀ j, (∑ i : ι, A i j • b i) = f (b j) :=
@@ -295,7 +295,7 @@ noncomputable def Matrix.isRepresentation.toEnd : Matrix.isRepresentation R b
lean 3 declaration is
forall {ι : Type.{u1}} [_inst_1 : Fintype.{u1} ι] {M : Type.{u2}} [_inst_2 : AddCommGroup.{u2} M] (R : Type.{u3}) [_inst_3 : CommRing.{u3} R] [_inst_4 : Module.{u3, u2} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2)] (b : ι -> M) (hb : Eq.{succ u2} (Submodule.{u3, u2} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (Submodule.span.{u3, u2} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4 (Set.range.{u2, succ u1} M ι b)) (Top.top.{u2} (Submodule.{u3, u2} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (Submodule.hasTop.{u3, u2} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4))) [_inst_5 : DecidableEq.{succ u1} ι] (A : coeSort.{succ (max u1 u3), succ (succ (max u1 u3))} (Subalgebra.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.algebra.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) Type.{max u1 u3} (SetLike.hasCoeToSort.{max u1 u3, max u1 u3} (Subalgebra.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.algebra.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.setLike.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.algebra.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))))) (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))), Matrix.Represents.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b) ((fun (a : Type.{max u1 u3}) (b : Type.{max u1 u3}) [self : HasLiftT.{succ (max u1 u3), succ (max u1 u3)} a b] => self.0) (coeSort.{succ (max u1 u3), succ (succ (max u1 u3))} (Subalgebra.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.algebra.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) Type.{max u1 u3} (SetLike.hasCoeToSort.{max u1 u3, max u1 u3} (Subalgebra.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.algebra.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.setLike.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.algebra.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))))) (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))) (Matrix.{u1, u1, u3} ι ι R) (HasLiftT.mk.{succ (max u1 u3), succ (max u1 u3)} (coeSort.{succ (max u1 u3), succ (succ (max u1 u3))} (Subalgebra.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.algebra.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) Type.{max u1 u3} (SetLike.hasCoeToSort.{max u1 u3, max u1 u3} (Subalgebra.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.algebra.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.setLike.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.algebra.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))))) (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))) (Matrix.{u1, u1, u3} ι ι R) (CoeTCₓ.coe.{succ (max u1 u3), succ (max u1 u3)} (coeSort.{succ (max u1 u3), succ (succ (max u1 u3))} (Subalgebra.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.algebra.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) Type.{max u1 u3} (SetLike.hasCoeToSort.{max u1 u3, max u1 u3} (Subalgebra.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.algebra.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.setLike.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.algebra.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))))) (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))) (Matrix.{u1, u1, u3} ι ι R) (coeBase.{succ (max u1 u3), succ (max u1 u3)} (coeSort.{succ (max u1 u3), succ (succ (max u1 u3))} (Subalgebra.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.algebra.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) Type.{max u1 u3} (SetLike.hasCoeToSort.{max u1 u3, max u1 u3} (Subalgebra.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.algebra.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.setLike.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.algebra.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))))) (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))) (Matrix.{u1, u1, u3} ι ι R) (coeSubtype.{succ (max u1 u3)} (Matrix.{u1, u1, u3} ι ι R) (fun (x : Matrix.{u1, u1, u3} ι ι R) => Membership.Mem.{max u1 u3, max u1 u3} (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.algebra.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (SetLike.hasMem.{max u1 u3, max u1 u3} (Subalgebra.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.algebra.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.setLike.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.algebra.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))))) x (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))))))) A) (coeFn.{max (succ (max u1 u3)) (succ u2), max (succ (max u1 u3)) (succ u2)} (AlgHom.{u3, max u1 u3, u2} R (coeSort.{succ (max u1 u3), succ (succ (max u1 u3))} (Subalgebra.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b)) (Matrix.algebra.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b) (CommRing.toCommSemiring.{u3} R _inst_3) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) Type.{max u1 u3} (SetLike.hasCoeToSort.{max u1 u3, max u1 u3} (Subalgebra.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b)) (Matrix.algebra.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b) (CommRing.toCommSemiring.{u3} R _inst_3) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.setLike.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b)) (Matrix.algebra.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b) (CommRing.toCommSemiring.{u3} R _inst_3) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))))) (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))) (Module.End.{u3, u2} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (CommRing.toCommSemiring.{u3} R _inst_3) (Subalgebra.toSemiring.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b)) (Matrix.algebra.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b) (CommRing.toCommSemiring.{u3} R _inst_3) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))) (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))) (Module.End.semiring.{u3, u2} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (Subalgebra.algebra.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b)) (Matrix.algebra.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b) (CommRing.toCommSemiring.{u3} R _inst_3) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))) (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))) (Module.End.algebra.{u3, u2} R M (CommRing.toCommSemiring.{u3} R _inst_3) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4)) (fun (_x : AlgHom.{u3, max u1 u3, u2} R (coeSort.{succ (max u1 u3), succ (succ (max u1 u3))} (Subalgebra.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b)) (Matrix.algebra.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b) (CommRing.toCommSemiring.{u3} R _inst_3) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) Type.{max u1 u3} (SetLike.hasCoeToSort.{max u1 u3, max u1 u3} (Subalgebra.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b)) (Matrix.algebra.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b) (CommRing.toCommSemiring.{u3} R _inst_3) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.setLike.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b)) (Matrix.algebra.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b) (CommRing.toCommSemiring.{u3} R _inst_3) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))))) (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))) (Module.End.{u3, u2} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (CommRing.toCommSemiring.{u3} R _inst_3) (Subalgebra.toSemiring.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b)) (Matrix.algebra.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b) (CommRing.toCommSemiring.{u3} R _inst_3) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))) (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))) (Module.End.semiring.{u3, u2} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (Subalgebra.algebra.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b)) (Matrix.algebra.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b) (CommRing.toCommSemiring.{u3} R _inst_3) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))) (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))) (Module.End.algebra.{u3, u2} R M (CommRing.toCommSemiring.{u3} R _inst_3) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4)) => (coeSort.{succ (max u1 u3), succ (succ (max u1 u3))} (Subalgebra.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b)) (Matrix.algebra.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b) (CommRing.toCommSemiring.{u3} R _inst_3) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) Type.{max u1 u3} (SetLike.hasCoeToSort.{max u1 u3, max u1 u3} (Subalgebra.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b)) (Matrix.algebra.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b) (CommRing.toCommSemiring.{u3} R _inst_3) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.setLike.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b)) (Matrix.algebra.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b) (CommRing.toCommSemiring.{u3} R _inst_3) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))))) (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))) -> (Module.End.{u3, u2} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4)) ([anonymous].{u3, max u1 u3, u2} R (coeSort.{succ (max u1 u3), succ (succ (max u1 u3))} (Subalgebra.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b)) (Matrix.algebra.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b) (CommRing.toCommSemiring.{u3} R _inst_3) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) Type.{max u1 u3} (SetLike.hasCoeToSort.{max u1 u3, max u1 u3} (Subalgebra.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b)) (Matrix.algebra.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b) (CommRing.toCommSemiring.{u3} R _inst_3) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.setLike.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b)) (Matrix.algebra.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b) (CommRing.toCommSemiring.{u3} R _inst_3) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))))) (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))) (Module.End.{u3, u2} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (CommRing.toCommSemiring.{u3} R _inst_3) (Subalgebra.toSemiring.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b)) (Matrix.algebra.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b) (CommRing.toCommSemiring.{u3} R _inst_3) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))) (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))) (Module.End.semiring.{u3, u2} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (Subalgebra.algebra.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b)) (Matrix.algebra.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b) (CommRing.toCommSemiring.{u3} R _inst_3) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))) (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))) (Module.End.algebra.{u3, u2} R M (CommRing.toCommSemiring.{u3} R _inst_3) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4)) (Matrix.isRepresentation.toEnd.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b hb (fun (a : ι) (b : ι) => _inst_5 a b)) A)
but is expected to have type
- forall {ι : Type.{u3}} [_inst_1 : Fintype.{u3} ι] {M : Type.{u1}} [_inst_2 : AddCommGroup.{u1} M] (R : Type.{u2}) [_inst_3 : CommRing.{u2} R] [_inst_4 : Module.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2)] (b : ι -> M) (hb : Eq.{succ u1} (Submodule.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (Submodule.span.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4 (Set.range.{u1, succ u3} M ι b)) (Top.top.{u1} (Submodule.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (Submodule.instTopSubmodule.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4))) [_inst_5 : DecidableEq.{succ u3} ι] (A : Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))), Matrix.Represents.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b) (Subtype.val.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Set.{max u3 u2} (Matrix.{u3, u3, u2} ι ι R)) (Set.instMembershipSet.{max u3 u2} (Matrix.{u3, u3, u2} ι ι R)) x (SetLike.coe.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) A) (FunLike.coe.{max (max (succ u3) (succ u1)) (succ u2), max (succ u3) (succ u2), succ u1} (AlgHom.{u2, max u3 u2, u1} R (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (CommRing.toCommSemiring.{u2} R _inst_3) (Subalgebra.toSemiring.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))) (Module.End.semiring.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (Subalgebra.algebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))) (Module.instAlgebraEndToSemiringSemiring.{u2, u1} R M (CommRing.toCommSemiring.{u2} R _inst_3) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4)) (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (fun (_x : Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) => Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) _x) (SMulHomClass.toFunLike.{max (max u3 u1) u2, u2, max u3 u2, u1} (AlgHom.{u2, max u3 u2, u1} R (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (CommRing.toCommSemiring.{u2} R _inst_3) (Subalgebra.toSemiring.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))) (Module.End.semiring.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (Subalgebra.algebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))) (Module.instAlgebraEndToSemiringSemiring.{u2, u1} R M (CommRing.toCommSemiring.{u2} R _inst_3) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4)) R (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (SMulZeroClass.toSMul.{u2, max u3 u2} R (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (AddMonoid.toZero.{max u3 u2} (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (AddCommMonoid.toAddMonoid.{max u3 u2} (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (NonUnitalNonAssocSemiring.toAddCommMonoid.{max u3 u2} (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{max u3 u2} (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (Semiring.toNonAssocSemiring.{max u3 u2} (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (Subalgebra.toSemiring.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))))))) (DistribSMul.toSMulZeroClass.{u2, max u3 u2} R (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (AddMonoid.toAddZeroClass.{max u3 u2} (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (AddCommMonoid.toAddMonoid.{max u3 u2} (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (NonUnitalNonAssocSemiring.toAddCommMonoid.{max u3 u2} (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{max u3 u2} (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (Semiring.toNonAssocSemiring.{max u3 u2} (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (Subalgebra.toSemiring.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))))))) (DistribMulAction.toDistribSMul.{u2, max u3 u2} R (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (AddCommMonoid.toAddMonoid.{max u3 u2} (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (NonUnitalNonAssocSemiring.toAddCommMonoid.{max u3 u2} (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{max u3 u2} (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (Semiring.toNonAssocSemiring.{max u3 u2} (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (Subalgebra.toSemiring.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))))))) (Module.toDistribMulAction.{u2, max u3 u2} R (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{max u3 u2} (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{max u3 u2} (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (Semiring.toNonAssocSemiring.{max u3 u2} (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (Subalgebra.toSemiring.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))))) (Algebra.toModule.{u2, max u3 u2} R (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (CommRing.toCommSemiring.{u2} R _inst_3) (Subalgebra.toSemiring.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))) (Subalgebra.algebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))))))) (SMulZeroClass.toSMul.{u2, u1} R (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (AddMonoid.toZero.{u1} (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (AddCommMonoid.toAddMonoid.{u1} (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (Semiring.toNonAssocSemiring.{u1} (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (Module.End.semiring.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4)))))) (DistribSMul.toSMulZeroClass.{u2, u1} R (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (AddMonoid.toAddZeroClass.{u1} (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (AddCommMonoid.toAddMonoid.{u1} (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (Semiring.toNonAssocSemiring.{u1} (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (Module.End.semiring.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4)))))) (DistribMulAction.toDistribSMul.{u2, u1} R (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (AddCommMonoid.toAddMonoid.{u1} (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (Semiring.toNonAssocSemiring.{u1} (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (Module.End.semiring.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4))))) (Module.toDistribMulAction.{u2, u1} R (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (Semiring.toNonAssocSemiring.{u1} (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (Module.End.semiring.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4)))) (Algebra.toModule.{u2, u1} R (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (CommRing.toCommSemiring.{u2} R _inst_3) (Module.End.semiring.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (Module.instAlgebraEndToSemiringSemiring.{u2, u1} R M (CommRing.toCommSemiring.{u2} R _inst_3) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4)))))) (DistribMulActionHomClass.toSMulHomClass.{max (max u3 u1) u2, u2, max u3 u2, u1} (AlgHom.{u2, max u3 u2, u1} R (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (CommRing.toCommSemiring.{u2} R _inst_3) (Subalgebra.toSemiring.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))) (Module.End.semiring.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (Subalgebra.algebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))) (Module.instAlgebraEndToSemiringSemiring.{u2, u1} R M (CommRing.toCommSemiring.{u2} R _inst_3) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4)) R (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (AddCommMonoid.toAddMonoid.{max u3 u2} (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (NonUnitalNonAssocSemiring.toAddCommMonoid.{max u3 u2} (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{max u3 u2} (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (Semiring.toNonAssocSemiring.{max u3 u2} (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (Subalgebra.toSemiring.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))))))) (AddCommMonoid.toAddMonoid.{u1} (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (Semiring.toNonAssocSemiring.{u1} (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (Module.End.semiring.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4))))) (Module.toDistribMulAction.{u2, max u3 u2} R (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{max u3 u2} (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{max u3 u2} (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (Semiring.toNonAssocSemiring.{max u3 u2} (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (Subalgebra.toSemiring.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))))) (Algebra.toModule.{u2, max u3 u2} R (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (CommRing.toCommSemiring.{u2} R _inst_3) (Subalgebra.toSemiring.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))) (Subalgebra.algebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))))) (Module.toDistribMulAction.{u2, u1} R (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (Semiring.toNonAssocSemiring.{u1} (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (Module.End.semiring.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4)))) (Algebra.toModule.{u2, u1} R (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (CommRing.toCommSemiring.{u2} R _inst_3) (Module.End.semiring.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (Module.instAlgebraEndToSemiringSemiring.{u2, u1} R M (CommRing.toCommSemiring.{u2} R _inst_3) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4))) (NonUnitalAlgHomClass.toDistribMulActionHomClass.{max (max u3 u1) u2, u2, max u3 u2, u1} (AlgHom.{u2, max u3 u2, u1} R (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (CommRing.toCommSemiring.{u2} R _inst_3) (Subalgebra.toSemiring.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))) (Module.End.semiring.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (Subalgebra.algebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))) (Module.instAlgebraEndToSemiringSemiring.{u2, u1} R M (CommRing.toCommSemiring.{u2} R _inst_3) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4)) R (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{max u3 u2} (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (Semiring.toNonAssocSemiring.{max u3 u2} (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (Subalgebra.toSemiring.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))))) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (Semiring.toNonAssocSemiring.{u1} (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (Module.End.semiring.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4))) (Module.toDistribMulAction.{u2, max u3 u2} R (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{max u3 u2} (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{max u3 u2} (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (Semiring.toNonAssocSemiring.{max u3 u2} (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (Subalgebra.toSemiring.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))))) (Algebra.toModule.{u2, max u3 u2} R (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (CommRing.toCommSemiring.{u2} R _inst_3) (Subalgebra.toSemiring.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))) (Subalgebra.algebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))))) (Module.toDistribMulAction.{u2, u1} R (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (Semiring.toNonAssocSemiring.{u1} (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (Module.End.semiring.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4)))) (Algebra.toModule.{u2, u1} R (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (CommRing.toCommSemiring.{u2} R _inst_3) (Module.End.semiring.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (Module.instAlgebraEndToSemiringSemiring.{u2, u1} R M (CommRing.toCommSemiring.{u2} R _inst_3) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4))) (AlgHom.instNonUnitalAlgHomClassToMonoidToMonoidWithZeroToSemiringToNonUnitalNonAssocSemiringToNonAssocSemiringToNonUnitalNonAssocSemiringToNonAssocSemiringToDistribMulActionToAddCommMonoidToModuleToDistribMulActionToAddCommMonoidToModule.{u2, max u3 u2, u1, max (max u3 u1) u2} R (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (CommRing.toCommSemiring.{u2} R _inst_3) (Subalgebra.toSemiring.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))) (Module.End.semiring.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (Subalgebra.algebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))) (Module.instAlgebraEndToSemiringSemiring.{u2, u1} R M (CommRing.toCommSemiring.{u2} R _inst_3) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (AlgHom.{u2, max u3 u2, u1} R (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (CommRing.toCommSemiring.{u2} R _inst_3) (Subalgebra.toSemiring.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))) (Module.End.semiring.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (Subalgebra.algebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))) (Module.instAlgebraEndToSemiringSemiring.{u2, u1} R M (CommRing.toCommSemiring.{u2} R _inst_3) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4)) (AlgHom.algHomClass.{u2, max u3 u2, u1} R (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (CommRing.toCommSemiring.{u2} R _inst_3) (Subalgebra.toSemiring.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))) (Module.End.semiring.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (Subalgebra.algebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))) (Module.instAlgebraEndToSemiringSemiring.{u2, u1} R M (CommRing.toCommSemiring.{u2} R _inst_3) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4)))))) (Matrix.isRepresentation.toEnd.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b hb (fun (a : ι) (b : ι) => _inst_5 a b)) A)
+ forall {ι : Type.{u3}} [_inst_1 : Fintype.{u3} ι] {M : Type.{u1}} [_inst_2 : AddCommGroup.{u1} M] (R : Type.{u2}) [_inst_3 : CommRing.{u2} R] [_inst_4 : Module.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2)] (b : ι -> M) (hb : Eq.{succ u1} (Submodule.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (Submodule.span.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4 (Set.range.{u1, succ u3} M ι b)) (Top.top.{u1} (Submodule.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (Submodule.instTopSubmodule.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4))) [_inst_5 : DecidableEq.{succ u3} ι] (A : Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))), Matrix.Represents.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b) (Subtype.val.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Set.{max u3 u2} (Matrix.{u3, u3, u2} ι ι R)) (Set.instMembershipSet.{max u3 u2} (Matrix.{u3, u3, u2} ι ι R)) x (SetLike.coe.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) A) (FunLike.coe.{max (max (succ u3) (succ u1)) (succ u2), max (succ u3) (succ u2), succ u1} (AlgHom.{u2, max u3 u2, u1} R (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (CommRing.toCommSemiring.{u2} R _inst_3) (Subalgebra.toSemiring.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))) (Module.End.semiring.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (Subalgebra.algebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))) (Module.instAlgebraEndToSemiringSemiring.{u2, u1} R M (CommRing.toCommSemiring.{u2} R _inst_3) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4)) (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (fun (_x : Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2187 : Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) => Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) _x) (SMulHomClass.toFunLike.{max (max u3 u1) u2, u2, max u3 u2, u1} (AlgHom.{u2, max u3 u2, u1} R (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (CommRing.toCommSemiring.{u2} R _inst_3) (Subalgebra.toSemiring.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))) (Module.End.semiring.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (Subalgebra.algebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))) (Module.instAlgebraEndToSemiringSemiring.{u2, u1} R M (CommRing.toCommSemiring.{u2} R _inst_3) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4)) R (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (SMulZeroClass.toSMul.{u2, max u3 u2} R (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (AddMonoid.toZero.{max u3 u2} (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (AddCommMonoid.toAddMonoid.{max u3 u2} (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (NonUnitalNonAssocSemiring.toAddCommMonoid.{max u3 u2} (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{max u3 u2} (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (Semiring.toNonAssocSemiring.{max u3 u2} (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (Subalgebra.toSemiring.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))))))) (DistribSMul.toSMulZeroClass.{u2, max u3 u2} R (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (AddMonoid.toAddZeroClass.{max u3 u2} (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (AddCommMonoid.toAddMonoid.{max u3 u2} (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (NonUnitalNonAssocSemiring.toAddCommMonoid.{max u3 u2} (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{max u3 u2} (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (Semiring.toNonAssocSemiring.{max u3 u2} (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (Subalgebra.toSemiring.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))))))) (DistribMulAction.toDistribSMul.{u2, max u3 u2} R (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (AddCommMonoid.toAddMonoid.{max u3 u2} (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (NonUnitalNonAssocSemiring.toAddCommMonoid.{max u3 u2} (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{max u3 u2} (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (Semiring.toNonAssocSemiring.{max u3 u2} (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (Subalgebra.toSemiring.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))))))) (Module.toDistribMulAction.{u2, max u3 u2} R (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{max u3 u2} (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{max u3 u2} (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (Semiring.toNonAssocSemiring.{max u3 u2} (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (Subalgebra.toSemiring.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))))) (Algebra.toModule.{u2, max u3 u2} R (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (CommRing.toCommSemiring.{u2} R _inst_3) (Subalgebra.toSemiring.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))) (Subalgebra.algebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))))))) (SMulZeroClass.toSMul.{u2, u1} R (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (AddMonoid.toZero.{u1} (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (AddCommMonoid.toAddMonoid.{u1} (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (Semiring.toNonAssocSemiring.{u1} (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (Module.End.semiring.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4)))))) (DistribSMul.toSMulZeroClass.{u2, u1} R (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (AddMonoid.toAddZeroClass.{u1} (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (AddCommMonoid.toAddMonoid.{u1} (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (Semiring.toNonAssocSemiring.{u1} (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (Module.End.semiring.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4)))))) (DistribMulAction.toDistribSMul.{u2, u1} R (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (AddCommMonoid.toAddMonoid.{u1} (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (Semiring.toNonAssocSemiring.{u1} (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (Module.End.semiring.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4))))) (Module.toDistribMulAction.{u2, u1} R (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (Semiring.toNonAssocSemiring.{u1} (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (Module.End.semiring.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4)))) (Algebra.toModule.{u2, u1} R (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (CommRing.toCommSemiring.{u2} R _inst_3) (Module.End.semiring.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (Module.instAlgebraEndToSemiringSemiring.{u2, u1} R M (CommRing.toCommSemiring.{u2} R _inst_3) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4)))))) (DistribMulActionHomClass.toSMulHomClass.{max (max u3 u1) u2, u2, max u3 u2, u1} (AlgHom.{u2, max u3 u2, u1} R (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (CommRing.toCommSemiring.{u2} R _inst_3) (Subalgebra.toSemiring.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))) (Module.End.semiring.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (Subalgebra.algebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))) (Module.instAlgebraEndToSemiringSemiring.{u2, u1} R M (CommRing.toCommSemiring.{u2} R _inst_3) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4)) R (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (AddCommMonoid.toAddMonoid.{max u3 u2} (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (NonUnitalNonAssocSemiring.toAddCommMonoid.{max u3 u2} (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{max u3 u2} (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (Semiring.toNonAssocSemiring.{max u3 u2} (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (Subalgebra.toSemiring.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))))))) (AddCommMonoid.toAddMonoid.{u1} (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (Semiring.toNonAssocSemiring.{u1} (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (Module.End.semiring.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4))))) (Module.toDistribMulAction.{u2, max u3 u2} R (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{max u3 u2} (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{max u3 u2} (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (Semiring.toNonAssocSemiring.{max u3 u2} (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (Subalgebra.toSemiring.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))))) (Algebra.toModule.{u2, max u3 u2} R (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (CommRing.toCommSemiring.{u2} R _inst_3) (Subalgebra.toSemiring.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))) (Subalgebra.algebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))))) (Module.toDistribMulAction.{u2, u1} R (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (Semiring.toNonAssocSemiring.{u1} (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (Module.End.semiring.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4)))) (Algebra.toModule.{u2, u1} R (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (CommRing.toCommSemiring.{u2} R _inst_3) (Module.End.semiring.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (Module.instAlgebraEndToSemiringSemiring.{u2, u1} R M (CommRing.toCommSemiring.{u2} R _inst_3) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4))) (NonUnitalAlgHomClass.toDistribMulActionHomClass.{max (max u3 u1) u2, u2, max u3 u2, u1} (AlgHom.{u2, max u3 u2, u1} R (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (CommRing.toCommSemiring.{u2} R _inst_3) (Subalgebra.toSemiring.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))) (Module.End.semiring.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (Subalgebra.algebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))) (Module.instAlgebraEndToSemiringSemiring.{u2, u1} R M (CommRing.toCommSemiring.{u2} R _inst_3) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4)) R (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{max u3 u2} (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (Semiring.toNonAssocSemiring.{max u3 u2} (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (Subalgebra.toSemiring.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))))) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (Semiring.toNonAssocSemiring.{u1} (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (Module.End.semiring.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4))) (Module.toDistribMulAction.{u2, max u3 u2} R (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{max u3 u2} (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{max u3 u2} (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (Semiring.toNonAssocSemiring.{max u3 u2} (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (Subalgebra.toSemiring.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))))) (Algebra.toModule.{u2, max u3 u2} R (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (CommRing.toCommSemiring.{u2} R _inst_3) (Subalgebra.toSemiring.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))) (Subalgebra.algebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))))) (Module.toDistribMulAction.{u2, u1} R (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (Semiring.toNonAssocSemiring.{u1} (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (Module.End.semiring.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4)))) (Algebra.toModule.{u2, u1} R (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (CommRing.toCommSemiring.{u2} R _inst_3) (Module.End.semiring.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (Module.instAlgebraEndToSemiringSemiring.{u2, u1} R M (CommRing.toCommSemiring.{u2} R _inst_3) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4))) (AlgHom.instNonUnitalAlgHomClassToMonoidToMonoidWithZeroToSemiringToNonUnitalNonAssocSemiringToNonAssocSemiringToNonUnitalNonAssocSemiringToNonAssocSemiringToDistribMulActionToAddCommMonoidToModuleToDistribMulActionToAddCommMonoidToModule.{u2, max u3 u2, u1, max (max u3 u1) u2} R (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (CommRing.toCommSemiring.{u2} R _inst_3) (Subalgebra.toSemiring.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))) (Module.End.semiring.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (Subalgebra.algebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))) (Module.instAlgebraEndToSemiringSemiring.{u2, u1} R M (CommRing.toCommSemiring.{u2} R _inst_3) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (AlgHom.{u2, max u3 u2, u1} R (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (CommRing.toCommSemiring.{u2} R _inst_3) (Subalgebra.toSemiring.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))) (Module.End.semiring.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (Subalgebra.algebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))) (Module.instAlgebraEndToSemiringSemiring.{u2, u1} R M (CommRing.toCommSemiring.{u2} R _inst_3) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4)) (AlgHom.algHomClass.{u2, max u3 u2, u1} R (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (CommRing.toCommSemiring.{u2} R _inst_3) (Subalgebra.toSemiring.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))) (Module.End.semiring.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (Subalgebra.algebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))) (Module.instAlgebraEndToSemiringSemiring.{u2, u1} R M (CommRing.toCommSemiring.{u2} R _inst_3) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4)))))) (Matrix.isRepresentation.toEnd.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b hb (fun (a : ι) (b : ι) => _inst_5 a b)) A)
Case conversion may be inaccurate. Consider using '#align matrix.is_representation.to_End_represents Matrix.isRepresentation.toEnd_representsₓ'. -/
theorem Matrix.isRepresentation.toEnd_represents (A : Matrix.isRepresentation R b) :
(A : Matrix ι ι R).Represents b (Matrix.isRepresentation.toEnd R b hb A) :=
@@ -306,7 +306,7 @@ theorem Matrix.isRepresentation.toEnd_represents (A : Matrix.isRepresentation R
lean 3 declaration is
forall {ι : Type.{u1}} [_inst_1 : Fintype.{u1} ι] {M : Type.{u2}} [_inst_2 : AddCommGroup.{u2} M] (R : Type.{u3}) [_inst_3 : CommRing.{u3} R] [_inst_4 : Module.{u3, u2} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2)] (b : ι -> M) (hb : Eq.{succ u2} (Submodule.{u3, u2} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (Submodule.span.{u3, u2} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4 (Set.range.{u2, succ u1} M ι b)) (Top.top.{u2} (Submodule.{u3, u2} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (Submodule.hasTop.{u3, u2} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4))) [_inst_5 : DecidableEq.{succ u1} ι] (A : coeSort.{succ (max u1 u3), succ (succ (max u1 u3))} (Subalgebra.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.algebra.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) Type.{max u1 u3} (SetLike.hasCoeToSort.{max u1 u3, max u1 u3} (Subalgebra.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.algebra.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.setLike.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.algebra.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))))) (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))) {f : Module.End.{u3, u2} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4}, (Matrix.Represents.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b) ((fun (a : Type.{max u1 u3}) (b : Type.{max u1 u3}) [self : HasLiftT.{succ (max u1 u3), succ (max u1 u3)} a b] => self.0) (coeSort.{succ (max u1 u3), succ (succ (max u1 u3))} (Subalgebra.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.algebra.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) Type.{max u1 u3} (SetLike.hasCoeToSort.{max u1 u3, max u1 u3} (Subalgebra.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.algebra.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.setLike.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.algebra.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))))) (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))) (Matrix.{u1, u1, u3} ι ι R) (HasLiftT.mk.{succ (max u1 u3), succ (max u1 u3)} (coeSort.{succ (max u1 u3), succ (succ (max u1 u3))} (Subalgebra.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.algebra.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) Type.{max u1 u3} (SetLike.hasCoeToSort.{max u1 u3, max u1 u3} (Subalgebra.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.algebra.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.setLike.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.algebra.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))))) (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))) (Matrix.{u1, u1, u3} ι ι R) (CoeTCₓ.coe.{succ (max u1 u3), succ (max u1 u3)} (coeSort.{succ (max u1 u3), succ (succ (max u1 u3))} (Subalgebra.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.algebra.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) Type.{max u1 u3} (SetLike.hasCoeToSort.{max u1 u3, max u1 u3} (Subalgebra.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.algebra.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.setLike.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.algebra.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))))) (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))) (Matrix.{u1, u1, u3} ι ι R) (coeBase.{succ (max u1 u3), succ (max u1 u3)} (coeSort.{succ (max u1 u3), succ (succ (max u1 u3))} (Subalgebra.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.algebra.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) Type.{max u1 u3} (SetLike.hasCoeToSort.{max u1 u3, max u1 u3} (Subalgebra.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.algebra.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.setLike.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.algebra.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))))) (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))) (Matrix.{u1, u1, u3} ι ι R) (coeSubtype.{succ (max u1 u3)} (Matrix.{u1, u1, u3} ι ι R) (fun (x : Matrix.{u1, u1, u3} ι ι R) => Membership.Mem.{max u1 u3, max u1 u3} (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.algebra.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (SetLike.hasMem.{max u1 u3, max u1 u3} (Subalgebra.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.algebra.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.setLike.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.algebra.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))))) x (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))))))) A) f) -> (Eq.{succ u2} (Module.End.{u3, u2} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (coeFn.{max (succ (max u1 u3)) (succ u2), max (succ (max u1 u3)) (succ u2)} (AlgHom.{u3, max u1 u3, u2} R (coeSort.{succ (max u1 u3), succ (succ (max u1 u3))} (Subalgebra.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b)) (Matrix.algebra.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b) (CommRing.toCommSemiring.{u3} R _inst_3) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) Type.{max u1 u3} (SetLike.hasCoeToSort.{max u1 u3, max u1 u3} (Subalgebra.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b)) (Matrix.algebra.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b) (CommRing.toCommSemiring.{u3} R _inst_3) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.setLike.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b)) (Matrix.algebra.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b) (CommRing.toCommSemiring.{u3} R _inst_3) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))))) (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))) (Module.End.{u3, u2} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (CommRing.toCommSemiring.{u3} R _inst_3) (Subalgebra.toSemiring.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b)) (Matrix.algebra.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b) (CommRing.toCommSemiring.{u3} R _inst_3) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))) (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))) (Module.End.semiring.{u3, u2} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (Subalgebra.algebra.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b)) (Matrix.algebra.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b) (CommRing.toCommSemiring.{u3} R _inst_3) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))) (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))) (Module.End.algebra.{u3, u2} R M (CommRing.toCommSemiring.{u3} R _inst_3) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4)) (fun (_x : AlgHom.{u3, max u1 u3, u2} R (coeSort.{succ (max u1 u3), succ (succ (max u1 u3))} (Subalgebra.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b)) (Matrix.algebra.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b) (CommRing.toCommSemiring.{u3} R _inst_3) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) Type.{max u1 u3} (SetLike.hasCoeToSort.{max u1 u3, max u1 u3} (Subalgebra.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b)) (Matrix.algebra.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b) (CommRing.toCommSemiring.{u3} R _inst_3) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.setLike.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b)) (Matrix.algebra.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b) (CommRing.toCommSemiring.{u3} R _inst_3) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))))) (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))) (Module.End.{u3, u2} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (CommRing.toCommSemiring.{u3} R _inst_3) (Subalgebra.toSemiring.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b)) (Matrix.algebra.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b) (CommRing.toCommSemiring.{u3} R _inst_3) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))) (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))) (Module.End.semiring.{u3, u2} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (Subalgebra.algebra.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b)) (Matrix.algebra.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b) (CommRing.toCommSemiring.{u3} R _inst_3) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))) (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))) (Module.End.algebra.{u3, u2} R M (CommRing.toCommSemiring.{u3} R _inst_3) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4)) => (coeSort.{succ (max u1 u3), succ (succ (max u1 u3))} (Subalgebra.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b)) (Matrix.algebra.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b) (CommRing.toCommSemiring.{u3} R _inst_3) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) Type.{max u1 u3} (SetLike.hasCoeToSort.{max u1 u3, max u1 u3} (Subalgebra.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b)) (Matrix.algebra.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b) (CommRing.toCommSemiring.{u3} R _inst_3) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.setLike.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b)) (Matrix.algebra.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b) (CommRing.toCommSemiring.{u3} R _inst_3) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))))) (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))) -> (Module.End.{u3, u2} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4)) ([anonymous].{u3, max u1 u3, u2} R (coeSort.{succ (max u1 u3), succ (succ (max u1 u3))} (Subalgebra.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b)) (Matrix.algebra.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b) (CommRing.toCommSemiring.{u3} R _inst_3) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) Type.{max u1 u3} (SetLike.hasCoeToSort.{max u1 u3, max u1 u3} (Subalgebra.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b)) (Matrix.algebra.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b) (CommRing.toCommSemiring.{u3} R _inst_3) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.setLike.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b)) (Matrix.algebra.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b) (CommRing.toCommSemiring.{u3} R _inst_3) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))))) (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))) (Module.End.{u3, u2} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (CommRing.toCommSemiring.{u3} R _inst_3) (Subalgebra.toSemiring.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b)) (Matrix.algebra.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b) (CommRing.toCommSemiring.{u3} R _inst_3) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))) (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))) (Module.End.semiring.{u3, u2} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (Subalgebra.algebra.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b)) (Matrix.algebra.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b) (CommRing.toCommSemiring.{u3} R _inst_3) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))) (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))) (Module.End.algebra.{u3, u2} R M (CommRing.toCommSemiring.{u3} R _inst_3) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4)) (Matrix.isRepresentation.toEnd.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b hb (fun (a : ι) (b : ι) => _inst_5 a b)) A) f)
but is expected to have type
- forall {ι : Type.{u3}} [_inst_1 : Fintype.{u3} ι] {M : Type.{u1}} [_inst_2 : AddCommGroup.{u1} M] (R : Type.{u2}) [_inst_3 : CommRing.{u2} R] [_inst_4 : Module.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2)] (b : ι -> M) (hb : Eq.{succ u1} (Submodule.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (Submodule.span.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4 (Set.range.{u1, succ u3} M ι b)) (Top.top.{u1} (Submodule.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (Submodule.instTopSubmodule.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4))) [_inst_5 : DecidableEq.{succ u3} ι] (A : Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) {f : Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4}, (Matrix.Represents.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b) (Subtype.val.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Set.{max u3 u2} (Matrix.{u3, u3, u2} ι ι R)) (Set.instMembershipSet.{max u3 u2} (Matrix.{u3, u3, u2} ι ι R)) x (SetLike.coe.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) A) f) -> (Eq.{succ u1} ((fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) => Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) A) (FunLike.coe.{max (max (succ u3) (succ u1)) (succ u2), max (succ u3) (succ u2), succ u1} (AlgHom.{u2, max u3 u2, u1} R (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (CommRing.toCommSemiring.{u2} R _inst_3) (Subalgebra.toSemiring.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))) (Module.End.semiring.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (Subalgebra.algebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))) (Module.instAlgebraEndToSemiringSemiring.{u2, u1} R M (CommRing.toCommSemiring.{u2} R _inst_3) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4)) (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (fun (_x : Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) => Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) _x) (SMulHomClass.toFunLike.{max (max u3 u1) u2, u2, max u3 u2, u1} (AlgHom.{u2, max u3 u2, u1} R (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (CommRing.toCommSemiring.{u2} R _inst_3) (Subalgebra.toSemiring.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))) (Module.End.semiring.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (Subalgebra.algebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))) (Module.instAlgebraEndToSemiringSemiring.{u2, u1} R M (CommRing.toCommSemiring.{u2} R _inst_3) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4)) R (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (SMulZeroClass.toSMul.{u2, max u3 u2} R (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (AddMonoid.toZero.{max u3 u2} (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (AddCommMonoid.toAddMonoid.{max u3 u2} (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (NonUnitalNonAssocSemiring.toAddCommMonoid.{max u3 u2} (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{max u3 u2} (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (Semiring.toNonAssocSemiring.{max u3 u2} (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (Subalgebra.toSemiring.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))))))) (DistribSMul.toSMulZeroClass.{u2, max u3 u2} R (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (AddMonoid.toAddZeroClass.{max u3 u2} (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (AddCommMonoid.toAddMonoid.{max u3 u2} (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (NonUnitalNonAssocSemiring.toAddCommMonoid.{max u3 u2} (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{max u3 u2} (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (Semiring.toNonAssocSemiring.{max u3 u2} (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (Subalgebra.toSemiring.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))))))) (DistribMulAction.toDistribSMul.{u2, max u3 u2} R (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (AddCommMonoid.toAddMonoid.{max u3 u2} (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (NonUnitalNonAssocSemiring.toAddCommMonoid.{max u3 u2} (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{max u3 u2} (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (Semiring.toNonAssocSemiring.{max u3 u2} (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (Subalgebra.toSemiring.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))))))) (Module.toDistribMulAction.{u2, max u3 u2} R (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{max u3 u2} (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{max u3 u2} (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (Semiring.toNonAssocSemiring.{max u3 u2} (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (Subalgebra.toSemiring.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))))) (Algebra.toModule.{u2, max u3 u2} R (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (CommRing.toCommSemiring.{u2} R _inst_3) (Subalgebra.toSemiring.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))) (Subalgebra.algebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))))))) (SMulZeroClass.toSMul.{u2, u1} R (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (AddMonoid.toZero.{u1} (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (AddCommMonoid.toAddMonoid.{u1} (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (Semiring.toNonAssocSemiring.{u1} (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (Module.End.semiring.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4)))))) (DistribSMul.toSMulZeroClass.{u2, u1} R (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (AddMonoid.toAddZeroClass.{u1} (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (AddCommMonoid.toAddMonoid.{u1} (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (Semiring.toNonAssocSemiring.{u1} (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (Module.End.semiring.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4)))))) (DistribMulAction.toDistribSMul.{u2, u1} R (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (AddCommMonoid.toAddMonoid.{u1} (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (Semiring.toNonAssocSemiring.{u1} (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (Module.End.semiring.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4))))) (Module.toDistribMulAction.{u2, u1} R (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (Semiring.toNonAssocSemiring.{u1} (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (Module.End.semiring.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4)))) (Algebra.toModule.{u2, u1} R (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (CommRing.toCommSemiring.{u2} R _inst_3) (Module.End.semiring.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (Module.instAlgebraEndToSemiringSemiring.{u2, u1} R M (CommRing.toCommSemiring.{u2} R _inst_3) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4)))))) (DistribMulActionHomClass.toSMulHomClass.{max (max u3 u1) u2, u2, max u3 u2, u1} (AlgHom.{u2, max u3 u2, u1} R (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (CommRing.toCommSemiring.{u2} R _inst_3) (Subalgebra.toSemiring.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))) (Module.End.semiring.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (Subalgebra.algebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))) (Module.instAlgebraEndToSemiringSemiring.{u2, u1} R M (CommRing.toCommSemiring.{u2} R _inst_3) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4)) R (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (AddCommMonoid.toAddMonoid.{max u3 u2} (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (NonUnitalNonAssocSemiring.toAddCommMonoid.{max u3 u2} (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{max u3 u2} (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (Semiring.toNonAssocSemiring.{max u3 u2} (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (Subalgebra.toSemiring.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))))))) (AddCommMonoid.toAddMonoid.{u1} (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (Semiring.toNonAssocSemiring.{u1} (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (Module.End.semiring.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4))))) (Module.toDistribMulAction.{u2, max u3 u2} R (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{max u3 u2} (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{max u3 u2} (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (Semiring.toNonAssocSemiring.{max u3 u2} (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (Subalgebra.toSemiring.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))))) (Algebra.toModule.{u2, max u3 u2} R (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (CommRing.toCommSemiring.{u2} R _inst_3) (Subalgebra.toSemiring.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))) (Subalgebra.algebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))))) (Module.toDistribMulAction.{u2, u1} R (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (Semiring.toNonAssocSemiring.{u1} (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (Module.End.semiring.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4)))) (Algebra.toModule.{u2, u1} R (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (CommRing.toCommSemiring.{u2} R _inst_3) (Module.End.semiring.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (Module.instAlgebraEndToSemiringSemiring.{u2, u1} R M (CommRing.toCommSemiring.{u2} R _inst_3) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4))) (NonUnitalAlgHomClass.toDistribMulActionHomClass.{max (max u3 u1) u2, u2, max u3 u2, u1} (AlgHom.{u2, max u3 u2, u1} R (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (CommRing.toCommSemiring.{u2} R _inst_3) (Subalgebra.toSemiring.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))) (Module.End.semiring.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (Subalgebra.algebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))) (Module.instAlgebraEndToSemiringSemiring.{u2, u1} R M (CommRing.toCommSemiring.{u2} R _inst_3) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4)) R (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{max u3 u2} (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (Semiring.toNonAssocSemiring.{max u3 u2} (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (Subalgebra.toSemiring.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))))) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (Semiring.toNonAssocSemiring.{u1} (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (Module.End.semiring.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4))) (Module.toDistribMulAction.{u2, max u3 u2} R (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{max u3 u2} (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{max u3 u2} (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (Semiring.toNonAssocSemiring.{max u3 u2} (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (Subalgebra.toSemiring.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))))) (Algebra.toModule.{u2, max u3 u2} R (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (CommRing.toCommSemiring.{u2} R _inst_3) (Subalgebra.toSemiring.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))) (Subalgebra.algebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))))) (Module.toDistribMulAction.{u2, u1} R (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (Semiring.toNonAssocSemiring.{u1} (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (Module.End.semiring.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4)))) (Algebra.toModule.{u2, u1} R (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (CommRing.toCommSemiring.{u2} R _inst_3) (Module.End.semiring.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (Module.instAlgebraEndToSemiringSemiring.{u2, u1} R M (CommRing.toCommSemiring.{u2} R _inst_3) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4))) (AlgHom.instNonUnitalAlgHomClassToMonoidToMonoidWithZeroToSemiringToNonUnitalNonAssocSemiringToNonAssocSemiringToNonUnitalNonAssocSemiringToNonAssocSemiringToDistribMulActionToAddCommMonoidToModuleToDistribMulActionToAddCommMonoidToModule.{u2, max u3 u2, u1, max (max u3 u1) u2} R (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (CommRing.toCommSemiring.{u2} R _inst_3) (Subalgebra.toSemiring.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))) (Module.End.semiring.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (Subalgebra.algebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))) (Module.instAlgebraEndToSemiringSemiring.{u2, u1} R M (CommRing.toCommSemiring.{u2} R _inst_3) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (AlgHom.{u2, max u3 u2, u1} R (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (CommRing.toCommSemiring.{u2} R _inst_3) (Subalgebra.toSemiring.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))) (Module.End.semiring.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (Subalgebra.algebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))) (Module.instAlgebraEndToSemiringSemiring.{u2, u1} R M (CommRing.toCommSemiring.{u2} R _inst_3) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4)) (AlgHom.algHomClass.{u2, max u3 u2, u1} R (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (CommRing.toCommSemiring.{u2} R _inst_3) (Subalgebra.toSemiring.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))) (Module.End.semiring.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (Subalgebra.algebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))) (Module.instAlgebraEndToSemiringSemiring.{u2, u1} R M (CommRing.toCommSemiring.{u2} R _inst_3) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4)))))) (Matrix.isRepresentation.toEnd.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b hb (fun (a : ι) (b : ι) => _inst_5 a b)) A) f)
+ forall {ι : Type.{u3}} [_inst_1 : Fintype.{u3} ι] {M : Type.{u1}} [_inst_2 : AddCommGroup.{u1} M] (R : Type.{u2}) [_inst_3 : CommRing.{u2} R] [_inst_4 : Module.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2)] (b : ι -> M) (hb : Eq.{succ u1} (Submodule.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (Submodule.span.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4 (Set.range.{u1, succ u3} M ι b)) (Top.top.{u1} (Submodule.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (Submodule.instTopSubmodule.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4))) [_inst_5 : DecidableEq.{succ u3} ι] (A : Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) {f : Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4}, (Matrix.Represents.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b) (Subtype.val.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Set.{max u3 u2} (Matrix.{u3, u3, u2} ι ι R)) (Set.instMembershipSet.{max u3 u2} (Matrix.{u3, u3, u2} ι ι R)) x (SetLike.coe.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) A) f) -> (Eq.{succ u1} ((fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2187 : Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) => Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) A) (FunLike.coe.{max (max (succ u3) (succ u1)) (succ u2), max (succ u3) (succ u2), succ u1} (AlgHom.{u2, max u3 u2, u1} R (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (CommRing.toCommSemiring.{u2} R _inst_3) (Subalgebra.toSemiring.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))) (Module.End.semiring.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (Subalgebra.algebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))) (Module.instAlgebraEndToSemiringSemiring.{u2, u1} R M (CommRing.toCommSemiring.{u2} R _inst_3) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4)) (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (fun (_x : Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2187 : Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) => Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) _x) (SMulHomClass.toFunLike.{max (max u3 u1) u2, u2, max u3 u2, u1} (AlgHom.{u2, max u3 u2, u1} R (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (CommRing.toCommSemiring.{u2} R _inst_3) (Subalgebra.toSemiring.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))) (Module.End.semiring.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (Subalgebra.algebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))) (Module.instAlgebraEndToSemiringSemiring.{u2, u1} R M (CommRing.toCommSemiring.{u2} R _inst_3) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4)) R (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (SMulZeroClass.toSMul.{u2, max u3 u2} R (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (AddMonoid.toZero.{max u3 u2} (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (AddCommMonoid.toAddMonoid.{max u3 u2} (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (NonUnitalNonAssocSemiring.toAddCommMonoid.{max u3 u2} (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{max u3 u2} (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (Semiring.toNonAssocSemiring.{max u3 u2} (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (Subalgebra.toSemiring.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))))))) (DistribSMul.toSMulZeroClass.{u2, max u3 u2} R (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (AddMonoid.toAddZeroClass.{max u3 u2} (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (AddCommMonoid.toAddMonoid.{max u3 u2} (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (NonUnitalNonAssocSemiring.toAddCommMonoid.{max u3 u2} (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{max u3 u2} (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (Semiring.toNonAssocSemiring.{max u3 u2} (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (Subalgebra.toSemiring.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))))))) (DistribMulAction.toDistribSMul.{u2, max u3 u2} R (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (AddCommMonoid.toAddMonoid.{max u3 u2} (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (NonUnitalNonAssocSemiring.toAddCommMonoid.{max u3 u2} (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{max u3 u2} (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (Semiring.toNonAssocSemiring.{max u3 u2} (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (Subalgebra.toSemiring.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))))))) (Module.toDistribMulAction.{u2, max u3 u2} R (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{max u3 u2} (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{max u3 u2} (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (Semiring.toNonAssocSemiring.{max u3 u2} (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (Subalgebra.toSemiring.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))))) (Algebra.toModule.{u2, max u3 u2} R (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (CommRing.toCommSemiring.{u2} R _inst_3) (Subalgebra.toSemiring.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))) (Subalgebra.algebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))))))) (SMulZeroClass.toSMul.{u2, u1} R (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (AddMonoid.toZero.{u1} (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (AddCommMonoid.toAddMonoid.{u1} (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (Semiring.toNonAssocSemiring.{u1} (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (Module.End.semiring.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4)))))) (DistribSMul.toSMulZeroClass.{u2, u1} R (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (AddMonoid.toAddZeroClass.{u1} (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (AddCommMonoid.toAddMonoid.{u1} (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (Semiring.toNonAssocSemiring.{u1} (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (Module.End.semiring.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4)))))) (DistribMulAction.toDistribSMul.{u2, u1} R (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (AddCommMonoid.toAddMonoid.{u1} (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (Semiring.toNonAssocSemiring.{u1} (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (Module.End.semiring.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4))))) (Module.toDistribMulAction.{u2, u1} R (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (Semiring.toNonAssocSemiring.{u1} (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (Module.End.semiring.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4)))) (Algebra.toModule.{u2, u1} R (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (CommRing.toCommSemiring.{u2} R _inst_3) (Module.End.semiring.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (Module.instAlgebraEndToSemiringSemiring.{u2, u1} R M (CommRing.toCommSemiring.{u2} R _inst_3) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4)))))) (DistribMulActionHomClass.toSMulHomClass.{max (max u3 u1) u2, u2, max u3 u2, u1} (AlgHom.{u2, max u3 u2, u1} R (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (CommRing.toCommSemiring.{u2} R _inst_3) (Subalgebra.toSemiring.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))) (Module.End.semiring.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (Subalgebra.algebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))) (Module.instAlgebraEndToSemiringSemiring.{u2, u1} R M (CommRing.toCommSemiring.{u2} R _inst_3) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4)) R (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (AddCommMonoid.toAddMonoid.{max u3 u2} (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (NonUnitalNonAssocSemiring.toAddCommMonoid.{max u3 u2} (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{max u3 u2} (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (Semiring.toNonAssocSemiring.{max u3 u2} (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (Subalgebra.toSemiring.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))))))) (AddCommMonoid.toAddMonoid.{u1} (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (Semiring.toNonAssocSemiring.{u1} (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (Module.End.semiring.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4))))) (Module.toDistribMulAction.{u2, max u3 u2} R (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{max u3 u2} (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{max u3 u2} (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (Semiring.toNonAssocSemiring.{max u3 u2} (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (Subalgebra.toSemiring.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))))) (Algebra.toModule.{u2, max u3 u2} R (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (CommRing.toCommSemiring.{u2} R _inst_3) (Subalgebra.toSemiring.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))) (Subalgebra.algebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))))) (Module.toDistribMulAction.{u2, u1} R (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (Semiring.toNonAssocSemiring.{u1} (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (Module.End.semiring.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4)))) (Algebra.toModule.{u2, u1} R (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (CommRing.toCommSemiring.{u2} R _inst_3) (Module.End.semiring.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (Module.instAlgebraEndToSemiringSemiring.{u2, u1} R M (CommRing.toCommSemiring.{u2} R _inst_3) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4))) (NonUnitalAlgHomClass.toDistribMulActionHomClass.{max (max u3 u1) u2, u2, max u3 u2, u1} (AlgHom.{u2, max u3 u2, u1} R (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (CommRing.toCommSemiring.{u2} R _inst_3) (Subalgebra.toSemiring.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))) (Module.End.semiring.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (Subalgebra.algebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))) (Module.instAlgebraEndToSemiringSemiring.{u2, u1} R M (CommRing.toCommSemiring.{u2} R _inst_3) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4)) R (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{max u3 u2} (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (Semiring.toNonAssocSemiring.{max u3 u2} (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (Subalgebra.toSemiring.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))))) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (Semiring.toNonAssocSemiring.{u1} (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (Module.End.semiring.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4))) (Module.toDistribMulAction.{u2, max u3 u2} R (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{max u3 u2} (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{max u3 u2} (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (Semiring.toNonAssocSemiring.{max u3 u2} (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (Subalgebra.toSemiring.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))))) (Algebra.toModule.{u2, max u3 u2} R (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (CommRing.toCommSemiring.{u2} R _inst_3) (Subalgebra.toSemiring.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))) (Subalgebra.algebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))))) (Module.toDistribMulAction.{u2, u1} R (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (Semiring.toNonAssocSemiring.{u1} (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (Module.End.semiring.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4)))) (Algebra.toModule.{u2, u1} R (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (CommRing.toCommSemiring.{u2} R _inst_3) (Module.End.semiring.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (Module.instAlgebraEndToSemiringSemiring.{u2, u1} R M (CommRing.toCommSemiring.{u2} R _inst_3) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4))) (AlgHom.instNonUnitalAlgHomClassToMonoidToMonoidWithZeroToSemiringToNonUnitalNonAssocSemiringToNonAssocSemiringToNonUnitalNonAssocSemiringToNonAssocSemiringToDistribMulActionToAddCommMonoidToModuleToDistribMulActionToAddCommMonoidToModule.{u2, max u3 u2, u1, max (max u3 u1) u2} R (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (CommRing.toCommSemiring.{u2} R _inst_3) (Subalgebra.toSemiring.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))) (Module.End.semiring.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (Subalgebra.algebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))) (Module.instAlgebraEndToSemiringSemiring.{u2, u1} R M (CommRing.toCommSemiring.{u2} R _inst_3) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (AlgHom.{u2, max u3 u2, u1} R (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (CommRing.toCommSemiring.{u2} R _inst_3) (Subalgebra.toSemiring.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))) (Module.End.semiring.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (Subalgebra.algebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))) (Module.instAlgebraEndToSemiringSemiring.{u2, u1} R M (CommRing.toCommSemiring.{u2} R _inst_3) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4)) (AlgHom.algHomClass.{u2, max u3 u2, u1} R (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (CommRing.toCommSemiring.{u2} R _inst_3) (Subalgebra.toSemiring.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))) (Module.End.semiring.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (Subalgebra.algebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))) (Module.instAlgebraEndToSemiringSemiring.{u2, u1} R M (CommRing.toCommSemiring.{u2} R _inst_3) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4)))))) (Matrix.isRepresentation.toEnd.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b hb (fun (a : ι) (b : ι) => _inst_5 a b)) A) f)
Case conversion may be inaccurate. Consider using '#align matrix.is_representation.eq_to_End_of_represents Matrix.isRepresentation.eq_toEnd_of_representsₓ'. -/
theorem Matrix.isRepresentation.eq_toEnd_of_represents (A : Matrix.isRepresentation R b)
{f : Module.End R M} (h : (A : Matrix ι ι R).Represents b f) :
@@ -318,7 +318,7 @@ theorem Matrix.isRepresentation.eq_toEnd_of_represents (A : Matrix.isRepresentat
lean 3 declaration is
forall {ι : Type.{u1}} [_inst_1 : Fintype.{u1} ι] {M : Type.{u2}} [_inst_2 : AddCommGroup.{u2} M] (R : Type.{u3}) [_inst_3 : CommRing.{u3} R] [_inst_4 : Module.{u3, u2} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2)] (b : ι -> M) (hb : Eq.{succ u2} (Submodule.{u3, u2} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (Submodule.span.{u3, u2} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4 (Set.range.{u2, succ u1} M ι b)) (Top.top.{u2} (Submodule.{u3, u2} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (Submodule.hasTop.{u3, u2} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4))) [_inst_5 : DecidableEq.{succ u1} ι] (f : Module.End.{u3, u2} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (I : Ideal.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3))), (LE.le.{u2} (Submodule.{u3, u2} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (Preorder.toHasLe.{u2} (Submodule.{u3, u2} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (PartialOrder.toPreorder.{u2} (Submodule.{u3, u2} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (SetLike.partialOrder.{u2, u2} (Submodule.{u3, u2} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) M (Submodule.setLike.{u3, u2} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4)))) (LinearMap.range.{u3, u3, u2, u2, u2} R R M M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4 _inst_4 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) (Module.End.{u3, u2} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (LinearMap.semilinearMapClass.{u3, u3, u2, u2} R R M M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4 _inst_4 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3))))) (RingHomSurjective.ids.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3))) f) (SMul.smul.{u3, u2} (Ideal.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3))) (Submodule.{u3, u2} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (Submodule.hasSMul'.{u3, u2} R M (CommRing.toCommSemiring.{u3} R _inst_3) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) I (Top.top.{u2} (Submodule.{u3, u2} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (Submodule.hasTop.{u3, u2} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4)))) -> (Exists.{succ (max u1 u3)} (coeSort.{succ (max u1 u3), succ (succ (max u1 u3))} (Subalgebra.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b)) (Matrix.algebra.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b) (CommRing.toCommSemiring.{u3} R _inst_3) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) Type.{max u1 u3} (SetLike.hasCoeToSort.{max u1 u3, max u1 u3} (Subalgebra.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b)) (Matrix.algebra.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b) (CommRing.toCommSemiring.{u3} R _inst_3) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.setLike.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b)) (Matrix.algebra.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b) (CommRing.toCommSemiring.{u3} R _inst_3) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))))) (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))) (fun (M_1 : coeSort.{succ (max u1 u3), succ (succ (max u1 u3))} (Subalgebra.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b)) (Matrix.algebra.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b) (CommRing.toCommSemiring.{u3} R _inst_3) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) Type.{max u1 u3} (SetLike.hasCoeToSort.{max u1 u3, max u1 u3} (Subalgebra.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b)) (Matrix.algebra.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b) (CommRing.toCommSemiring.{u3} R _inst_3) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.setLike.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b)) (Matrix.algebra.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b) (CommRing.toCommSemiring.{u3} R _inst_3) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))))) (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))) => And (Eq.{succ u2} (Module.End.{u3, u2} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (coeFn.{max (succ (max u1 u3)) (succ u2), max (succ (max u1 u3)) (succ u2)} (AlgHom.{u3, max u1 u3, u2} R (coeSort.{succ (max u1 u3), succ (succ (max u1 u3))} (Subalgebra.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b)) (Matrix.algebra.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b) (CommRing.toCommSemiring.{u3} R _inst_3) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) Type.{max u1 u3} (SetLike.hasCoeToSort.{max u1 u3, max u1 u3} (Subalgebra.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b)) (Matrix.algebra.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b) (CommRing.toCommSemiring.{u3} R _inst_3) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.setLike.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b)) (Matrix.algebra.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b) (CommRing.toCommSemiring.{u3} R _inst_3) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))))) (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))) (Module.End.{u3, u2} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (CommRing.toCommSemiring.{u3} R _inst_3) (Subalgebra.toSemiring.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b)) (Matrix.algebra.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b) (CommRing.toCommSemiring.{u3} R _inst_3) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))) (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))) (Module.End.semiring.{u3, u2} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (Subalgebra.algebra.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b)) (Matrix.algebra.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b) (CommRing.toCommSemiring.{u3} R _inst_3) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))) (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))) (Module.End.algebra.{u3, u2} R M (CommRing.toCommSemiring.{u3} R _inst_3) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4)) (fun (_x : AlgHom.{u3, max u1 u3, u2} R (coeSort.{succ (max u1 u3), succ (succ (max u1 u3))} (Subalgebra.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b)) (Matrix.algebra.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b) (CommRing.toCommSemiring.{u3} R _inst_3) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) Type.{max u1 u3} (SetLike.hasCoeToSort.{max u1 u3, max u1 u3} (Subalgebra.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b)) (Matrix.algebra.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b) (CommRing.toCommSemiring.{u3} R _inst_3) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.setLike.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b)) (Matrix.algebra.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b) (CommRing.toCommSemiring.{u3} R _inst_3) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))))) (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))) (Module.End.{u3, u2} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (CommRing.toCommSemiring.{u3} R _inst_3) (Subalgebra.toSemiring.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b)) (Matrix.algebra.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b) (CommRing.toCommSemiring.{u3} R _inst_3) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))) (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))) (Module.End.semiring.{u3, u2} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (Subalgebra.algebra.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b)) (Matrix.algebra.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b) (CommRing.toCommSemiring.{u3} R _inst_3) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))) (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))) (Module.End.algebra.{u3, u2} R M (CommRing.toCommSemiring.{u3} R _inst_3) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4)) => (coeSort.{succ (max u1 u3), succ (succ (max u1 u3))} (Subalgebra.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b)) (Matrix.algebra.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b) (CommRing.toCommSemiring.{u3} R _inst_3) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) Type.{max u1 u3} (SetLike.hasCoeToSort.{max u1 u3, max u1 u3} (Subalgebra.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b)) (Matrix.algebra.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b) (CommRing.toCommSemiring.{u3} R _inst_3) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.setLike.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b)) (Matrix.algebra.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b) (CommRing.toCommSemiring.{u3} R _inst_3) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))))) (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))) -> (Module.End.{u3, u2} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4)) ([anonymous].{u3, max u1 u3, u2} R (coeSort.{succ (max u1 u3), succ (succ (max u1 u3))} (Subalgebra.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b)) (Matrix.algebra.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b) (CommRing.toCommSemiring.{u3} R _inst_3) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) Type.{max u1 u3} (SetLike.hasCoeToSort.{max u1 u3, max u1 u3} (Subalgebra.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b)) (Matrix.algebra.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b) (CommRing.toCommSemiring.{u3} R _inst_3) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.setLike.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b)) (Matrix.algebra.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b) (CommRing.toCommSemiring.{u3} R _inst_3) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))))) (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))) (Module.End.{u3, u2} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (CommRing.toCommSemiring.{u3} R _inst_3) (Subalgebra.toSemiring.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b)) (Matrix.algebra.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b) (CommRing.toCommSemiring.{u3} R _inst_3) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))) (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))) (Module.End.semiring.{u3, u2} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (Subalgebra.algebra.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b)) (Matrix.algebra.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b) (CommRing.toCommSemiring.{u3} R _inst_3) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))) (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))) (Module.End.algebra.{u3, u2} R M (CommRing.toCommSemiring.{u3} R _inst_3) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4)) (Matrix.isRepresentation.toEnd.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b hb (fun (a : ι) (b : ι) => _inst_5 a b)) M_1) f) (forall (i : ι) (j : ι), Membership.Mem.{u3, u3} R (Ideal.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3))) (SetLike.hasMem.{u3, u3} (Ideal.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3))) R (Submodule.setLike.{u3, u3} R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3))))) (Semiring.toModule.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3))))) (Subtype.val.{succ (max u1 u3)} (Matrix.{u1, u1, u3} ι ι R) (fun (x : Matrix.{u1, u1, u3} ι ι R) => Membership.Mem.{max u1 u3, max u1 u3} (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b)) (Matrix.algebra.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b) (CommRing.toCommSemiring.{u3} R _inst_3) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (SetLike.hasMem.{max u1 u3, max u1 u3} (Subalgebra.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b)) (Matrix.algebra.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b) (CommRing.toCommSemiring.{u3} R _inst_3) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.setLike.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b)) (Matrix.algebra.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b) (CommRing.toCommSemiring.{u3} R _inst_3) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))))) x (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))) M_1 i j) I)))
but is expected to have type
- forall {ι : Type.{u1}} [_inst_1 : Fintype.{u1} ι] {M : Type.{u2}} [_inst_2 : AddCommGroup.{u2} M] (R : Type.{u3}) [_inst_3 : CommRing.{u3} R] [_inst_4 : Module.{u3, u2} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2)] (b : ι -> M) (hb : Eq.{succ u2} (Submodule.{u3, u2} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (Submodule.span.{u3, u2} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4 (Set.range.{u2, succ u1} M ι b)) (Top.top.{u2} (Submodule.{u3, u2} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (Submodule.instTopSubmodule.{u3, u2} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4))) [_inst_5 : DecidableEq.{succ u1} ι] (f : Module.End.{u3, u2} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (I : Ideal.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))), (LE.le.{u2} (Submodule.{u3, u2} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (Preorder.toLE.{u2} (Submodule.{u3, u2} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (PartialOrder.toPreorder.{u2} (Submodule.{u3, u2} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (OmegaCompletePartialOrder.toPartialOrder.{u2} (Submodule.{u3, u2} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (CompleteLattice.instOmegaCompletePartialOrder.{u2} (Submodule.{u3, u2} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (Submodule.completeLattice.{u3, u2} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4))))) (LinearMap.range.{u3, u3, u2, u2, u2} R R M M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4 _inst_4 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (Module.End.{u3, u2} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (LinearMap.semilinearMapClass.{u3, u3, u2, u2} R R M M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4 _inst_4 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))))) (RingHomSurjective.ids.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))) f) (HSMul.hSMul.{u3, u2, u2} (Ideal.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))) (Submodule.{u3, u2} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (Submodule.{u3, u2} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (instHSMul.{u3, u2} (Ideal.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))) (Submodule.{u3, u2} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (Submodule.hasSMul'.{u3, u2} R M (CommRing.toCommSemiring.{u3} R _inst_3) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4)) I (Top.top.{u2} (Submodule.{u3, u2} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (Submodule.instTopSubmodule.{u3, u2} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4)))) -> (Exists.{max (succ u1) (succ u3)} (Subtype.{succ (max u1 u3)} (Matrix.{u1, u1, u3} ι ι R) (fun (x : Matrix.{u1, u1, u3} ι ι R) => Membership.mem.{max u1 u3, max u1 u3} (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.{u3, max u3 u1} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (SetLike.instMembership.{max u1 u3, max u1 u3} (Subalgebra.{u3, max u3 u1} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))))) x (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (fun (M_1 : Subtype.{succ (max u1 u3)} (Matrix.{u1, u1, u3} ι ι R) (fun (x : Matrix.{u1, u1, u3} ι ι R) => Membership.mem.{max u1 u3, max u1 u3} (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.{u3, max u3 u1} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (SetLike.instMembership.{max u1 u3, max u1 u3} (Subalgebra.{u3, max u3 u1} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))))) x (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) => And (Eq.{succ u2} ((fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : Subtype.{succ (max u1 u3)} (Matrix.{u1, u1, u3} ι ι R) (fun (x : Matrix.{u1, u1, u3} ι ι R) => Membership.mem.{max u1 u3, max u1 u3} (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.{u3, max u3 u1} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (SetLike.instMembership.{max u1 u3, max u1 u3} (Subalgebra.{u3, max u3 u1} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))))) x (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) => Module.End.{u3, u2} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) M_1) (FunLike.coe.{max (max (succ u1) (succ u2)) (succ u3), max (succ u1) (succ u3), succ u2} (AlgHom.{u3, max u1 u3, u2} R (Subtype.{succ (max u1 u3)} (Matrix.{u1, u1, u3} ι ι R) (fun (x : Matrix.{u1, u1, u3} ι ι R) => Membership.mem.{max u1 u3, max u1 u3} (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.{u3, max u3 u1} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (SetLike.instMembership.{max u1 u3, max u1 u3} (Subalgebra.{u3, max u3 u1} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))))) x (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (Module.End.{u3, u2} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (CommRing.toCommSemiring.{u3} R _inst_3) (Subalgebra.toSemiring.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))) (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))) (Module.End.semiring.{u3, u2} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (Subalgebra.algebra.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))) (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))) (Module.instAlgebraEndToSemiringSemiring.{u3, u2} R M (CommRing.toCommSemiring.{u3} R _inst_3) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4)) (Subtype.{succ (max u1 u3)} (Matrix.{u1, u1, u3} ι ι R) (fun (x : Matrix.{u1, u1, u3} ι ι R) => Membership.mem.{max u1 u3, max u1 u3} (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.{u3, max u3 u1} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (SetLike.instMembership.{max u1 u3, max u1 u3} (Subalgebra.{u3, max u3 u1} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))))) x (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (fun (_x : Subtype.{succ (max u1 u3)} (Matrix.{u1, u1, u3} ι ι R) (fun (x : Matrix.{u1, u1, u3} ι ι R) => Membership.mem.{max u1 u3, max u1 u3} (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.{u3, max u3 u1} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (SetLike.instMembership.{max u1 u3, max u1 u3} (Subalgebra.{u3, max u3 u1} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))))) x (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : Subtype.{succ (max u1 u3)} (Matrix.{u1, u1, u3} ι ι R) (fun (x : Matrix.{u1, u1, u3} ι ι R) => Membership.mem.{max u1 u3, max u1 u3} (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.{u3, max u3 u1} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (SetLike.instMembership.{max u1 u3, max u1 u3} (Subalgebra.{u3, max u3 u1} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))))) x (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) => Module.End.{u3, u2} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) _x) (SMulHomClass.toFunLike.{max (max u1 u2) u3, u3, max u1 u3, u2} (AlgHom.{u3, max u1 u3, u2} R (Subtype.{succ (max u1 u3)} (Matrix.{u1, u1, u3} ι ι R) (fun (x : Matrix.{u1, u1, u3} ι ι R) => Membership.mem.{max u1 u3, max u1 u3} (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.{u3, max u3 u1} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (SetLike.instMembership.{max u1 u3, max u1 u3} (Subalgebra.{u3, max u3 u1} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))))) x (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (Module.End.{u3, u2} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (CommRing.toCommSemiring.{u3} R _inst_3) (Subalgebra.toSemiring.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))) (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))) (Module.End.semiring.{u3, u2} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (Subalgebra.algebra.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))) (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))) (Module.instAlgebraEndToSemiringSemiring.{u3, u2} R M (CommRing.toCommSemiring.{u3} R _inst_3) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4)) R (Subtype.{succ (max u1 u3)} (Matrix.{u1, u1, u3} ι ι R) (fun (x : Matrix.{u1, u1, u3} ι ι R) => Membership.mem.{max u1 u3, max u1 u3} (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.{u3, max u3 u1} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (SetLike.instMembership.{max u1 u3, max u1 u3} (Subalgebra.{u3, max u3 u1} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))))) x (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (Module.End.{u3, u2} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (SMulZeroClass.toSMul.{u3, max u1 u3} R (Subtype.{succ (max u1 u3)} (Matrix.{u1, u1, u3} ι ι R) (fun (x : Matrix.{u1, u1, u3} ι ι R) => Membership.mem.{max u1 u3, max u1 u3} (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.{u3, max u3 u1} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (SetLike.instMembership.{max u1 u3, max u1 u3} (Subalgebra.{u3, max u3 u1} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))))) x (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (AddMonoid.toZero.{max u1 u3} (Subtype.{succ (max u1 u3)} (Matrix.{u1, u1, u3} ι ι R) (fun (x : Matrix.{u1, u1, u3} ι ι R) => Membership.mem.{max u1 u3, max u1 u3} (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.{u3, max u3 u1} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (SetLike.instMembership.{max u1 u3, max u1 u3} (Subalgebra.{u3, max u3 u1} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))))) x (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (AddCommMonoid.toAddMonoid.{max u1 u3} (Subtype.{succ (max u1 u3)} (Matrix.{u1, u1, u3} ι ι R) (fun (x : Matrix.{u1, u1, u3} ι ι R) => Membership.mem.{max u1 u3, max u1 u3} (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.{u3, max u3 u1} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (SetLike.instMembership.{max u1 u3, max u1 u3} (Subalgebra.{u3, max u3 u1} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))))) x (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (NonUnitalNonAssocSemiring.toAddCommMonoid.{max u1 u3} (Subtype.{succ (max u1 u3)} (Matrix.{u1, u1, u3} ι ι R) (fun (x : Matrix.{u1, u1, u3} ι ι R) => Membership.mem.{max u1 u3, max u1 u3} (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.{u3, max u3 u1} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (SetLike.instMembership.{max u1 u3, max u1 u3} (Subalgebra.{u3, max u3 u1} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))))) x (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{max u1 u3} (Subtype.{succ (max u1 u3)} (Matrix.{u1, u1, u3} ι ι R) (fun (x : Matrix.{u1, u1, u3} ι ι R) => Membership.mem.{max u1 u3, max u1 u3} (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.{u3, max u3 u1} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (SetLike.instMembership.{max u1 u3, max u1 u3} (Subalgebra.{u3, max u3 u1} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))))) x (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (Semiring.toNonAssocSemiring.{max u1 u3} (Subtype.{succ (max u1 u3)} (Matrix.{u1, u1, u3} ι ι R) (fun (x : Matrix.{u1, u1, u3} ι ι R) => Membership.mem.{max u1 u3, max u1 u3} (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.{u3, max u3 u1} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (SetLike.instMembership.{max u1 u3, max u1 u3} (Subalgebra.{u3, max u3 u1} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))))) x (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (Subalgebra.toSemiring.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))) (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))))))) (DistribSMul.toSMulZeroClass.{u3, max u1 u3} R (Subtype.{succ (max u1 u3)} (Matrix.{u1, u1, u3} ι ι R) (fun (x : Matrix.{u1, u1, u3} ι ι R) => Membership.mem.{max u1 u3, max u1 u3} (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.{u3, max u3 u1} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (SetLike.instMembership.{max u1 u3, max u1 u3} (Subalgebra.{u3, max u3 u1} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))))) x (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (AddMonoid.toAddZeroClass.{max u1 u3} (Subtype.{succ (max u1 u3)} (Matrix.{u1, u1, u3} ι ι R) (fun (x : Matrix.{u1, u1, u3} ι ι R) => Membership.mem.{max u1 u3, max u1 u3} (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.{u3, max u3 u1} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (SetLike.instMembership.{max u1 u3, max u1 u3} (Subalgebra.{u3, max u3 u1} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))))) x (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (AddCommMonoid.toAddMonoid.{max u1 u3} (Subtype.{succ (max u1 u3)} (Matrix.{u1, u1, u3} ι ι R) (fun (x : Matrix.{u1, u1, u3} ι ι R) => Membership.mem.{max u1 u3, max u1 u3} (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.{u3, max u3 u1} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (SetLike.instMembership.{max u1 u3, max u1 u3} (Subalgebra.{u3, max u3 u1} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))))) x (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (NonUnitalNonAssocSemiring.toAddCommMonoid.{max u1 u3} (Subtype.{succ (max u1 u3)} (Matrix.{u1, u1, u3} ι ι R) (fun (x : Matrix.{u1, u1, u3} ι ι R) => Membership.mem.{max u1 u3, max u1 u3} (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.{u3, max u3 u1} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (SetLike.instMembership.{max u1 u3, max u1 u3} (Subalgebra.{u3, max u3 u1} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))))) x (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{max u1 u3} (Subtype.{succ (max u1 u3)} (Matrix.{u1, u1, u3} ι ι R) (fun (x : Matrix.{u1, u1, u3} ι ι R) => Membership.mem.{max u1 u3, max u1 u3} (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.{u3, max u3 u1} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (SetLike.instMembership.{max u1 u3, max u1 u3} (Subalgebra.{u3, max u3 u1} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))))) x (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (Semiring.toNonAssocSemiring.{max u1 u3} (Subtype.{succ (max u1 u3)} (Matrix.{u1, u1, u3} ι ι R) (fun (x : Matrix.{u1, u1, u3} ι ι R) => Membership.mem.{max u1 u3, max u1 u3} (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.{u3, max u3 u1} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (SetLike.instMembership.{max u1 u3, max u1 u3} (Subalgebra.{u3, max u3 u1} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))))) x (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (Subalgebra.toSemiring.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))) (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))))))) (DistribMulAction.toDistribSMul.{u3, max u1 u3} R (Subtype.{succ (max u1 u3)} (Matrix.{u1, u1, u3} ι ι R) (fun (x : Matrix.{u1, u1, u3} ι ι R) => Membership.mem.{max u1 u3, max u1 u3} (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.{u3, max u3 u1} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (SetLike.instMembership.{max u1 u3, max u1 u3} (Subalgebra.{u3, max u3 u1} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))))) x (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (AddCommMonoid.toAddMonoid.{max u1 u3} (Subtype.{succ (max u1 u3)} (Matrix.{u1, u1, u3} ι ι R) (fun (x : Matrix.{u1, u1, u3} ι ι R) => Membership.mem.{max u1 u3, max u1 u3} (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.{u3, max u3 u1} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (SetLike.instMembership.{max u1 u3, max u1 u3} (Subalgebra.{u3, max u3 u1} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))))) x (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (NonUnitalNonAssocSemiring.toAddCommMonoid.{max u1 u3} (Subtype.{succ (max u1 u3)} (Matrix.{u1, u1, u3} ι ι R) (fun (x : Matrix.{u1, u1, u3} ι ι R) => Membership.mem.{max u1 u3, max u1 u3} (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.{u3, max u3 u1} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (SetLike.instMembership.{max u1 u3, max u1 u3} (Subalgebra.{u3, max u3 u1} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))))) x (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{max u1 u3} (Subtype.{succ (max u1 u3)} (Matrix.{u1, u1, u3} ι ι R) (fun (x : Matrix.{u1, u1, u3} ι ι R) => Membership.mem.{max u1 u3, max u1 u3} (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.{u3, max u3 u1} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (SetLike.instMembership.{max u1 u3, max u1 u3} (Subalgebra.{u3, max u3 u1} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))))) x (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (Semiring.toNonAssocSemiring.{max u1 u3} (Subtype.{succ (max u1 u3)} (Matrix.{u1, u1, u3} ι ι R) (fun (x : Matrix.{u1, u1, u3} ι ι R) => Membership.mem.{max u1 u3, max u1 u3} (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.{u3, max u3 u1} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (SetLike.instMembership.{max u1 u3, max u1 u3} (Subalgebra.{u3, max u3 u1} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))))) x (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (Subalgebra.toSemiring.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))) (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))))))) (Module.toDistribMulAction.{u3, max u1 u3} R (Subtype.{succ (max u1 u3)} (Matrix.{u1, u1, u3} ι ι R) (fun (x : Matrix.{u1, u1, u3} ι ι R) => Membership.mem.{max u1 u3, max u1 u3} (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.{u3, max u3 u1} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (SetLike.instMembership.{max u1 u3, max u1 u3} (Subalgebra.{u3, max u3 u1} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))))) x (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{max u1 u3} (Subtype.{succ (max u1 u3)} (Matrix.{u1, u1, u3} ι ι R) (fun (x : Matrix.{u1, u1, u3} ι ι R) => Membership.mem.{max u1 u3, max u1 u3} (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.{u3, max u3 u1} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (SetLike.instMembership.{max u1 u3, max u1 u3} (Subalgebra.{u3, max u3 u1} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))))) x (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{max u1 u3} (Subtype.{succ (max u1 u3)} (Matrix.{u1, u1, u3} ι ι R) (fun (x : Matrix.{u1, u1, u3} ι ι R) => Membership.mem.{max u1 u3, max u1 u3} (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.{u3, max u3 u1} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (SetLike.instMembership.{max u1 u3, max u1 u3} (Subalgebra.{u3, max u3 u1} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))))) x (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (Semiring.toNonAssocSemiring.{max u1 u3} (Subtype.{succ (max u1 u3)} (Matrix.{u1, u1, u3} ι ι R) (fun (x : Matrix.{u1, u1, u3} ι ι R) => Membership.mem.{max u1 u3, max u1 u3} (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.{u3, max u3 u1} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (SetLike.instMembership.{max u1 u3, max u1 u3} (Subalgebra.{u3, max u3 u1} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))))) x (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (Subalgebra.toSemiring.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))) (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))))) (Algebra.toModule.{u3, max u1 u3} R (Subtype.{succ (max u1 u3)} (Matrix.{u1, u1, u3} ι ι R) (fun (x : Matrix.{u1, u1, u3} ι ι R) => Membership.mem.{max u1 u3, max u1 u3} (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.{u3, max u3 u1} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (SetLike.instMembership.{max u1 u3, max u1 u3} (Subalgebra.{u3, max u3 u1} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))))) x (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (CommRing.toCommSemiring.{u3} R _inst_3) (Subalgebra.toSemiring.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))) (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))) (Subalgebra.algebra.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))) (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))))))) (SMulZeroClass.toSMul.{u3, u2} R (Module.End.{u3, u2} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (AddMonoid.toZero.{u2} (Module.End.{u3, u2} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (AddCommMonoid.toAddMonoid.{u2} (Module.End.{u3, u2} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} (Module.End.{u3, u2} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} (Module.End.{u3, u2} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (Semiring.toNonAssocSemiring.{u2} (Module.End.{u3, u2} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (Module.End.semiring.{u3, u2} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4)))))) (DistribSMul.toSMulZeroClass.{u3, u2} R (Module.End.{u3, u2} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (AddMonoid.toAddZeroClass.{u2} (Module.End.{u3, u2} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (AddCommMonoid.toAddMonoid.{u2} (Module.End.{u3, u2} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} (Module.End.{u3, u2} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} (Module.End.{u3, u2} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (Semiring.toNonAssocSemiring.{u2} (Module.End.{u3, u2} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (Module.End.semiring.{u3, u2} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4)))))) (DistribMulAction.toDistribSMul.{u3, u2} R (Module.End.{u3, u2} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (AddCommMonoid.toAddMonoid.{u2} (Module.End.{u3, u2} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} (Module.End.{u3, u2} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} (Module.End.{u3, u2} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (Semiring.toNonAssocSemiring.{u2} (Module.End.{u3, u2} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (Module.End.semiring.{u3, u2} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4))))) (Module.toDistribMulAction.{u3, u2} R (Module.End.{u3, u2} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} (Module.End.{u3, u2} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} (Module.End.{u3, u2} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (Semiring.toNonAssocSemiring.{u2} (Module.End.{u3, u2} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (Module.End.semiring.{u3, u2} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4)))) (Algebra.toModule.{u3, u2} R (Module.End.{u3, u2} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (CommRing.toCommSemiring.{u3} R _inst_3) (Module.End.semiring.{u3, u2} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (Module.instAlgebraEndToSemiringSemiring.{u3, u2} R M (CommRing.toCommSemiring.{u3} R _inst_3) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4)))))) (DistribMulActionHomClass.toSMulHomClass.{max (max u1 u2) u3, u3, max u1 u3, u2} (AlgHom.{u3, max u1 u3, u2} R (Subtype.{succ (max u1 u3)} (Matrix.{u1, u1, u3} ι ι R) (fun (x : Matrix.{u1, u1, u3} ι ι R) => Membership.mem.{max u1 u3, max u1 u3} (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.{u3, max u3 u1} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (SetLike.instMembership.{max u1 u3, max u1 u3} (Subalgebra.{u3, max u3 u1} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))))) x (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (Module.End.{u3, u2} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (CommRing.toCommSemiring.{u3} R _inst_3) (Subalgebra.toSemiring.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))) (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))) (Module.End.semiring.{u3, u2} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (Subalgebra.algebra.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))) (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))) (Module.instAlgebraEndToSemiringSemiring.{u3, u2} R M (CommRing.toCommSemiring.{u3} R _inst_3) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4)) R (Subtype.{succ (max u1 u3)} (Matrix.{u1, u1, u3} ι ι R) (fun (x : Matrix.{u1, u1, u3} ι ι R) => Membership.mem.{max u1 u3, max u1 u3} (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.{u3, max u3 u1} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (SetLike.instMembership.{max u1 u3, max u1 u3} (Subalgebra.{u3, max u3 u1} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))))) x (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (Module.End.{u3, u2} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (AddCommMonoid.toAddMonoid.{max u1 u3} (Subtype.{succ (max u1 u3)} (Matrix.{u1, u1, u3} ι ι R) (fun (x : Matrix.{u1, u1, u3} ι ι R) => Membership.mem.{max u1 u3, max u1 u3} (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.{u3, max u3 u1} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (SetLike.instMembership.{max u1 u3, max u1 u3} (Subalgebra.{u3, max u3 u1} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))))) x (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (NonUnitalNonAssocSemiring.toAddCommMonoid.{max u1 u3} (Subtype.{succ (max u1 u3)} (Matrix.{u1, u1, u3} ι ι R) (fun (x : Matrix.{u1, u1, u3} ι ι R) => Membership.mem.{max u1 u3, max u1 u3} (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.{u3, max u3 u1} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (SetLike.instMembership.{max u1 u3, max u1 u3} (Subalgebra.{u3, max u3 u1} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))))) x (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{max u1 u3} (Subtype.{succ (max u1 u3)} (Matrix.{u1, u1, u3} ι ι R) (fun (x : Matrix.{u1, u1, u3} ι ι R) => Membership.mem.{max u1 u3, max u1 u3} (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.{u3, max u3 u1} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (SetLike.instMembership.{max u1 u3, max u1 u3} (Subalgebra.{u3, max u3 u1} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))))) x (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (Semiring.toNonAssocSemiring.{max u1 u3} (Subtype.{succ (max u1 u3)} (Matrix.{u1, u1, u3} ι ι R) (fun (x : Matrix.{u1, u1, u3} ι ι R) => Membership.mem.{max u1 u3, max u1 u3} (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.{u3, max u3 u1} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (SetLike.instMembership.{max u1 u3, max u1 u3} (Subalgebra.{u3, max u3 u1} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))))) x (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (Subalgebra.toSemiring.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))) (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))))))) (AddCommMonoid.toAddMonoid.{u2} (Module.End.{u3, u2} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} (Module.End.{u3, u2} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} (Module.End.{u3, u2} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (Semiring.toNonAssocSemiring.{u2} (Module.End.{u3, u2} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (Module.End.semiring.{u3, u2} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4))))) (Module.toDistribMulAction.{u3, max u1 u3} R (Subtype.{succ (max u1 u3)} (Matrix.{u1, u1, u3} ι ι R) (fun (x : Matrix.{u1, u1, u3} ι ι R) => Membership.mem.{max u1 u3, max u1 u3} (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.{u3, max u3 u1} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (SetLike.instMembership.{max u1 u3, max u1 u3} (Subalgebra.{u3, max u3 u1} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))))) x (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{max u1 u3} (Subtype.{succ (max u1 u3)} (Matrix.{u1, u1, u3} ι ι R) (fun (x : Matrix.{u1, u1, u3} ι ι R) => Membership.mem.{max u1 u3, max u1 u3} (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.{u3, max u3 u1} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (SetLike.instMembership.{max u1 u3, max u1 u3} (Subalgebra.{u3, max u3 u1} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))))) x (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{max u1 u3} (Subtype.{succ (max u1 u3)} (Matrix.{u1, u1, u3} ι ι R) (fun (x : Matrix.{u1, u1, u3} ι ι R) => Membership.mem.{max u1 u3, max u1 u3} (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.{u3, max u3 u1} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (SetLike.instMembership.{max u1 u3, max u1 u3} (Subalgebra.{u3, max u3 u1} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))))) x (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (Semiring.toNonAssocSemiring.{max u1 u3} (Subtype.{succ (max u1 u3)} (Matrix.{u1, u1, u3} ι ι R) (fun (x : Matrix.{u1, u1, u3} ι ι R) => Membership.mem.{max u1 u3, max u1 u3} (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.{u3, max u3 u1} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (SetLike.instMembership.{max u1 u3, max u1 u3} (Subalgebra.{u3, max u3 u1} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))))) x (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (Subalgebra.toSemiring.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))) (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))))) (Algebra.toModule.{u3, max u1 u3} R (Subtype.{succ (max u1 u3)} (Matrix.{u1, u1, u3} ι ι R) (fun (x : Matrix.{u1, u1, u3} ι ι R) => Membership.mem.{max u1 u3, max u1 u3} (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.{u3, max u3 u1} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (SetLike.instMembership.{max u1 u3, max u1 u3} (Subalgebra.{u3, max u3 u1} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))))) x (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (CommRing.toCommSemiring.{u3} R _inst_3) (Subalgebra.toSemiring.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))) (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))) (Subalgebra.algebra.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))) (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))))) (Module.toDistribMulAction.{u3, u2} R (Module.End.{u3, u2} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} (Module.End.{u3, u2} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} (Module.End.{u3, u2} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (Semiring.toNonAssocSemiring.{u2} (Module.End.{u3, u2} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (Module.End.semiring.{u3, u2} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4)))) (Algebra.toModule.{u3, u2} R (Module.End.{u3, u2} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (CommRing.toCommSemiring.{u3} R _inst_3) (Module.End.semiring.{u3, u2} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (Module.instAlgebraEndToSemiringSemiring.{u3, u2} R M (CommRing.toCommSemiring.{u3} R _inst_3) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4))) (NonUnitalAlgHomClass.toDistribMulActionHomClass.{max (max u1 u2) u3, u3, max u1 u3, u2} (AlgHom.{u3, max u1 u3, u2} R (Subtype.{succ (max u1 u3)} (Matrix.{u1, u1, u3} ι ι R) (fun (x : Matrix.{u1, u1, u3} ι ι R) => Membership.mem.{max u1 u3, max u1 u3} (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.{u3, max u3 u1} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (SetLike.instMembership.{max u1 u3, max u1 u3} (Subalgebra.{u3, max u3 u1} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))))) x (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (Module.End.{u3, u2} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (CommRing.toCommSemiring.{u3} R _inst_3) (Subalgebra.toSemiring.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))) (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))) (Module.End.semiring.{u3, u2} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (Subalgebra.algebra.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))) (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))) (Module.instAlgebraEndToSemiringSemiring.{u3, u2} R M (CommRing.toCommSemiring.{u3} R _inst_3) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4)) R (Subtype.{succ (max u1 u3)} (Matrix.{u1, u1, u3} ι ι R) (fun (x : Matrix.{u1, u1, u3} ι ι R) => Membership.mem.{max u1 u3, max u1 u3} (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.{u3, max u3 u1} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (SetLike.instMembership.{max u1 u3, max u1 u3} (Subalgebra.{u3, max u3 u1} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))))) x (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (Module.End.{u3, u2} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{max u1 u3} (Subtype.{succ (max u1 u3)} (Matrix.{u1, u1, u3} ι ι R) (fun (x : Matrix.{u1, u1, u3} ι ι R) => Membership.mem.{max u1 u3, max u1 u3} (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.{u3, max u3 u1} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (SetLike.instMembership.{max u1 u3, max u1 u3} (Subalgebra.{u3, max u3 u1} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))))) x (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (Semiring.toNonAssocSemiring.{max u1 u3} (Subtype.{succ (max u1 u3)} (Matrix.{u1, u1, u3} ι ι R) (fun (x : Matrix.{u1, u1, u3} ι ι R) => Membership.mem.{max u1 u3, max u1 u3} (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.{u3, max u3 u1} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (SetLike.instMembership.{max u1 u3, max u1 u3} (Subalgebra.{u3, max u3 u1} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))))) x (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (Subalgebra.toSemiring.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))) (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))))) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} (Module.End.{u3, u2} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (Semiring.toNonAssocSemiring.{u2} (Module.End.{u3, u2} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (Module.End.semiring.{u3, u2} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4))) (Module.toDistribMulAction.{u3, max u1 u3} R (Subtype.{succ (max u1 u3)} (Matrix.{u1, u1, u3} ι ι R) (fun (x : Matrix.{u1, u1, u3} ι ι R) => Membership.mem.{max u1 u3, max u1 u3} (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.{u3, max u3 u1} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (SetLike.instMembership.{max u1 u3, max u1 u3} (Subalgebra.{u3, max u3 u1} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))))) x (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{max u1 u3} (Subtype.{succ (max u1 u3)} (Matrix.{u1, u1, u3} ι ι R) (fun (x : Matrix.{u1, u1, u3} ι ι R) => Membership.mem.{max u1 u3, max u1 u3} (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.{u3, max u3 u1} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (SetLike.instMembership.{max u1 u3, max u1 u3} (Subalgebra.{u3, max u3 u1} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))))) x (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{max u1 u3} (Subtype.{succ (max u1 u3)} (Matrix.{u1, u1, u3} ι ι R) (fun (x : Matrix.{u1, u1, u3} ι ι R) => Membership.mem.{max u1 u3, max u1 u3} (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.{u3, max u3 u1} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (SetLike.instMembership.{max u1 u3, max u1 u3} (Subalgebra.{u3, max u3 u1} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))))) x (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (Semiring.toNonAssocSemiring.{max u1 u3} (Subtype.{succ (max u1 u3)} (Matrix.{u1, u1, u3} ι ι R) (fun (x : Matrix.{u1, u1, u3} ι ι R) => Membership.mem.{max u1 u3, max u1 u3} (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.{u3, max u3 u1} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (SetLike.instMembership.{max u1 u3, max u1 u3} (Subalgebra.{u3, max u3 u1} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))))) x (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (Subalgebra.toSemiring.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))) (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))))) (Algebra.toModule.{u3, max u1 u3} R (Subtype.{succ (max u1 u3)} (Matrix.{u1, u1, u3} ι ι R) (fun (x : Matrix.{u1, u1, u3} ι ι R) => Membership.mem.{max u1 u3, max u1 u3} (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.{u3, max u3 u1} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (SetLike.instMembership.{max u1 u3, max u1 u3} (Subalgebra.{u3, max u3 u1} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))))) x (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (CommRing.toCommSemiring.{u3} R _inst_3) (Subalgebra.toSemiring.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))) (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))) (Subalgebra.algebra.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))) (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))))) (Module.toDistribMulAction.{u3, u2} R (Module.End.{u3, u2} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} (Module.End.{u3, u2} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} (Module.End.{u3, u2} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (Semiring.toNonAssocSemiring.{u2} (Module.End.{u3, u2} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (Module.End.semiring.{u3, u2} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4)))) (Algebra.toModule.{u3, u2} R (Module.End.{u3, u2} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (CommRing.toCommSemiring.{u3} R _inst_3) (Module.End.semiring.{u3, u2} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (Module.instAlgebraEndToSemiringSemiring.{u3, u2} R M (CommRing.toCommSemiring.{u3} R _inst_3) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4))) (AlgHom.instNonUnitalAlgHomClassToMonoidToMonoidWithZeroToSemiringToNonUnitalNonAssocSemiringToNonAssocSemiringToNonUnitalNonAssocSemiringToNonAssocSemiringToDistribMulActionToAddCommMonoidToModuleToDistribMulActionToAddCommMonoidToModule.{u3, max u1 u3, u2, max (max u1 u2) u3} R (Subtype.{succ (max u1 u3)} (Matrix.{u1, u1, u3} ι ι R) (fun (x : Matrix.{u1, u1, u3} ι ι R) => Membership.mem.{max u1 u3, max u1 u3} (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.{u3, max u3 u1} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (SetLike.instMembership.{max u1 u3, max u1 u3} (Subalgebra.{u3, max u3 u1} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))))) x (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (Module.End.{u3, u2} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (CommRing.toCommSemiring.{u3} R _inst_3) (Subalgebra.toSemiring.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))) (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))) (Module.End.semiring.{u3, u2} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (Subalgebra.algebra.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))) (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))) (Module.instAlgebraEndToSemiringSemiring.{u3, u2} R M (CommRing.toCommSemiring.{u3} R _inst_3) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (AlgHom.{u3, max u1 u3, u2} R (Subtype.{succ (max u1 u3)} (Matrix.{u1, u1, u3} ι ι R) (fun (x : Matrix.{u1, u1, u3} ι ι R) => Membership.mem.{max u1 u3, max u1 u3} (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.{u3, max u3 u1} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (SetLike.instMembership.{max u1 u3, max u1 u3} (Subalgebra.{u3, max u3 u1} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))))) x (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (Module.End.{u3, u2} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (CommRing.toCommSemiring.{u3} R _inst_3) (Subalgebra.toSemiring.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))) (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))) (Module.End.semiring.{u3, u2} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (Subalgebra.algebra.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))) (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))) (Module.instAlgebraEndToSemiringSemiring.{u3, u2} R M (CommRing.toCommSemiring.{u3} R _inst_3) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4)) (AlgHom.algHomClass.{u3, max u1 u3, u2} R (Subtype.{succ (max u1 u3)} (Matrix.{u1, u1, u3} ι ι R) (fun (x : Matrix.{u1, u1, u3} ι ι R) => Membership.mem.{max u1 u3, max u1 u3} (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.{u3, max u3 u1} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (SetLike.instMembership.{max u1 u3, max u1 u3} (Subalgebra.{u3, max u3 u1} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))))) x (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (Module.End.{u3, u2} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (CommRing.toCommSemiring.{u3} R _inst_3) (Subalgebra.toSemiring.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))) (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))) (Module.End.semiring.{u3, u2} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (Subalgebra.algebra.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))) (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))) (Module.instAlgebraEndToSemiringSemiring.{u3, u2} R M (CommRing.toCommSemiring.{u3} R _inst_3) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4)))))) (Matrix.isRepresentation.toEnd.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b hb (fun (a : ι) (b : ι) => _inst_5 a b)) M_1) f) (forall (i : ι) (j : ι), Membership.mem.{u3, u3} R (Ideal.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))) (SetLike.instMembership.{u3, u3} (Ideal.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))) R (Submodule.setLike.{u3, u3} R R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))))) (Semiring.toModule.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))))) (Subtype.val.{max (succ u1) (succ u3)} (Matrix.{u1, u1, u3} ι ι R) (fun (x : Matrix.{u1, u1, u3} ι ι R) => Membership.mem.{max u1 u3, max u1 u3} (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.{u3, max u3 u1} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (SetLike.instMembership.{max u1 u3, max u1 u3} (Subalgebra.{u3, max u3 u1} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))))) x (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))) M_1 i j) I)))
+ forall {ι : Type.{u1}} [_inst_1 : Fintype.{u1} ι] {M : Type.{u2}} [_inst_2 : AddCommGroup.{u2} M] (R : Type.{u3}) [_inst_3 : CommRing.{u3} R] [_inst_4 : Module.{u3, u2} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2)] (b : ι -> M) (hb : Eq.{succ u2} (Submodule.{u3, u2} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (Submodule.span.{u3, u2} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4 (Set.range.{u2, succ u1} M ι b)) (Top.top.{u2} (Submodule.{u3, u2} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (Submodule.instTopSubmodule.{u3, u2} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4))) [_inst_5 : DecidableEq.{succ u1} ι] (f : Module.End.{u3, u2} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (I : Ideal.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))), (LE.le.{u2} (Submodule.{u3, u2} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (Preorder.toLE.{u2} (Submodule.{u3, u2} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (PartialOrder.toPreorder.{u2} (Submodule.{u3, u2} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (OmegaCompletePartialOrder.toPartialOrder.{u2} (Submodule.{u3, u2} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (CompleteLattice.instOmegaCompletePartialOrder.{u2} (Submodule.{u3, u2} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (Submodule.completeLattice.{u3, u2} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4))))) (LinearMap.range.{u3, u3, u2, u2, u2} R R M M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4 _inst_4 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (Module.End.{u3, u2} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (LinearMap.semilinearMapClass.{u3, u3, u2, u2} R R M M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4 _inst_4 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))))) (RingHomSurjective.ids.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))) f) (HSMul.hSMul.{u3, u2, u2} (Ideal.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))) (Submodule.{u3, u2} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (Submodule.{u3, u2} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (instHSMul.{u3, u2} (Ideal.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))) (Submodule.{u3, u2} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (Submodule.hasSMul'.{u3, u2} R M (CommRing.toCommSemiring.{u3} R _inst_3) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4)) I (Top.top.{u2} (Submodule.{u3, u2} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (Submodule.instTopSubmodule.{u3, u2} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4)))) -> (Exists.{max (succ u1) (succ u3)} (Subtype.{succ (max u1 u3)} (Matrix.{u1, u1, u3} ι ι R) (fun (x : Matrix.{u1, u1, u3} ι ι R) => Membership.mem.{max u1 u3, max u1 u3} (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.{u3, max u3 u1} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (SetLike.instMembership.{max u1 u3, max u1 u3} (Subalgebra.{u3, max u3 u1} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))))) x (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (fun (M_1 : Subtype.{succ (max u1 u3)} (Matrix.{u1, u1, u3} ι ι R) (fun (x : Matrix.{u1, u1, u3} ι ι R) => Membership.mem.{max u1 u3, max u1 u3} (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.{u3, max u3 u1} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (SetLike.instMembership.{max u1 u3, max u1 u3} (Subalgebra.{u3, max u3 u1} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))))) x (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) => And (Eq.{succ u2} ((fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2187 : Subtype.{succ (max u1 u3)} (Matrix.{u1, u1, u3} ι ι R) (fun (x : Matrix.{u1, u1, u3} ι ι R) => Membership.mem.{max u1 u3, max u1 u3} (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.{u3, max u3 u1} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (SetLike.instMembership.{max u1 u3, max u1 u3} (Subalgebra.{u3, max u3 u1} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))))) x (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) => Module.End.{u3, u2} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) M_1) (FunLike.coe.{max (max (succ u1) (succ u2)) (succ u3), max (succ u1) (succ u3), succ u2} (AlgHom.{u3, max u1 u3, u2} R (Subtype.{succ (max u1 u3)} (Matrix.{u1, u1, u3} ι ι R) (fun (x : Matrix.{u1, u1, u3} ι ι R) => Membership.mem.{max u1 u3, max u1 u3} (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.{u3, max u3 u1} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (SetLike.instMembership.{max u1 u3, max u1 u3} (Subalgebra.{u3, max u3 u1} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))))) x (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (Module.End.{u3, u2} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (CommRing.toCommSemiring.{u3} R _inst_3) (Subalgebra.toSemiring.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))) (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))) (Module.End.semiring.{u3, u2} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (Subalgebra.algebra.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))) (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))) (Module.instAlgebraEndToSemiringSemiring.{u3, u2} R M (CommRing.toCommSemiring.{u3} R _inst_3) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4)) (Subtype.{succ (max u1 u3)} (Matrix.{u1, u1, u3} ι ι R) (fun (x : Matrix.{u1, u1, u3} ι ι R) => Membership.mem.{max u1 u3, max u1 u3} (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.{u3, max u3 u1} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (SetLike.instMembership.{max u1 u3, max u1 u3} (Subalgebra.{u3, max u3 u1} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))))) x (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (fun (_x : Subtype.{succ (max u1 u3)} (Matrix.{u1, u1, u3} ι ι R) (fun (x : Matrix.{u1, u1, u3} ι ι R) => Membership.mem.{max u1 u3, max u1 u3} (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.{u3, max u3 u1} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (SetLike.instMembership.{max u1 u3, max u1 u3} (Subalgebra.{u3, max u3 u1} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))))) x (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2187 : Subtype.{succ (max u1 u3)} (Matrix.{u1, u1, u3} ι ι R) (fun (x : Matrix.{u1, u1, u3} ι ι R) => Membership.mem.{max u1 u3, max u1 u3} (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.{u3, max u3 u1} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (SetLike.instMembership.{max u1 u3, max u1 u3} (Subalgebra.{u3, max u3 u1} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))))) x (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) => Module.End.{u3, u2} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) _x) (SMulHomClass.toFunLike.{max (max u1 u2) u3, u3, max u1 u3, u2} (AlgHom.{u3, max u1 u3, u2} R (Subtype.{succ (max u1 u3)} (Matrix.{u1, u1, u3} ι ι R) (fun (x : Matrix.{u1, u1, u3} ι ι R) => Membership.mem.{max u1 u3, max u1 u3} (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.{u3, max u3 u1} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (SetLike.instMembership.{max u1 u3, max u1 u3} (Subalgebra.{u3, max u3 u1} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))))) x (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (Module.End.{u3, u2} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (CommRing.toCommSemiring.{u3} R _inst_3) (Subalgebra.toSemiring.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))) (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))) (Module.End.semiring.{u3, u2} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (Subalgebra.algebra.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))) (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))) (Module.instAlgebraEndToSemiringSemiring.{u3, u2} R M (CommRing.toCommSemiring.{u3} R _inst_3) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4)) R (Subtype.{succ (max u1 u3)} (Matrix.{u1, u1, u3} ι ι R) (fun (x : Matrix.{u1, u1, u3} ι ι R) => Membership.mem.{max u1 u3, max u1 u3} (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.{u3, max u3 u1} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (SetLike.instMembership.{max u1 u3, max u1 u3} (Subalgebra.{u3, max u3 u1} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))))) x (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (Module.End.{u3, u2} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (SMulZeroClass.toSMul.{u3, max u1 u3} R (Subtype.{succ (max u1 u3)} (Matrix.{u1, u1, u3} ι ι R) (fun (x : Matrix.{u1, u1, u3} ι ι R) => Membership.mem.{max u1 u3, max u1 u3} (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.{u3, max u3 u1} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (SetLike.instMembership.{max u1 u3, max u1 u3} (Subalgebra.{u3, max u3 u1} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))))) x (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (AddMonoid.toZero.{max u1 u3} (Subtype.{succ (max u1 u3)} (Matrix.{u1, u1, u3} ι ι R) (fun (x : Matrix.{u1, u1, u3} ι ι R) => Membership.mem.{max u1 u3, max u1 u3} (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.{u3, max u3 u1} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (SetLike.instMembership.{max u1 u3, max u1 u3} (Subalgebra.{u3, max u3 u1} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))))) x (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (AddCommMonoid.toAddMonoid.{max u1 u3} (Subtype.{succ (max u1 u3)} (Matrix.{u1, u1, u3} ι ι R) (fun (x : Matrix.{u1, u1, u3} ι ι R) => Membership.mem.{max u1 u3, max u1 u3} (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.{u3, max u3 u1} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (SetLike.instMembership.{max u1 u3, max u1 u3} (Subalgebra.{u3, max u3 u1} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))))) x (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (NonUnitalNonAssocSemiring.toAddCommMonoid.{max u1 u3} (Subtype.{succ (max u1 u3)} (Matrix.{u1, u1, u3} ι ι R) (fun (x : Matrix.{u1, u1, u3} ι ι R) => Membership.mem.{max u1 u3, max u1 u3} (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.{u3, max u3 u1} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (SetLike.instMembership.{max u1 u3, max u1 u3} (Subalgebra.{u3, max u3 u1} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))))) x (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{max u1 u3} (Subtype.{succ (max u1 u3)} (Matrix.{u1, u1, u3} ι ι R) (fun (x : Matrix.{u1, u1, u3} ι ι R) => Membership.mem.{max u1 u3, max u1 u3} (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.{u3, max u3 u1} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (SetLike.instMembership.{max u1 u3, max u1 u3} (Subalgebra.{u3, max u3 u1} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))))) x (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (Semiring.toNonAssocSemiring.{max u1 u3} (Subtype.{succ (max u1 u3)} (Matrix.{u1, u1, u3} ι ι R) (fun (x : Matrix.{u1, u1, u3} ι ι R) => Membership.mem.{max u1 u3, max u1 u3} (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.{u3, max u3 u1} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (SetLike.instMembership.{max u1 u3, max u1 u3} (Subalgebra.{u3, max u3 u1} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))))) x (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (Subalgebra.toSemiring.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))) (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))))))) (DistribSMul.toSMulZeroClass.{u3, max u1 u3} R (Subtype.{succ (max u1 u3)} (Matrix.{u1, u1, u3} ι ι R) (fun (x : Matrix.{u1, u1, u3} ι ι R) => Membership.mem.{max u1 u3, max u1 u3} (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.{u3, max u3 u1} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (SetLike.instMembership.{max u1 u3, max u1 u3} (Subalgebra.{u3, max u3 u1} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))))) x (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (AddMonoid.toAddZeroClass.{max u1 u3} (Subtype.{succ (max u1 u3)} (Matrix.{u1, u1, u3} ι ι R) (fun (x : Matrix.{u1, u1, u3} ι ι R) => Membership.mem.{max u1 u3, max u1 u3} (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.{u3, max u3 u1} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (SetLike.instMembership.{max u1 u3, max u1 u3} (Subalgebra.{u3, max u3 u1} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))))) x (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (AddCommMonoid.toAddMonoid.{max u1 u3} (Subtype.{succ (max u1 u3)} (Matrix.{u1, u1, u3} ι ι R) (fun (x : Matrix.{u1, u1, u3} ι ι R) => Membership.mem.{max u1 u3, max u1 u3} (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.{u3, max u3 u1} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (SetLike.instMembership.{max u1 u3, max u1 u3} (Subalgebra.{u3, max u3 u1} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))))) x (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (NonUnitalNonAssocSemiring.toAddCommMonoid.{max u1 u3} (Subtype.{succ (max u1 u3)} (Matrix.{u1, u1, u3} ι ι R) (fun (x : Matrix.{u1, u1, u3} ι ι R) => Membership.mem.{max u1 u3, max u1 u3} (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.{u3, max u3 u1} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (SetLike.instMembership.{max u1 u3, max u1 u3} (Subalgebra.{u3, max u3 u1} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))))) x (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{max u1 u3} (Subtype.{succ (max u1 u3)} (Matrix.{u1, u1, u3} ι ι R) (fun (x : Matrix.{u1, u1, u3} ι ι R) => Membership.mem.{max u1 u3, max u1 u3} (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.{u3, max u3 u1} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (SetLike.instMembership.{max u1 u3, max u1 u3} (Subalgebra.{u3, max u3 u1} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))))) x (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (Semiring.toNonAssocSemiring.{max u1 u3} (Subtype.{succ (max u1 u3)} (Matrix.{u1, u1, u3} ι ι R) (fun (x : Matrix.{u1, u1, u3} ι ι R) => Membership.mem.{max u1 u3, max u1 u3} (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.{u3, max u3 u1} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (SetLike.instMembership.{max u1 u3, max u1 u3} (Subalgebra.{u3, max u3 u1} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))))) x (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (Subalgebra.toSemiring.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))) (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))))))) (DistribMulAction.toDistribSMul.{u3, max u1 u3} R (Subtype.{succ (max u1 u3)} (Matrix.{u1, u1, u3} ι ι R) (fun (x : Matrix.{u1, u1, u3} ι ι R) => Membership.mem.{max u1 u3, max u1 u3} (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.{u3, max u3 u1} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (SetLike.instMembership.{max u1 u3, max u1 u3} (Subalgebra.{u3, max u3 u1} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))))) x (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (AddCommMonoid.toAddMonoid.{max u1 u3} (Subtype.{succ (max u1 u3)} (Matrix.{u1, u1, u3} ι ι R) (fun (x : Matrix.{u1, u1, u3} ι ι R) => Membership.mem.{max u1 u3, max u1 u3} (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.{u3, max u3 u1} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (SetLike.instMembership.{max u1 u3, max u1 u3} (Subalgebra.{u3, max u3 u1} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))))) x (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (NonUnitalNonAssocSemiring.toAddCommMonoid.{max u1 u3} (Subtype.{succ (max u1 u3)} (Matrix.{u1, u1, u3} ι ι R) (fun (x : Matrix.{u1, u1, u3} ι ι R) => Membership.mem.{max u1 u3, max u1 u3} (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.{u3, max u3 u1} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (SetLike.instMembership.{max u1 u3, max u1 u3} (Subalgebra.{u3, max u3 u1} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))))) x (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{max u1 u3} (Subtype.{succ (max u1 u3)} (Matrix.{u1, u1, u3} ι ι R) (fun (x : Matrix.{u1, u1, u3} ι ι R) => Membership.mem.{max u1 u3, max u1 u3} (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.{u3, max u3 u1} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (SetLike.instMembership.{max u1 u3, max u1 u3} (Subalgebra.{u3, max u3 u1} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))))) x (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (Semiring.toNonAssocSemiring.{max u1 u3} (Subtype.{succ (max u1 u3)} (Matrix.{u1, u1, u3} ι ι R) (fun (x : Matrix.{u1, u1, u3} ι ι R) => Membership.mem.{max u1 u3, max u1 u3} (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.{u3, max u3 u1} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (SetLike.instMembership.{max u1 u3, max u1 u3} (Subalgebra.{u3, max u3 u1} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))))) x (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (Subalgebra.toSemiring.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))) (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))))))) (Module.toDistribMulAction.{u3, max u1 u3} R (Subtype.{succ (max u1 u3)} (Matrix.{u1, u1, u3} ι ι R) (fun (x : Matrix.{u1, u1, u3} ι ι R) => Membership.mem.{max u1 u3, max u1 u3} (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.{u3, max u3 u1} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (SetLike.instMembership.{max u1 u3, max u1 u3} (Subalgebra.{u3, max u3 u1} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))))) x (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{max u1 u3} (Subtype.{succ (max u1 u3)} (Matrix.{u1, u1, u3} ι ι R) (fun (x : Matrix.{u1, u1, u3} ι ι R) => Membership.mem.{max u1 u3, max u1 u3} (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.{u3, max u3 u1} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (SetLike.instMembership.{max u1 u3, max u1 u3} (Subalgebra.{u3, max u3 u1} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))))) x (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{max u1 u3} (Subtype.{succ (max u1 u3)} (Matrix.{u1, u1, u3} ι ι R) (fun (x : Matrix.{u1, u1, u3} ι ι R) => Membership.mem.{max u1 u3, max u1 u3} (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.{u3, max u3 u1} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (SetLike.instMembership.{max u1 u3, max u1 u3} (Subalgebra.{u3, max u3 u1} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))))) x (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (Semiring.toNonAssocSemiring.{max u1 u3} (Subtype.{succ (max u1 u3)} (Matrix.{u1, u1, u3} ι ι R) (fun (x : Matrix.{u1, u1, u3} ι ι R) => Membership.mem.{max u1 u3, max u1 u3} (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.{u3, max u3 u1} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (SetLike.instMembership.{max u1 u3, max u1 u3} (Subalgebra.{u3, max u3 u1} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))))) x (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (Subalgebra.toSemiring.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))) (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))))) (Algebra.toModule.{u3, max u1 u3} R (Subtype.{succ (max u1 u3)} (Matrix.{u1, u1, u3} ι ι R) (fun (x : Matrix.{u1, u1, u3} ι ι R) => Membership.mem.{max u1 u3, max u1 u3} (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.{u3, max u3 u1} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (SetLike.instMembership.{max u1 u3, max u1 u3} (Subalgebra.{u3, max u3 u1} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))))) x (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (CommRing.toCommSemiring.{u3} R _inst_3) (Subalgebra.toSemiring.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))) (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))) (Subalgebra.algebra.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))) (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))))))) (SMulZeroClass.toSMul.{u3, u2} R (Module.End.{u3, u2} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (AddMonoid.toZero.{u2} (Module.End.{u3, u2} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (AddCommMonoid.toAddMonoid.{u2} (Module.End.{u3, u2} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} (Module.End.{u3, u2} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} (Module.End.{u3, u2} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (Semiring.toNonAssocSemiring.{u2} (Module.End.{u3, u2} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (Module.End.semiring.{u3, u2} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4)))))) (DistribSMul.toSMulZeroClass.{u3, u2} R (Module.End.{u3, u2} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (AddMonoid.toAddZeroClass.{u2} (Module.End.{u3, u2} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (AddCommMonoid.toAddMonoid.{u2} (Module.End.{u3, u2} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} (Module.End.{u3, u2} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} (Module.End.{u3, u2} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (Semiring.toNonAssocSemiring.{u2} (Module.End.{u3, u2} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (Module.End.semiring.{u3, u2} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4)))))) (DistribMulAction.toDistribSMul.{u3, u2} R (Module.End.{u3, u2} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (AddCommMonoid.toAddMonoid.{u2} (Module.End.{u3, u2} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} (Module.End.{u3, u2} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} (Module.End.{u3, u2} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (Semiring.toNonAssocSemiring.{u2} (Module.End.{u3, u2} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (Module.End.semiring.{u3, u2} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4))))) (Module.toDistribMulAction.{u3, u2} R (Module.End.{u3, u2} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} (Module.End.{u3, u2} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} (Module.End.{u3, u2} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (Semiring.toNonAssocSemiring.{u2} (Module.End.{u3, u2} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (Module.End.semiring.{u3, u2} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4)))) (Algebra.toModule.{u3, u2} R (Module.End.{u3, u2} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (CommRing.toCommSemiring.{u3} R _inst_3) (Module.End.semiring.{u3, u2} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (Module.instAlgebraEndToSemiringSemiring.{u3, u2} R M (CommRing.toCommSemiring.{u3} R _inst_3) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4)))))) (DistribMulActionHomClass.toSMulHomClass.{max (max u1 u2) u3, u3, max u1 u3, u2} (AlgHom.{u3, max u1 u3, u2} R (Subtype.{succ (max u1 u3)} (Matrix.{u1, u1, u3} ι ι R) (fun (x : Matrix.{u1, u1, u3} ι ι R) => Membership.mem.{max u1 u3, max u1 u3} (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.{u3, max u3 u1} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (SetLike.instMembership.{max u1 u3, max u1 u3} (Subalgebra.{u3, max u3 u1} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))))) x (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (Module.End.{u3, u2} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (CommRing.toCommSemiring.{u3} R _inst_3) (Subalgebra.toSemiring.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))) (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))) (Module.End.semiring.{u3, u2} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (Subalgebra.algebra.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))) (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))) (Module.instAlgebraEndToSemiringSemiring.{u3, u2} R M (CommRing.toCommSemiring.{u3} R _inst_3) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4)) R (Subtype.{succ (max u1 u3)} (Matrix.{u1, u1, u3} ι ι R) (fun (x : Matrix.{u1, u1, u3} ι ι R) => Membership.mem.{max u1 u3, max u1 u3} (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.{u3, max u3 u1} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (SetLike.instMembership.{max u1 u3, max u1 u3} (Subalgebra.{u3, max u3 u1} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))))) x (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (Module.End.{u3, u2} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (AddCommMonoid.toAddMonoid.{max u1 u3} (Subtype.{succ (max u1 u3)} (Matrix.{u1, u1, u3} ι ι R) (fun (x : Matrix.{u1, u1, u3} ι ι R) => Membership.mem.{max u1 u3, max u1 u3} (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.{u3, max u3 u1} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (SetLike.instMembership.{max u1 u3, max u1 u3} (Subalgebra.{u3, max u3 u1} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))))) x (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (NonUnitalNonAssocSemiring.toAddCommMonoid.{max u1 u3} (Subtype.{succ (max u1 u3)} (Matrix.{u1, u1, u3} ι ι R) (fun (x : Matrix.{u1, u1, u3} ι ι R) => Membership.mem.{max u1 u3, max u1 u3} (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.{u3, max u3 u1} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (SetLike.instMembership.{max u1 u3, max u1 u3} (Subalgebra.{u3, max u3 u1} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))))) x (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{max u1 u3} (Subtype.{succ (max u1 u3)} (Matrix.{u1, u1, u3} ι ι R) (fun (x : Matrix.{u1, u1, u3} ι ι R) => Membership.mem.{max u1 u3, max u1 u3} (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.{u3, max u3 u1} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (SetLike.instMembership.{max u1 u3, max u1 u3} (Subalgebra.{u3, max u3 u1} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))))) x (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (Semiring.toNonAssocSemiring.{max u1 u3} (Subtype.{succ (max u1 u3)} (Matrix.{u1, u1, u3} ι ι R) (fun (x : Matrix.{u1, u1, u3} ι ι R) => Membership.mem.{max u1 u3, max u1 u3} (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.{u3, max u3 u1} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (SetLike.instMembership.{max u1 u3, max u1 u3} (Subalgebra.{u3, max u3 u1} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))))) x (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (Subalgebra.toSemiring.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))) (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))))))) (AddCommMonoid.toAddMonoid.{u2} (Module.End.{u3, u2} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} (Module.End.{u3, u2} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} (Module.End.{u3, u2} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (Semiring.toNonAssocSemiring.{u2} (Module.End.{u3, u2} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (Module.End.semiring.{u3, u2} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4))))) (Module.toDistribMulAction.{u3, max u1 u3} R (Subtype.{succ (max u1 u3)} (Matrix.{u1, u1, u3} ι ι R) (fun (x : Matrix.{u1, u1, u3} ι ι R) => Membership.mem.{max u1 u3, max u1 u3} (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.{u3, max u3 u1} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (SetLike.instMembership.{max u1 u3, max u1 u3} (Subalgebra.{u3, max u3 u1} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))))) x (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{max u1 u3} (Subtype.{succ (max u1 u3)} (Matrix.{u1, u1, u3} ι ι R) (fun (x : Matrix.{u1, u1, u3} ι ι R) => Membership.mem.{max u1 u3, max u1 u3} (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.{u3, max u3 u1} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (SetLike.instMembership.{max u1 u3, max u1 u3} (Subalgebra.{u3, max u3 u1} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))))) x (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{max u1 u3} (Subtype.{succ (max u1 u3)} (Matrix.{u1, u1, u3} ι ι R) (fun (x : Matrix.{u1, u1, u3} ι ι R) => Membership.mem.{max u1 u3, max u1 u3} (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.{u3, max u3 u1} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (SetLike.instMembership.{max u1 u3, max u1 u3} (Subalgebra.{u3, max u3 u1} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))))) x (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (Semiring.toNonAssocSemiring.{max u1 u3} (Subtype.{succ (max u1 u3)} (Matrix.{u1, u1, u3} ι ι R) (fun (x : Matrix.{u1, u1, u3} ι ι R) => Membership.mem.{max u1 u3, max u1 u3} (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.{u3, max u3 u1} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (SetLike.instMembership.{max u1 u3, max u1 u3} (Subalgebra.{u3, max u3 u1} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))))) x (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (Subalgebra.toSemiring.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))) (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))))) (Algebra.toModule.{u3, max u1 u3} R (Subtype.{succ (max u1 u3)} (Matrix.{u1, u1, u3} ι ι R) (fun (x : Matrix.{u1, u1, u3} ι ι R) => Membership.mem.{max u1 u3, max u1 u3} (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.{u3, max u3 u1} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (SetLike.instMembership.{max u1 u3, max u1 u3} (Subalgebra.{u3, max u3 u1} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))))) x (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (CommRing.toCommSemiring.{u3} R _inst_3) (Subalgebra.toSemiring.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))) (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))) (Subalgebra.algebra.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))) (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))))) (Module.toDistribMulAction.{u3, u2} R (Module.End.{u3, u2} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} (Module.End.{u3, u2} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} (Module.End.{u3, u2} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (Semiring.toNonAssocSemiring.{u2} (Module.End.{u3, u2} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (Module.End.semiring.{u3, u2} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4)))) (Algebra.toModule.{u3, u2} R (Module.End.{u3, u2} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (CommRing.toCommSemiring.{u3} R _inst_3) (Module.End.semiring.{u3, u2} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (Module.instAlgebraEndToSemiringSemiring.{u3, u2} R M (CommRing.toCommSemiring.{u3} R _inst_3) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4))) (NonUnitalAlgHomClass.toDistribMulActionHomClass.{max (max u1 u2) u3, u3, max u1 u3, u2} (AlgHom.{u3, max u1 u3, u2} R (Subtype.{succ (max u1 u3)} (Matrix.{u1, u1, u3} ι ι R) (fun (x : Matrix.{u1, u1, u3} ι ι R) => Membership.mem.{max u1 u3, max u1 u3} (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.{u3, max u3 u1} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (SetLike.instMembership.{max u1 u3, max u1 u3} (Subalgebra.{u3, max u3 u1} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))))) x (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (Module.End.{u3, u2} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (CommRing.toCommSemiring.{u3} R _inst_3) (Subalgebra.toSemiring.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))) (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))) (Module.End.semiring.{u3, u2} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (Subalgebra.algebra.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))) (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))) (Module.instAlgebraEndToSemiringSemiring.{u3, u2} R M (CommRing.toCommSemiring.{u3} R _inst_3) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4)) R (Subtype.{succ (max u1 u3)} (Matrix.{u1, u1, u3} ι ι R) (fun (x : Matrix.{u1, u1, u3} ι ι R) => Membership.mem.{max u1 u3, max u1 u3} (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.{u3, max u3 u1} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (SetLike.instMembership.{max u1 u3, max u1 u3} (Subalgebra.{u3, max u3 u1} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))))) x (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (Module.End.{u3, u2} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{max u1 u3} (Subtype.{succ (max u1 u3)} (Matrix.{u1, u1, u3} ι ι R) (fun (x : Matrix.{u1, u1, u3} ι ι R) => Membership.mem.{max u1 u3, max u1 u3} (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.{u3, max u3 u1} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (SetLike.instMembership.{max u1 u3, max u1 u3} (Subalgebra.{u3, max u3 u1} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))))) x (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (Semiring.toNonAssocSemiring.{max u1 u3} (Subtype.{succ (max u1 u3)} (Matrix.{u1, u1, u3} ι ι R) (fun (x : Matrix.{u1, u1, u3} ι ι R) => Membership.mem.{max u1 u3, max u1 u3} (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.{u3, max u3 u1} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (SetLike.instMembership.{max u1 u3, max u1 u3} (Subalgebra.{u3, max u3 u1} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))))) x (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (Subalgebra.toSemiring.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))) (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))))) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} (Module.End.{u3, u2} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (Semiring.toNonAssocSemiring.{u2} (Module.End.{u3, u2} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (Module.End.semiring.{u3, u2} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4))) (Module.toDistribMulAction.{u3, max u1 u3} R (Subtype.{succ (max u1 u3)} (Matrix.{u1, u1, u3} ι ι R) (fun (x : Matrix.{u1, u1, u3} ι ι R) => Membership.mem.{max u1 u3, max u1 u3} (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.{u3, max u3 u1} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (SetLike.instMembership.{max u1 u3, max u1 u3} (Subalgebra.{u3, max u3 u1} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))))) x (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{max u1 u3} (Subtype.{succ (max u1 u3)} (Matrix.{u1, u1, u3} ι ι R) (fun (x : Matrix.{u1, u1, u3} ι ι R) => Membership.mem.{max u1 u3, max u1 u3} (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.{u3, max u3 u1} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (SetLike.instMembership.{max u1 u3, max u1 u3} (Subalgebra.{u3, max u3 u1} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))))) x (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{max u1 u3} (Subtype.{succ (max u1 u3)} (Matrix.{u1, u1, u3} ι ι R) (fun (x : Matrix.{u1, u1, u3} ι ι R) => Membership.mem.{max u1 u3, max u1 u3} (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.{u3, max u3 u1} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (SetLike.instMembership.{max u1 u3, max u1 u3} (Subalgebra.{u3, max u3 u1} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))))) x (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (Semiring.toNonAssocSemiring.{max u1 u3} (Subtype.{succ (max u1 u3)} (Matrix.{u1, u1, u3} ι ι R) (fun (x : Matrix.{u1, u1, u3} ι ι R) => Membership.mem.{max u1 u3, max u1 u3} (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.{u3, max u3 u1} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (SetLike.instMembership.{max u1 u3, max u1 u3} (Subalgebra.{u3, max u3 u1} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))))) x (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (Subalgebra.toSemiring.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))) (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))))) (Algebra.toModule.{u3, max u1 u3} R (Subtype.{succ (max u1 u3)} (Matrix.{u1, u1, u3} ι ι R) (fun (x : Matrix.{u1, u1, u3} ι ι R) => Membership.mem.{max u1 u3, max u1 u3} (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.{u3, max u3 u1} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (SetLike.instMembership.{max u1 u3, max u1 u3} (Subalgebra.{u3, max u3 u1} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))))) x (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (CommRing.toCommSemiring.{u3} R _inst_3) (Subalgebra.toSemiring.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))) (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))) (Subalgebra.algebra.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))) (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))))) (Module.toDistribMulAction.{u3, u2} R (Module.End.{u3, u2} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} (Module.End.{u3, u2} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} (Module.End.{u3, u2} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (Semiring.toNonAssocSemiring.{u2} (Module.End.{u3, u2} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (Module.End.semiring.{u3, u2} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4)))) (Algebra.toModule.{u3, u2} R (Module.End.{u3, u2} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (CommRing.toCommSemiring.{u3} R _inst_3) (Module.End.semiring.{u3, u2} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (Module.instAlgebraEndToSemiringSemiring.{u3, u2} R M (CommRing.toCommSemiring.{u3} R _inst_3) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4))) (AlgHom.instNonUnitalAlgHomClassToMonoidToMonoidWithZeroToSemiringToNonUnitalNonAssocSemiringToNonAssocSemiringToNonUnitalNonAssocSemiringToNonAssocSemiringToDistribMulActionToAddCommMonoidToModuleToDistribMulActionToAddCommMonoidToModule.{u3, max u1 u3, u2, max (max u1 u2) u3} R (Subtype.{succ (max u1 u3)} (Matrix.{u1, u1, u3} ι ι R) (fun (x : Matrix.{u1, u1, u3} ι ι R) => Membership.mem.{max u1 u3, max u1 u3} (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.{u3, max u3 u1} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (SetLike.instMembership.{max u1 u3, max u1 u3} (Subalgebra.{u3, max u3 u1} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))))) x (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (Module.End.{u3, u2} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (CommRing.toCommSemiring.{u3} R _inst_3) (Subalgebra.toSemiring.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))) (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))) (Module.End.semiring.{u3, u2} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (Subalgebra.algebra.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))) (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))) (Module.instAlgebraEndToSemiringSemiring.{u3, u2} R M (CommRing.toCommSemiring.{u3} R _inst_3) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (AlgHom.{u3, max u1 u3, u2} R (Subtype.{succ (max u1 u3)} (Matrix.{u1, u1, u3} ι ι R) (fun (x : Matrix.{u1, u1, u3} ι ι R) => Membership.mem.{max u1 u3, max u1 u3} (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.{u3, max u3 u1} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (SetLike.instMembership.{max u1 u3, max u1 u3} (Subalgebra.{u3, max u3 u1} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))))) x (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (Module.End.{u3, u2} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (CommRing.toCommSemiring.{u3} R _inst_3) (Subalgebra.toSemiring.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))) (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))) (Module.End.semiring.{u3, u2} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (Subalgebra.algebra.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))) (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))) (Module.instAlgebraEndToSemiringSemiring.{u3, u2} R M (CommRing.toCommSemiring.{u3} R _inst_3) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4)) (AlgHom.algHomClass.{u3, max u1 u3, u2} R (Subtype.{succ (max u1 u3)} (Matrix.{u1, u1, u3} ι ι R) (fun (x : Matrix.{u1, u1, u3} ι ι R) => Membership.mem.{max u1 u3, max u1 u3} (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.{u3, max u3 u1} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (SetLike.instMembership.{max u1 u3, max u1 u3} (Subalgebra.{u3, max u3 u1} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))))) x (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (Module.End.{u3, u2} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (CommRing.toCommSemiring.{u3} R _inst_3) (Subalgebra.toSemiring.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))) (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))) (Module.End.semiring.{u3, u2} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (Subalgebra.algebra.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))) (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))) (Module.instAlgebraEndToSemiringSemiring.{u3, u2} R M (CommRing.toCommSemiring.{u3} R _inst_3) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4)))))) (Matrix.isRepresentation.toEnd.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b hb (fun (a : ι) (b : ι) => _inst_5 a b)) M_1) f) (forall (i : ι) (j : ι), Membership.mem.{u3, u3} R (Ideal.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))) (SetLike.instMembership.{u3, u3} (Ideal.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))) R (Submodule.setLike.{u3, u3} R R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))))) (Semiring.toModule.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))))) (Subtype.val.{max (succ u1) (succ u3)} (Matrix.{u1, u1, u3} ι ι R) (fun (x : Matrix.{u1, u1, u3} ι ι R) => Membership.mem.{max u1 u3, max u1 u3} (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.{u3, max u3 u1} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (SetLike.instMembership.{max u1 u3, max u1 u3} (Subalgebra.{u3, max u3 u1} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))))) x (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))) M_1 i j) I)))
Case conversion may be inaccurate. Consider using '#align matrix.is_representation.to_End_exists_mem_ideal Matrix.isRepresentation.toEnd_exists_mem_idealₓ'. -/
theorem Matrix.isRepresentation.toEnd_exists_mem_ideal (f : Module.End R M) (I : Ideal R)
(hI : f.range ≤ I • ⊤) : ∃ M, Matrix.isRepresentation.toEnd R b hb M = f ∧ ∀ i j, M.1 i j ∈ I :=
@@ -344,7 +344,7 @@ theorem Matrix.isRepresentation.toEnd_exists_mem_ideal (f : Module.End R M) (I :
lean 3 declaration is
forall {ι : Type.{u1}} [_inst_1 : Fintype.{u1} ι] {M : Type.{u2}} [_inst_2 : AddCommGroup.{u2} M] (R : Type.{u3}) [_inst_3 : CommRing.{u3} R] [_inst_4 : Module.{u3, u2} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2)] (b : ι -> M) (hb : Eq.{succ u2} (Submodule.{u3, u2} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (Submodule.span.{u3, u2} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4 (Set.range.{u2, succ u1} M ι b)) (Top.top.{u2} (Submodule.{u3, u2} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (Submodule.hasTop.{u3, u2} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4))) [_inst_5 : DecidableEq.{succ u1} ι], Function.Surjective.{succ (max u1 u3), succ u2} (coeSort.{succ (max u1 u3), succ (succ (max u1 u3))} (Subalgebra.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b) a b)) (Matrix.algebra.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b) a b) (CommRing.toCommSemiring.{u3} R _inst_3) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) Type.{max u1 u3} (SetLike.hasCoeToSort.{max u1 u3, max u1 u3} (Subalgebra.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b) a b)) (Matrix.algebra.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b) a b) (CommRing.toCommSemiring.{u3} R _inst_3) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.setLike.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b) a b)) (Matrix.algebra.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b) a b) (CommRing.toCommSemiring.{u3} R _inst_3) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))))) (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b))) (Module.End.{u3, u2} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (coeFn.{max (succ (max u1 u3)) (succ u2), max (succ (max u1 u3)) (succ u2)} (AlgHom.{u3, max u1 u3, u2} R (coeSort.{succ (max u1 u3), succ (succ (max u1 u3))} (Subalgebra.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b) a b)) (Matrix.algebra.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b) a b) (CommRing.toCommSemiring.{u3} R _inst_3) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) Type.{max u1 u3} (SetLike.hasCoeToSort.{max u1 u3, max u1 u3} (Subalgebra.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b) a b)) (Matrix.algebra.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b) a b) (CommRing.toCommSemiring.{u3} R _inst_3) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.setLike.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b) a b)) (Matrix.algebra.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b) a b) (CommRing.toCommSemiring.{u3} R _inst_3) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))))) (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b))) (Module.End.{u3, u2} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (CommRing.toCommSemiring.{u3} R _inst_3) (Subalgebra.toSemiring.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b) a b)) (Matrix.algebra.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b) a b) (CommRing.toCommSemiring.{u3} R _inst_3) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))) (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b))) (Module.End.semiring.{u3, u2} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (Subalgebra.algebra.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b) a b)) (Matrix.algebra.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b) a b) (CommRing.toCommSemiring.{u3} R _inst_3) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))) (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b))) (Module.End.algebra.{u3, u2} R M (CommRing.toCommSemiring.{u3} R _inst_3) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4)) (fun (_x : AlgHom.{u3, max u1 u3, u2} R (coeSort.{succ (max u1 u3), succ (succ (max u1 u3))} (Subalgebra.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b) a b)) (Matrix.algebra.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b) a b) (CommRing.toCommSemiring.{u3} R _inst_3) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) Type.{max u1 u3} (SetLike.hasCoeToSort.{max u1 u3, max u1 u3} (Subalgebra.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b) a b)) (Matrix.algebra.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b) a b) (CommRing.toCommSemiring.{u3} R _inst_3) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.setLike.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b) a b)) (Matrix.algebra.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b) a b) (CommRing.toCommSemiring.{u3} R _inst_3) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))))) (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b))) (Module.End.{u3, u2} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (CommRing.toCommSemiring.{u3} R _inst_3) (Subalgebra.toSemiring.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b) a b)) (Matrix.algebra.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b) a b) (CommRing.toCommSemiring.{u3} R _inst_3) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))) (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b))) (Module.End.semiring.{u3, u2} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (Subalgebra.algebra.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b) a b)) (Matrix.algebra.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b) a b) (CommRing.toCommSemiring.{u3} R _inst_3) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))) (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b))) (Module.End.algebra.{u3, u2} R M (CommRing.toCommSemiring.{u3} R _inst_3) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4)) => (coeSort.{succ (max u1 u3), succ (succ (max u1 u3))} (Subalgebra.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b) a b)) (Matrix.algebra.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b) a b) (CommRing.toCommSemiring.{u3} R _inst_3) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) Type.{max u1 u3} (SetLike.hasCoeToSort.{max u1 u3, max u1 u3} (Subalgebra.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b) a b)) (Matrix.algebra.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b) a b) (CommRing.toCommSemiring.{u3} R _inst_3) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.setLike.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b) a b)) (Matrix.algebra.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b) a b) (CommRing.toCommSemiring.{u3} R _inst_3) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))))) (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b))) -> (Module.End.{u3, u2} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4)) ([anonymous].{u3, max u1 u3, u2} R (coeSort.{succ (max u1 u3), succ (succ (max u1 u3))} (Subalgebra.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b) a b)) (Matrix.algebra.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b) a b) (CommRing.toCommSemiring.{u3} R _inst_3) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) Type.{max u1 u3} (SetLike.hasCoeToSort.{max u1 u3, max u1 u3} (Subalgebra.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b) a b)) (Matrix.algebra.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b) a b) (CommRing.toCommSemiring.{u3} R _inst_3) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.setLike.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b) a b)) (Matrix.algebra.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b) a b) (CommRing.toCommSemiring.{u3} R _inst_3) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))))) (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b))) (Module.End.{u3, u2} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (CommRing.toCommSemiring.{u3} R _inst_3) (Subalgebra.toSemiring.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b) a b)) (Matrix.algebra.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b) a b) (CommRing.toCommSemiring.{u3} R _inst_3) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))) (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b))) (Module.End.semiring.{u3, u2} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (Subalgebra.algebra.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b) a b)) (Matrix.algebra.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b) a b) (CommRing.toCommSemiring.{u3} R _inst_3) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))) (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b))) (Module.End.algebra.{u3, u2} R M (CommRing.toCommSemiring.{u3} R _inst_3) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4)) (Matrix.isRepresentation.toEnd.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b hb (fun (a : ι) (b : ι) => _inst_5 a b)))
but is expected to have type
- forall {ι : Type.{u3}} [_inst_1 : Fintype.{u3} ι] {M : Type.{u1}} [_inst_2 : AddCommGroup.{u1} M] (R : Type.{u2}) [_inst_3 : CommRing.{u2} R] [_inst_4 : Module.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2)] (b : ι -> M) (hb : Eq.{succ u1} (Submodule.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (Submodule.span.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4 (Set.range.{u1, succ u3} M ι b)) (Top.top.{u1} (Submodule.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (Submodule.instTopSubmodule.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4))) [_inst_5 : DecidableEq.{succ u3} ι], Function.Surjective.{max (succ u3) (succ u2), succ u1} (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (FunLike.coe.{max (max (succ u3) (succ u1)) (succ u2), max (succ u3) (succ u2), succ u1} (AlgHom.{u2, max u3 u2, u1} R (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (CommRing.toCommSemiring.{u2} R _inst_3) (Subalgebra.toSemiring.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))) (Module.End.semiring.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (Subalgebra.algebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))) (Module.instAlgebraEndToSemiringSemiring.{u2, u1} R M (CommRing.toCommSemiring.{u2} R _inst_3) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4)) (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (fun (_x : Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) => Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) _x) (SMulHomClass.toFunLike.{max (max u3 u1) u2, u2, max u3 u2, u1} (AlgHom.{u2, max u3 u2, u1} R (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (CommRing.toCommSemiring.{u2} R _inst_3) (Subalgebra.toSemiring.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))) (Module.End.semiring.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (Subalgebra.algebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))) (Module.instAlgebraEndToSemiringSemiring.{u2, u1} R M (CommRing.toCommSemiring.{u2} R _inst_3) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4)) R (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (SMulZeroClass.toSMul.{u2, max u3 u2} R (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (AddMonoid.toZero.{max u3 u2} (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (AddCommMonoid.toAddMonoid.{max u3 u2} (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (NonUnitalNonAssocSemiring.toAddCommMonoid.{max u3 u2} (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{max u3 u2} (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (Semiring.toNonAssocSemiring.{max u3 u2} (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (Subalgebra.toSemiring.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))))))) (DistribSMul.toSMulZeroClass.{u2, max u3 u2} R (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (AddMonoid.toAddZeroClass.{max u3 u2} (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (AddCommMonoid.toAddMonoid.{max u3 u2} (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (NonUnitalNonAssocSemiring.toAddCommMonoid.{max u3 u2} (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{max u3 u2} (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (Semiring.toNonAssocSemiring.{max u3 u2} (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (Subalgebra.toSemiring.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))))))) (DistribMulAction.toDistribSMul.{u2, max u3 u2} R (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (AddCommMonoid.toAddMonoid.{max u3 u2} (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (NonUnitalNonAssocSemiring.toAddCommMonoid.{max u3 u2} (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{max u3 u2} (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (Semiring.toNonAssocSemiring.{max u3 u2} (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (Subalgebra.toSemiring.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))))))) (Module.toDistribMulAction.{u2, max u3 u2} R (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{max u3 u2} (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{max u3 u2} (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (Semiring.toNonAssocSemiring.{max u3 u2} (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (Subalgebra.toSemiring.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))))) (Algebra.toModule.{u2, max u3 u2} R (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (CommRing.toCommSemiring.{u2} R _inst_3) (Subalgebra.toSemiring.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))) (Subalgebra.algebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))))))) (SMulZeroClass.toSMul.{u2, u1} R (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (AddMonoid.toZero.{u1} (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (AddCommMonoid.toAddMonoid.{u1} (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (Semiring.toNonAssocSemiring.{u1} (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (Module.End.semiring.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4)))))) (DistribSMul.toSMulZeroClass.{u2, u1} R (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (AddMonoid.toAddZeroClass.{u1} (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (AddCommMonoid.toAddMonoid.{u1} (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (Semiring.toNonAssocSemiring.{u1} (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (Module.End.semiring.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4)))))) (DistribMulAction.toDistribSMul.{u2, u1} R (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (AddCommMonoid.toAddMonoid.{u1} (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (Semiring.toNonAssocSemiring.{u1} (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (Module.End.semiring.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4))))) (Module.toDistribMulAction.{u2, u1} R (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (Semiring.toNonAssocSemiring.{u1} (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (Module.End.semiring.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4)))) (Algebra.toModule.{u2, u1} R (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (CommRing.toCommSemiring.{u2} R _inst_3) (Module.End.semiring.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (Module.instAlgebraEndToSemiringSemiring.{u2, u1} R M (CommRing.toCommSemiring.{u2} R _inst_3) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4)))))) (DistribMulActionHomClass.toSMulHomClass.{max (max u3 u1) u2, u2, max u3 u2, u1} (AlgHom.{u2, max u3 u2, u1} R (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (CommRing.toCommSemiring.{u2} R _inst_3) (Subalgebra.toSemiring.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))) (Module.End.semiring.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (Subalgebra.algebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))) (Module.instAlgebraEndToSemiringSemiring.{u2, u1} R M (CommRing.toCommSemiring.{u2} R _inst_3) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4)) R (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (AddCommMonoid.toAddMonoid.{max u3 u2} (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (NonUnitalNonAssocSemiring.toAddCommMonoid.{max u3 u2} (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{max u3 u2} (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (Semiring.toNonAssocSemiring.{max u3 u2} (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (Subalgebra.toSemiring.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))))))) (AddCommMonoid.toAddMonoid.{u1} (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (Semiring.toNonAssocSemiring.{u1} (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (Module.End.semiring.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4))))) (Module.toDistribMulAction.{u2, max u3 u2} R (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{max u3 u2} (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{max u3 u2} (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (Semiring.toNonAssocSemiring.{max u3 u2} (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (Subalgebra.toSemiring.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))))) (Algebra.toModule.{u2, max u3 u2} R (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (CommRing.toCommSemiring.{u2} R _inst_3) (Subalgebra.toSemiring.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))) (Subalgebra.algebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))))) (Module.toDistribMulAction.{u2, u1} R (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (Semiring.toNonAssocSemiring.{u1} (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (Module.End.semiring.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4)))) (Algebra.toModule.{u2, u1} R (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (CommRing.toCommSemiring.{u2} R _inst_3) (Module.End.semiring.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (Module.instAlgebraEndToSemiringSemiring.{u2, u1} R M (CommRing.toCommSemiring.{u2} R _inst_3) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4))) (NonUnitalAlgHomClass.toDistribMulActionHomClass.{max (max u3 u1) u2, u2, max u3 u2, u1} (AlgHom.{u2, max u3 u2, u1} R (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (CommRing.toCommSemiring.{u2} R _inst_3) (Subalgebra.toSemiring.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))) (Module.End.semiring.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (Subalgebra.algebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))) (Module.instAlgebraEndToSemiringSemiring.{u2, u1} R M (CommRing.toCommSemiring.{u2} R _inst_3) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4)) R (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{max u3 u2} (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (Semiring.toNonAssocSemiring.{max u3 u2} (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (Subalgebra.toSemiring.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))))) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (Semiring.toNonAssocSemiring.{u1} (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (Module.End.semiring.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4))) (Module.toDistribMulAction.{u2, max u3 u2} R (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{max u3 u2} (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{max u3 u2} (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (Semiring.toNonAssocSemiring.{max u3 u2} (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (Subalgebra.toSemiring.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))))) (Algebra.toModule.{u2, max u3 u2} R (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (CommRing.toCommSemiring.{u2} R _inst_3) (Subalgebra.toSemiring.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))) (Subalgebra.algebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))))) (Module.toDistribMulAction.{u2, u1} R (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (Semiring.toNonAssocSemiring.{u1} (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (Module.End.semiring.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4)))) (Algebra.toModule.{u2, u1} R (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (CommRing.toCommSemiring.{u2} R _inst_3) (Module.End.semiring.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (Module.instAlgebraEndToSemiringSemiring.{u2, u1} R M (CommRing.toCommSemiring.{u2} R _inst_3) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4))) (AlgHom.instNonUnitalAlgHomClassToMonoidToMonoidWithZeroToSemiringToNonUnitalNonAssocSemiringToNonAssocSemiringToNonUnitalNonAssocSemiringToNonAssocSemiringToDistribMulActionToAddCommMonoidToModuleToDistribMulActionToAddCommMonoidToModule.{u2, max u3 u2, u1, max (max u3 u1) u2} R (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (CommRing.toCommSemiring.{u2} R _inst_3) (Subalgebra.toSemiring.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))) (Module.End.semiring.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (Subalgebra.algebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))) (Module.instAlgebraEndToSemiringSemiring.{u2, u1} R M (CommRing.toCommSemiring.{u2} R _inst_3) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (AlgHom.{u2, max u3 u2, u1} R (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (CommRing.toCommSemiring.{u2} R _inst_3) (Subalgebra.toSemiring.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))) (Module.End.semiring.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (Subalgebra.algebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))) (Module.instAlgebraEndToSemiringSemiring.{u2, u1} R M (CommRing.toCommSemiring.{u2} R _inst_3) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4)) (AlgHom.algHomClass.{u2, max u3 u2, u1} R (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (CommRing.toCommSemiring.{u2} R _inst_3) (Subalgebra.toSemiring.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))) (Module.End.semiring.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (Subalgebra.algebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))) (Module.instAlgebraEndToSemiringSemiring.{u2, u1} R M (CommRing.toCommSemiring.{u2} R _inst_3) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4)))))) (Matrix.isRepresentation.toEnd.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b hb (fun (a : ι) (b : ι) => _inst_5 a b)))
+ forall {ι : Type.{u3}} [_inst_1 : Fintype.{u3} ι] {M : Type.{u1}} [_inst_2 : AddCommGroup.{u1} M] (R : Type.{u2}) [_inst_3 : CommRing.{u2} R] [_inst_4 : Module.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2)] (b : ι -> M) (hb : Eq.{succ u1} (Submodule.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (Submodule.span.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4 (Set.range.{u1, succ u3} M ι b)) (Top.top.{u1} (Submodule.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (Submodule.instTopSubmodule.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4))) [_inst_5 : DecidableEq.{succ u3} ι], Function.Surjective.{max (succ u3) (succ u2), succ u1} (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (FunLike.coe.{max (max (succ u3) (succ u1)) (succ u2), max (succ u3) (succ u2), succ u1} (AlgHom.{u2, max u3 u2, u1} R (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (CommRing.toCommSemiring.{u2} R _inst_3) (Subalgebra.toSemiring.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))) (Module.End.semiring.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (Subalgebra.algebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))) (Module.instAlgebraEndToSemiringSemiring.{u2, u1} R M (CommRing.toCommSemiring.{u2} R _inst_3) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4)) (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (fun (_x : Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2187 : Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) => Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) _x) (SMulHomClass.toFunLike.{max (max u3 u1) u2, u2, max u3 u2, u1} (AlgHom.{u2, max u3 u2, u1} R (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (CommRing.toCommSemiring.{u2} R _inst_3) (Subalgebra.toSemiring.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))) (Module.End.semiring.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (Subalgebra.algebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))) (Module.instAlgebraEndToSemiringSemiring.{u2, u1} R M (CommRing.toCommSemiring.{u2} R _inst_3) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4)) R (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (SMulZeroClass.toSMul.{u2, max u3 u2} R (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (AddMonoid.toZero.{max u3 u2} (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (AddCommMonoid.toAddMonoid.{max u3 u2} (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (NonUnitalNonAssocSemiring.toAddCommMonoid.{max u3 u2} (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{max u3 u2} (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (Semiring.toNonAssocSemiring.{max u3 u2} (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (Subalgebra.toSemiring.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))))))) (DistribSMul.toSMulZeroClass.{u2, max u3 u2} R (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (AddMonoid.toAddZeroClass.{max u3 u2} (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (AddCommMonoid.toAddMonoid.{max u3 u2} (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (NonUnitalNonAssocSemiring.toAddCommMonoid.{max u3 u2} (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{max u3 u2} (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (Semiring.toNonAssocSemiring.{max u3 u2} (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (Subalgebra.toSemiring.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))))))) (DistribMulAction.toDistribSMul.{u2, max u3 u2} R (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (AddCommMonoid.toAddMonoid.{max u3 u2} (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (NonUnitalNonAssocSemiring.toAddCommMonoid.{max u3 u2} (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{max u3 u2} (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (Semiring.toNonAssocSemiring.{max u3 u2} (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (Subalgebra.toSemiring.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))))))) (Module.toDistribMulAction.{u2, max u3 u2} R (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{max u3 u2} (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{max u3 u2} (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (Semiring.toNonAssocSemiring.{max u3 u2} (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (Subalgebra.toSemiring.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))))) (Algebra.toModule.{u2, max u3 u2} R (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (CommRing.toCommSemiring.{u2} R _inst_3) (Subalgebra.toSemiring.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))) (Subalgebra.algebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))))))) (SMulZeroClass.toSMul.{u2, u1} R (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (AddMonoid.toZero.{u1} (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (AddCommMonoid.toAddMonoid.{u1} (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (Semiring.toNonAssocSemiring.{u1} (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (Module.End.semiring.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4)))))) (DistribSMul.toSMulZeroClass.{u2, u1} R (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (AddMonoid.toAddZeroClass.{u1} (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (AddCommMonoid.toAddMonoid.{u1} (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (Semiring.toNonAssocSemiring.{u1} (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (Module.End.semiring.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4)))))) (DistribMulAction.toDistribSMul.{u2, u1} R (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (AddCommMonoid.toAddMonoid.{u1} (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (Semiring.toNonAssocSemiring.{u1} (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (Module.End.semiring.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4))))) (Module.toDistribMulAction.{u2, u1} R (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (Semiring.toNonAssocSemiring.{u1} (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (Module.End.semiring.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4)))) (Algebra.toModule.{u2, u1} R (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (CommRing.toCommSemiring.{u2} R _inst_3) (Module.End.semiring.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (Module.instAlgebraEndToSemiringSemiring.{u2, u1} R M (CommRing.toCommSemiring.{u2} R _inst_3) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4)))))) (DistribMulActionHomClass.toSMulHomClass.{max (max u3 u1) u2, u2, max u3 u2, u1} (AlgHom.{u2, max u3 u2, u1} R (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (CommRing.toCommSemiring.{u2} R _inst_3) (Subalgebra.toSemiring.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))) (Module.End.semiring.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (Subalgebra.algebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))) (Module.instAlgebraEndToSemiringSemiring.{u2, u1} R M (CommRing.toCommSemiring.{u2} R _inst_3) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4)) R (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (AddCommMonoid.toAddMonoid.{max u3 u2} (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (NonUnitalNonAssocSemiring.toAddCommMonoid.{max u3 u2} (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{max u3 u2} (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (Semiring.toNonAssocSemiring.{max u3 u2} (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (Subalgebra.toSemiring.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))))))) (AddCommMonoid.toAddMonoid.{u1} (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (Semiring.toNonAssocSemiring.{u1} (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (Module.End.semiring.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4))))) (Module.toDistribMulAction.{u2, max u3 u2} R (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{max u3 u2} (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{max u3 u2} (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (Semiring.toNonAssocSemiring.{max u3 u2} (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (Subalgebra.toSemiring.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))))) (Algebra.toModule.{u2, max u3 u2} R (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (CommRing.toCommSemiring.{u2} R _inst_3) (Subalgebra.toSemiring.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))) (Subalgebra.algebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))))) (Module.toDistribMulAction.{u2, u1} R (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (Semiring.toNonAssocSemiring.{u1} (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (Module.End.semiring.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4)))) (Algebra.toModule.{u2, u1} R (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (CommRing.toCommSemiring.{u2} R _inst_3) (Module.End.semiring.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (Module.instAlgebraEndToSemiringSemiring.{u2, u1} R M (CommRing.toCommSemiring.{u2} R _inst_3) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4))) (NonUnitalAlgHomClass.toDistribMulActionHomClass.{max (max u3 u1) u2, u2, max u3 u2, u1} (AlgHom.{u2, max u3 u2, u1} R (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (CommRing.toCommSemiring.{u2} R _inst_3) (Subalgebra.toSemiring.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))) (Module.End.semiring.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (Subalgebra.algebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))) (Module.instAlgebraEndToSemiringSemiring.{u2, u1} R M (CommRing.toCommSemiring.{u2} R _inst_3) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4)) R (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{max u3 u2} (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (Semiring.toNonAssocSemiring.{max u3 u2} (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (Subalgebra.toSemiring.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))))) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (Semiring.toNonAssocSemiring.{u1} (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (Module.End.semiring.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4))) (Module.toDistribMulAction.{u2, max u3 u2} R (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{max u3 u2} (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{max u3 u2} (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (Semiring.toNonAssocSemiring.{max u3 u2} (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (Subalgebra.toSemiring.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))))) (Algebra.toModule.{u2, max u3 u2} R (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (CommRing.toCommSemiring.{u2} R _inst_3) (Subalgebra.toSemiring.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))) (Subalgebra.algebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))))) (Module.toDistribMulAction.{u2, u1} R (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (Semiring.toNonAssocSemiring.{u1} (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (Module.End.semiring.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4)))) (Algebra.toModule.{u2, u1} R (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (CommRing.toCommSemiring.{u2} R _inst_3) (Module.End.semiring.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (Module.instAlgebraEndToSemiringSemiring.{u2, u1} R M (CommRing.toCommSemiring.{u2} R _inst_3) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4))) (AlgHom.instNonUnitalAlgHomClassToMonoidToMonoidWithZeroToSemiringToNonUnitalNonAssocSemiringToNonAssocSemiringToNonUnitalNonAssocSemiringToNonAssocSemiringToDistribMulActionToAddCommMonoidToModuleToDistribMulActionToAddCommMonoidToModule.{u2, max u3 u2, u1, max (max u3 u1) u2} R (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (CommRing.toCommSemiring.{u2} R _inst_3) (Subalgebra.toSemiring.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))) (Module.End.semiring.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (Subalgebra.algebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))) (Module.instAlgebraEndToSemiringSemiring.{u2, u1} R M (CommRing.toCommSemiring.{u2} R _inst_3) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (AlgHom.{u2, max u3 u2, u1} R (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (CommRing.toCommSemiring.{u2} R _inst_3) (Subalgebra.toSemiring.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))) (Module.End.semiring.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (Subalgebra.algebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))) (Module.instAlgebraEndToSemiringSemiring.{u2, u1} R M (CommRing.toCommSemiring.{u2} R _inst_3) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4)) (AlgHom.algHomClass.{u2, max u3 u2, u1} R (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (CommRing.toCommSemiring.{u2} R _inst_3) (Subalgebra.toSemiring.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))) (Module.End.semiring.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (Subalgebra.algebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))) (Module.instAlgebraEndToSemiringSemiring.{u2, u1} R M (CommRing.toCommSemiring.{u2} R _inst_3) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4)))))) (Matrix.isRepresentation.toEnd.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b hb (fun (a : ι) (b : ι) => _inst_5 a b)))
Case conversion may be inaccurate. Consider using '#align matrix.is_representation.to_End_surjective Matrix.isRepresentation.toEnd_surjectiveₓ'. -/
theorem Matrix.isRepresentation.toEnd_surjective :
Function.Surjective (Matrix.isRepresentation.toEnd R b hb) :=
@@ -361,7 +361,7 @@ end
lean 3 declaration is
forall {M : Type.{u1}} [_inst_2 : AddCommGroup.{u1} M] (R : Type.{u2}) [_inst_3 : CommRing.{u2} R] [_inst_4 : Module.{u2, u1} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2)] [_inst_5 : Module.Finite.{u2, u1} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4] (f : Module.End.{u2, u1} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (I : Ideal.{u2} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_3))), (LE.le.{u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (Preorder.toHasLe.{u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (PartialOrder.toPreorder.{u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (SetLike.partialOrder.{u1, u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) M (Submodule.setLike.{u2, u1} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4)))) (LinearMap.range.{u2, u2, u1, u1, u1} R R M M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_3)) (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4 _inst_4 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_3)))) (Module.End.{u2, u1} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (LinearMap.semilinearMapClass.{u2, u2, u1, u1} R R M M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_3)) (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4 _inst_4 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_3))))) (RingHomSurjective.ids.{u2} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_3))) f) (SMul.smul.{u2, u1} (Ideal.{u2} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_3))) (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (Submodule.hasSMul'.{u2, u1} R M (CommRing.toCommSemiring.{u2} R _inst_3) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) I (Top.top.{u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (Submodule.hasTop.{u2, u1} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4)))) -> (Exists.{succ u2} (Polynomial.{u2} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_3))) (fun (p : Polynomial.{u2} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_3))) => And (Polynomial.Monic.{u2} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_3)) p) (And (forall (k : Nat), Membership.Mem.{u2, u2} R (Ideal.{u2} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_3))) (SetLike.hasMem.{u2, u2} (Ideal.{u2} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_3))) R (Submodule.setLike.{u2, u2} R R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_3)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_3))))) (Semiring.toModule.{u2} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_3))))) (Polynomial.coeff.{u2} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_3)) p k) (HPow.hPow.{u2, 0, u2} (Ideal.{u2} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_3))) Nat (Ideal.{u2} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_3))) (instHPow.{u2, 0} (Ideal.{u2} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_3))) Nat (Monoid.Pow.{u2} (Ideal.{u2} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_3))) (MonoidWithZero.toMonoid.{u2} (Ideal.{u2} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_3))) (Semiring.toMonoidWithZero.{u2} (Ideal.{u2} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_3))) (IdemSemiring.toSemiring.{u2} (Ideal.{u2} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_3))) (Submodule.idemSemiring.{u2, u2} R (CommRing.toCommSemiring.{u2} R _inst_3) R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))))))) I (HSub.hSub.{0, 0, 0} Nat Nat Nat (instHSub.{0} Nat Nat.hasSub) (Polynomial.natDegree.{u2} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_3)) p) k))) (Eq.{succ u1} (Module.End.{u2, u1} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (coeFn.{max (succ u2) (succ u1), max (succ u2) (succ u1)} (AlgHom.{u2, u2, u1} R (Polynomial.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (Module.End.{u2, u1} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (CommRing.toCommSemiring.{u2} R _inst_3) (Polynomial.semiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (Module.End.semiring.{u2, u1} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (Polynomial.algebraOfAlgebra.{u2, u2} R R (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (Module.End.algebra.{u2, u1} R M (CommRing.toCommSemiring.{u2} R _inst_3) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4)) (fun (_x : AlgHom.{u2, u2, u1} R (Polynomial.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (Module.End.{u2, u1} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (CommRing.toCommSemiring.{u2} R _inst_3) (Polynomial.semiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (Module.End.semiring.{u2, u1} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (Polynomial.algebraOfAlgebra.{u2, u2} R R (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (Module.End.algebra.{u2, u1} R M (CommRing.toCommSemiring.{u2} R _inst_3) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4)) => (Polynomial.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) -> (Module.End.{u2, u1} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4)) ([anonymous].{u2, u2, u1} R (Polynomial.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (Module.End.{u2, u1} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (CommRing.toCommSemiring.{u2} R _inst_3) (Polynomial.semiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (Module.End.semiring.{u2, u1} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (Polynomial.algebraOfAlgebra.{u2, u2} R R (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (Module.End.algebra.{u2, u1} R M (CommRing.toCommSemiring.{u2} R _inst_3) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4)) (Polynomial.aeval.{u2, u1} R (Module.End.{u2, u1} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (CommRing.toCommSemiring.{u2} R _inst_3) (Module.End.semiring.{u2, u1} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (Module.End.algebra.{u2, u1} R M (CommRing.toCommSemiring.{u2} R _inst_3) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) f) p) (OfNat.ofNat.{u1} (Module.End.{u2, u1} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) 0 (OfNat.mk.{u1} (Module.End.{u2, u1} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) 0 (Zero.zero.{u1} (Module.End.{u2, u1} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (LinearMap.hasZero.{u2, u2, u1, u1} R R M M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_3)) (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4 _inst_4 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_3))))))))))))
but is expected to have type
- forall {M : Type.{u1}} [_inst_2 : AddCommGroup.{u1} M] (R : Type.{u2}) [_inst_3 : CommRing.{u2} R] [_inst_4 : Module.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2)] [_inst_5 : Module.Finite.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4] (f : Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (I : Ideal.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))), (LE.le.{u1} (Submodule.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (Preorder.toLE.{u1} (Submodule.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (PartialOrder.toPreorder.{u1} (Submodule.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (OmegaCompletePartialOrder.toPartialOrder.{u1} (Submodule.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (CompleteLattice.instOmegaCompletePartialOrder.{u1} (Submodule.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (Submodule.completeLattice.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4))))) (LinearMap.range.{u2, u2, u1, u1, u1} R R M M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4 _inst_4 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (LinearMap.semilinearMapClass.{u2, u2, u1, u1} R R M M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4 _inst_4 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) (RingHomSurjective.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) f) (HSMul.hSMul.{u2, u1, u1} (Ideal.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (Submodule.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (Submodule.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (instHSMul.{u2, u1} (Ideal.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (Submodule.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (Submodule.hasSMul'.{u2, u1} R M (CommRing.toCommSemiring.{u2} R _inst_3) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4)) I (Top.top.{u1} (Submodule.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (Submodule.instTopSubmodule.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4)))) -> (Exists.{succ u2} (Polynomial.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (fun (p : Polynomial.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) => And (Polynomial.Monic.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) p) (And (forall (k : Nat), Membership.mem.{u2, u2} R (Ideal.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (SetLike.instMembership.{u2, u2} (Ideal.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) R (Submodule.setLike.{u2, u2} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) (Semiring.toModule.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) (Polynomial.coeff.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) p k) (HPow.hPow.{u2, 0, u2} (Ideal.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) Nat (Ideal.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (instHPow.{u2, 0} (Ideal.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) Nat (Monoid.Pow.{u2} (Ideal.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (MonoidWithZero.toMonoid.{u2} (Ideal.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (Semiring.toMonoidWithZero.{u2} (Ideal.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (IdemSemiring.toSemiring.{u2} (Ideal.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (Submodule.idemSemiring.{u2, u2} R (CommRing.toCommSemiring.{u2} R _inst_3) R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))))))) I (HSub.hSub.{0, 0, 0} Nat Nat Nat (instHSub.{0} Nat instSubNat) (Polynomial.natDegree.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) p) k))) (Eq.{succ u1} ((fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : Polynomial.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) => Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) p) (FunLike.coe.{max (succ u1) (succ u2), succ u2, succ u1} (AlgHom.{u2, u2, u1} R (Polynomial.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (CommRing.toCommSemiring.{u2} R _inst_3) (Polynomial.semiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (Module.End.semiring.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (Polynomial.algebraOfAlgebra.{u2, u2} R R (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (Module.instAlgebraEndToSemiringSemiring.{u2, u1} R M (CommRing.toCommSemiring.{u2} R _inst_3) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4)) (Polynomial.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (fun (_x : Polynomial.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : Polynomial.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) => Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) _x) (SMulHomClass.toFunLike.{max u1 u2, u2, u2, u1} (AlgHom.{u2, u2, u1} R (Polynomial.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (CommRing.toCommSemiring.{u2} R _inst_3) (Polynomial.semiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (Module.End.semiring.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (Polynomial.algebraOfAlgebra.{u2, u2} R R (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (Module.instAlgebraEndToSemiringSemiring.{u2, u1} R M (CommRing.toCommSemiring.{u2} R _inst_3) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4)) R (Polynomial.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (SMulZeroClass.toSMul.{u2, u2} R (Polynomial.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (AddMonoid.toZero.{u2} (Polynomial.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (AddCommMonoid.toAddMonoid.{u2} (Polynomial.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} (Polynomial.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} (Polynomial.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (Semiring.toNonAssocSemiring.{u2} (Polynomial.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (Polynomial.semiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))))))) (DistribSMul.toSMulZeroClass.{u2, u2} R (Polynomial.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (AddMonoid.toAddZeroClass.{u2} (Polynomial.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (AddCommMonoid.toAddMonoid.{u2} (Polynomial.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} (Polynomial.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} (Polynomial.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (Semiring.toNonAssocSemiring.{u2} (Polynomial.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (Polynomial.semiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))))))) (DistribMulAction.toDistribSMul.{u2, u2} R (Polynomial.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (AddCommMonoid.toAddMonoid.{u2} (Polynomial.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} (Polynomial.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} (Polynomial.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (Semiring.toNonAssocSemiring.{u2} (Polynomial.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (Polynomial.semiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))))) (Module.toDistribMulAction.{u2, u2} R (Polynomial.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} (Polynomial.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} (Polynomial.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (Semiring.toNonAssocSemiring.{u2} (Polynomial.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (Polynomial.semiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))))) (Algebra.toModule.{u2, u2} R (Polynomial.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (CommRing.toCommSemiring.{u2} R _inst_3) (Polynomial.semiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (Polynomial.algebraOfAlgebra.{u2, u2} R R (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))))))) (SMulZeroClass.toSMul.{u2, u1} R (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (AddMonoid.toZero.{u1} (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (AddCommMonoid.toAddMonoid.{u1} (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (Semiring.toNonAssocSemiring.{u1} (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (Module.End.semiring.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4)))))) (DistribSMul.toSMulZeroClass.{u2, u1} R (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (AddMonoid.toAddZeroClass.{u1} (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (AddCommMonoid.toAddMonoid.{u1} (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (Semiring.toNonAssocSemiring.{u1} (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (Module.End.semiring.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4)))))) (DistribMulAction.toDistribSMul.{u2, u1} R (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (AddCommMonoid.toAddMonoid.{u1} (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (Semiring.toNonAssocSemiring.{u1} (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (Module.End.semiring.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4))))) (Module.toDistribMulAction.{u2, u1} R (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (Semiring.toNonAssocSemiring.{u1} (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (Module.End.semiring.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4)))) (Algebra.toModule.{u2, u1} R (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (CommRing.toCommSemiring.{u2} R _inst_3) (Module.End.semiring.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (Module.instAlgebraEndToSemiringSemiring.{u2, u1} R M (CommRing.toCommSemiring.{u2} R _inst_3) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4)))))) (DistribMulActionHomClass.toSMulHomClass.{max u1 u2, u2, u2, u1} (AlgHom.{u2, u2, u1} R (Polynomial.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (CommRing.toCommSemiring.{u2} R _inst_3) (Polynomial.semiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (Module.End.semiring.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (Polynomial.algebraOfAlgebra.{u2, u2} R R (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (Module.instAlgebraEndToSemiringSemiring.{u2, u1} R M (CommRing.toCommSemiring.{u2} R _inst_3) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4)) R (Polynomial.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (AddCommMonoid.toAddMonoid.{u2} (Polynomial.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} (Polynomial.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} (Polynomial.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (Semiring.toNonAssocSemiring.{u2} (Polynomial.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (Polynomial.semiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))))) (AddCommMonoid.toAddMonoid.{u1} (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (Semiring.toNonAssocSemiring.{u1} (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (Module.End.semiring.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4))))) (Module.toDistribMulAction.{u2, u2} R (Polynomial.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} (Polynomial.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} (Polynomial.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (Semiring.toNonAssocSemiring.{u2} (Polynomial.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (Polynomial.semiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))))) (Algebra.toModule.{u2, u2} R (Polynomial.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (CommRing.toCommSemiring.{u2} R _inst_3) (Polynomial.semiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (Polynomial.algebraOfAlgebra.{u2, u2} R R (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) (Module.toDistribMulAction.{u2, u1} R (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (Semiring.toNonAssocSemiring.{u1} (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (Module.End.semiring.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4)))) (Algebra.toModule.{u2, u1} R (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (CommRing.toCommSemiring.{u2} R _inst_3) (Module.End.semiring.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (Module.instAlgebraEndToSemiringSemiring.{u2, u1} R M (CommRing.toCommSemiring.{u2} R _inst_3) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4))) (NonUnitalAlgHomClass.toDistribMulActionHomClass.{max u1 u2, u2, u2, u1} (AlgHom.{u2, u2, u1} R (Polynomial.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (CommRing.toCommSemiring.{u2} R _inst_3) (Polynomial.semiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (Module.End.semiring.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (Polynomial.algebraOfAlgebra.{u2, u2} R R (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (Module.instAlgebraEndToSemiringSemiring.{u2, u1} R M (CommRing.toCommSemiring.{u2} R _inst_3) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4)) R (Polynomial.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} (Polynomial.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (Semiring.toNonAssocSemiring.{u2} (Polynomial.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (Polynomial.semiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (Semiring.toNonAssocSemiring.{u1} (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (Module.End.semiring.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4))) (Module.toDistribMulAction.{u2, u2} R (Polynomial.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} (Polynomial.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} (Polynomial.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (Semiring.toNonAssocSemiring.{u2} (Polynomial.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (Polynomial.semiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))))) (Algebra.toModule.{u2, u2} R (Polynomial.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (CommRing.toCommSemiring.{u2} R _inst_3) (Polynomial.semiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (Polynomial.algebraOfAlgebra.{u2, u2} R R (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) (Module.toDistribMulAction.{u2, u1} R (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (Semiring.toNonAssocSemiring.{u1} (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (Module.End.semiring.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4)))) (Algebra.toModule.{u2, u1} R (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (CommRing.toCommSemiring.{u2} R _inst_3) (Module.End.semiring.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (Module.instAlgebraEndToSemiringSemiring.{u2, u1} R M (CommRing.toCommSemiring.{u2} R _inst_3) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4))) (AlgHom.instNonUnitalAlgHomClassToMonoidToMonoidWithZeroToSemiringToNonUnitalNonAssocSemiringToNonAssocSemiringToNonUnitalNonAssocSemiringToNonAssocSemiringToDistribMulActionToAddCommMonoidToModuleToDistribMulActionToAddCommMonoidToModule.{u2, u2, u1, max u1 u2} R (Polynomial.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (CommRing.toCommSemiring.{u2} R _inst_3) (Polynomial.semiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (Module.End.semiring.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (Polynomial.algebraOfAlgebra.{u2, u2} R R (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (Module.instAlgebraEndToSemiringSemiring.{u2, u1} R M (CommRing.toCommSemiring.{u2} R _inst_3) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (AlgHom.{u2, u2, u1} R (Polynomial.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (CommRing.toCommSemiring.{u2} R _inst_3) (Polynomial.semiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (Module.End.semiring.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (Polynomial.algebraOfAlgebra.{u2, u2} R R (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (Module.instAlgebraEndToSemiringSemiring.{u2, u1} R M (CommRing.toCommSemiring.{u2} R _inst_3) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4)) (AlgHom.algHomClass.{u2, u2, u1} R (Polynomial.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (CommRing.toCommSemiring.{u2} R _inst_3) (Polynomial.semiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (Module.End.semiring.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (Polynomial.algebraOfAlgebra.{u2, u2} R R (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (Module.instAlgebraEndToSemiringSemiring.{u2, u1} R M (CommRing.toCommSemiring.{u2} R _inst_3) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4)))))) (Polynomial.aeval.{u2, u1} R (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (CommRing.toCommSemiring.{u2} R _inst_3) (Module.End.semiring.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (Module.instAlgebraEndToSemiringSemiring.{u2, u1} R M (CommRing.toCommSemiring.{u2} R _inst_3) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) f) p) (OfNat.ofNat.{u1} ((fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : Polynomial.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) => Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) p) 0 (Zero.toOfNat0.{u1} ((fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : Polynomial.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) => Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) p) (LinearMap.instZeroLinearMap.{u2, u2, u1, u1} R R M M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4 _inst_4 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))))))))))
+ forall {M : Type.{u1}} [_inst_2 : AddCommGroup.{u1} M] (R : Type.{u2}) [_inst_3 : CommRing.{u2} R] [_inst_4 : Module.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2)] [_inst_5 : Module.Finite.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4] (f : Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (I : Ideal.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))), (LE.le.{u1} (Submodule.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (Preorder.toLE.{u1} (Submodule.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (PartialOrder.toPreorder.{u1} (Submodule.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (OmegaCompletePartialOrder.toPartialOrder.{u1} (Submodule.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (CompleteLattice.instOmegaCompletePartialOrder.{u1} (Submodule.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (Submodule.completeLattice.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4))))) (LinearMap.range.{u2, u2, u1, u1, u1} R R M M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4 _inst_4 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (LinearMap.semilinearMapClass.{u2, u2, u1, u1} R R M M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4 _inst_4 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) (RingHomSurjective.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) f) (HSMul.hSMul.{u2, u1, u1} (Ideal.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (Submodule.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (Submodule.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (instHSMul.{u2, u1} (Ideal.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (Submodule.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (Submodule.hasSMul'.{u2, u1} R M (CommRing.toCommSemiring.{u2} R _inst_3) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4)) I (Top.top.{u1} (Submodule.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (Submodule.instTopSubmodule.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4)))) -> (Exists.{succ u2} (Polynomial.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (fun (p : Polynomial.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) => And (Polynomial.Monic.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) p) (And (forall (k : Nat), Membership.mem.{u2, u2} R (Ideal.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (SetLike.instMembership.{u2, u2} (Ideal.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) R (Submodule.setLike.{u2, u2} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) (Semiring.toModule.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) (Polynomial.coeff.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) p k) (HPow.hPow.{u2, 0, u2} (Ideal.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) Nat (Ideal.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (instHPow.{u2, 0} (Ideal.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) Nat (Monoid.Pow.{u2} (Ideal.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (MonoidWithZero.toMonoid.{u2} (Ideal.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (Semiring.toMonoidWithZero.{u2} (Ideal.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (IdemSemiring.toSemiring.{u2} (Ideal.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (Submodule.idemSemiring.{u2, u2} R (CommRing.toCommSemiring.{u2} R _inst_3) R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))))))) I (HSub.hSub.{0, 0, 0} Nat Nat Nat (instHSub.{0} Nat instSubNat) (Polynomial.natDegree.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) p) k))) (Eq.{succ u1} ((fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2187 : Polynomial.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) => Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) p) (FunLike.coe.{max (succ u1) (succ u2), succ u2, succ u1} (AlgHom.{u2, u2, u1} R (Polynomial.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (CommRing.toCommSemiring.{u2} R _inst_3) (Polynomial.semiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (Module.End.semiring.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (Polynomial.algebraOfAlgebra.{u2, u2} R R (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (Module.instAlgebraEndToSemiringSemiring.{u2, u1} R M (CommRing.toCommSemiring.{u2} R _inst_3) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4)) (Polynomial.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (fun (_x : Polynomial.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2187 : Polynomial.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) => Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) _x) (SMulHomClass.toFunLike.{max u1 u2, u2, u2, u1} (AlgHom.{u2, u2, u1} R (Polynomial.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (CommRing.toCommSemiring.{u2} R _inst_3) (Polynomial.semiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (Module.End.semiring.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (Polynomial.algebraOfAlgebra.{u2, u2} R R (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (Module.instAlgebraEndToSemiringSemiring.{u2, u1} R M (CommRing.toCommSemiring.{u2} R _inst_3) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4)) R (Polynomial.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (SMulZeroClass.toSMul.{u2, u2} R (Polynomial.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (AddMonoid.toZero.{u2} (Polynomial.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (AddCommMonoid.toAddMonoid.{u2} (Polynomial.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} (Polynomial.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} (Polynomial.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (Semiring.toNonAssocSemiring.{u2} (Polynomial.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (Polynomial.semiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))))))) (DistribSMul.toSMulZeroClass.{u2, u2} R (Polynomial.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (AddMonoid.toAddZeroClass.{u2} (Polynomial.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (AddCommMonoid.toAddMonoid.{u2} (Polynomial.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} (Polynomial.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} (Polynomial.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (Semiring.toNonAssocSemiring.{u2} (Polynomial.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (Polynomial.semiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))))))) (DistribMulAction.toDistribSMul.{u2, u2} R (Polynomial.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (AddCommMonoid.toAddMonoid.{u2} (Polynomial.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} (Polynomial.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} (Polynomial.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (Semiring.toNonAssocSemiring.{u2} (Polynomial.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (Polynomial.semiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))))) (Module.toDistribMulAction.{u2, u2} R (Polynomial.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} (Polynomial.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} (Polynomial.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (Semiring.toNonAssocSemiring.{u2} (Polynomial.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (Polynomial.semiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))))) (Algebra.toModule.{u2, u2} R (Polynomial.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (CommRing.toCommSemiring.{u2} R _inst_3) (Polynomial.semiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (Polynomial.algebraOfAlgebra.{u2, u2} R R (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))))))) (SMulZeroClass.toSMul.{u2, u1} R (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (AddMonoid.toZero.{u1} (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (AddCommMonoid.toAddMonoid.{u1} (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (Semiring.toNonAssocSemiring.{u1} (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (Module.End.semiring.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4)))))) (DistribSMul.toSMulZeroClass.{u2, u1} R (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (AddMonoid.toAddZeroClass.{u1} (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (AddCommMonoid.toAddMonoid.{u1} (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (Semiring.toNonAssocSemiring.{u1} (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (Module.End.semiring.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4)))))) (DistribMulAction.toDistribSMul.{u2, u1} R (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (AddCommMonoid.toAddMonoid.{u1} (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (Semiring.toNonAssocSemiring.{u1} (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (Module.End.semiring.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4))))) (Module.toDistribMulAction.{u2, u1} R (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (Semiring.toNonAssocSemiring.{u1} (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (Module.End.semiring.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4)))) (Algebra.toModule.{u2, u1} R (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (CommRing.toCommSemiring.{u2} R _inst_3) (Module.End.semiring.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (Module.instAlgebraEndToSemiringSemiring.{u2, u1} R M (CommRing.toCommSemiring.{u2} R _inst_3) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4)))))) (DistribMulActionHomClass.toSMulHomClass.{max u1 u2, u2, u2, u1} (AlgHom.{u2, u2, u1} R (Polynomial.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (CommRing.toCommSemiring.{u2} R _inst_3) (Polynomial.semiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (Module.End.semiring.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (Polynomial.algebraOfAlgebra.{u2, u2} R R (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (Module.instAlgebraEndToSemiringSemiring.{u2, u1} R M (CommRing.toCommSemiring.{u2} R _inst_3) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4)) R (Polynomial.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (AddCommMonoid.toAddMonoid.{u2} (Polynomial.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} (Polynomial.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} (Polynomial.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (Semiring.toNonAssocSemiring.{u2} (Polynomial.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (Polynomial.semiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))))) (AddCommMonoid.toAddMonoid.{u1} (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (Semiring.toNonAssocSemiring.{u1} (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (Module.End.semiring.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4))))) (Module.toDistribMulAction.{u2, u2} R (Polynomial.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} (Polynomial.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} (Polynomial.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (Semiring.toNonAssocSemiring.{u2} (Polynomial.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (Polynomial.semiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))))) (Algebra.toModule.{u2, u2} R (Polynomial.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (CommRing.toCommSemiring.{u2} R _inst_3) (Polynomial.semiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (Polynomial.algebraOfAlgebra.{u2, u2} R R (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) (Module.toDistribMulAction.{u2, u1} R (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (Semiring.toNonAssocSemiring.{u1} (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (Module.End.semiring.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4)))) (Algebra.toModule.{u2, u1} R (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (CommRing.toCommSemiring.{u2} R _inst_3) (Module.End.semiring.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (Module.instAlgebraEndToSemiringSemiring.{u2, u1} R M (CommRing.toCommSemiring.{u2} R _inst_3) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4))) (NonUnitalAlgHomClass.toDistribMulActionHomClass.{max u1 u2, u2, u2, u1} (AlgHom.{u2, u2, u1} R (Polynomial.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (CommRing.toCommSemiring.{u2} R _inst_3) (Polynomial.semiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (Module.End.semiring.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (Polynomial.algebraOfAlgebra.{u2, u2} R R (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (Module.instAlgebraEndToSemiringSemiring.{u2, u1} R M (CommRing.toCommSemiring.{u2} R _inst_3) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4)) R (Polynomial.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} (Polynomial.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (Semiring.toNonAssocSemiring.{u2} (Polynomial.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (Polynomial.semiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (Semiring.toNonAssocSemiring.{u1} (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (Module.End.semiring.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4))) (Module.toDistribMulAction.{u2, u2} R (Polynomial.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} (Polynomial.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} (Polynomial.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (Semiring.toNonAssocSemiring.{u2} (Polynomial.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (Polynomial.semiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))))) (Algebra.toModule.{u2, u2} R (Polynomial.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (CommRing.toCommSemiring.{u2} R _inst_3) (Polynomial.semiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (Polynomial.algebraOfAlgebra.{u2, u2} R R (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) (Module.toDistribMulAction.{u2, u1} R (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (Semiring.toNonAssocSemiring.{u1} (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (Module.End.semiring.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4)))) (Algebra.toModule.{u2, u1} R (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (CommRing.toCommSemiring.{u2} R _inst_3) (Module.End.semiring.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (Module.instAlgebraEndToSemiringSemiring.{u2, u1} R M (CommRing.toCommSemiring.{u2} R _inst_3) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4))) (AlgHom.instNonUnitalAlgHomClassToMonoidToMonoidWithZeroToSemiringToNonUnitalNonAssocSemiringToNonAssocSemiringToNonUnitalNonAssocSemiringToNonAssocSemiringToDistribMulActionToAddCommMonoidToModuleToDistribMulActionToAddCommMonoidToModule.{u2, u2, u1, max u1 u2} R (Polynomial.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (CommRing.toCommSemiring.{u2} R _inst_3) (Polynomial.semiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (Module.End.semiring.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (Polynomial.algebraOfAlgebra.{u2, u2} R R (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (Module.instAlgebraEndToSemiringSemiring.{u2, u1} R M (CommRing.toCommSemiring.{u2} R _inst_3) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (AlgHom.{u2, u2, u1} R (Polynomial.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (CommRing.toCommSemiring.{u2} R _inst_3) (Polynomial.semiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (Module.End.semiring.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (Polynomial.algebraOfAlgebra.{u2, u2} R R (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (Module.instAlgebraEndToSemiringSemiring.{u2, u1} R M (CommRing.toCommSemiring.{u2} R _inst_3) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4)) (AlgHom.algHomClass.{u2, u2, u1} R (Polynomial.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (CommRing.toCommSemiring.{u2} R _inst_3) (Polynomial.semiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (Module.End.semiring.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (Polynomial.algebraOfAlgebra.{u2, u2} R R (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (Module.instAlgebraEndToSemiringSemiring.{u2, u1} R M (CommRing.toCommSemiring.{u2} R _inst_3) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4)))))) (Polynomial.aeval.{u2, u1} R (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (CommRing.toCommSemiring.{u2} R _inst_3) (Module.End.semiring.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (Module.instAlgebraEndToSemiringSemiring.{u2, u1} R M (CommRing.toCommSemiring.{u2} R _inst_3) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) f) p) (OfNat.ofNat.{u1} ((fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2187 : Polynomial.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) => Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) p) 0 (Zero.toOfNat0.{u1} ((fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2187 : Polynomial.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) => Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) p) (LinearMap.instZeroLinearMap.{u2, u2, u1, u1} R R M M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4 _inst_4 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))))))))))
Case conversion may be inaccurate. Consider using '#align linear_map.exists_monic_and_coeff_mem_pow_and_aeval_eq_zero_of_range_le_smul LinearMap.exists_monic_and_coeff_mem_pow_and_aeval_eq_zero_of_range_le_smulₓ'. -/
/-- The **Cayley-Hamilton Theorem** for f.g. modules over arbitrary rings states that for each
`R`-endomorphism `φ` of an `R`-module `M` such that `φ(M) ≤ I • M` for some ideal `I`, there
mathlib commit https://github.com/leanprover-community/mathlib/commit/75e7fca56381d056096ce5d05e938f63a6567828
@@ -4,7 +4,7 @@ Released under Apache 2.0 license as described in the file LICENSE.
Authors: Andrew Yang
! This file was ported from Lean 3 source module linear_algebra.matrix.charpoly.linear_map
-! leanprover-community/mathlib commit 62c0a4ef1441edb463095ea02a06e87f3dfe135c
+! leanprover-community/mathlib commit 4280f5f32e16755ec7985ce11e189b6cd6ff6735
! Please do not edit these lines, except to modify the commit id
! if you have ported upstream changes.
-/
@@ -15,6 +15,9 @@ import Mathbin.LinearAlgebra.Matrix.ToLin
# Calyley-Hamilton theorem for f.g. modules.
+> THIS FILE IS SYNCHRONIZED WITH MATHLIB4.
+> Any changes to this file require a corresponding PR to mathlib4.
+
Given a fixed finite spanning set `b : ι → M` of a `R`-module `M`, we say that a matrix `M`
represents an endomorphism `f : M →ₗ[R] M` if the matrix as an endomorphism of `ι → R` commutes
with `f` via the projection `(ι → R) →ₗ[R] M` given by `b`.
@@ -274,7 +277,7 @@ def Matrix.isRepresentation : Subalgebra R (Matrix ι ι R)
lean 3 declaration is
forall {ι : Type.{u1}} [_inst_1 : Fintype.{u1} ι] {M : Type.{u2}} [_inst_2 : AddCommGroup.{u2} M] (R : Type.{u3}) [_inst_3 : CommRing.{u3} R] [_inst_4 : Module.{u3, u2} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2)] (b : ι -> M), (Eq.{succ u2} (Submodule.{u3, u2} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (Submodule.span.{u3, u2} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4 (Set.range.{u2, succ u1} M ι b)) (Top.top.{u2} (Submodule.{u3, u2} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (Submodule.hasTop.{u3, u2} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4))) -> (forall [_inst_5 : DecidableEq.{succ u1} ι], AlgHom.{u3, max u1 u3, u2} R (coeSort.{succ (max u1 u3), succ (succ (max u1 u3))} (Subalgebra.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b)) (Matrix.algebra.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b) (CommRing.toCommSemiring.{u3} R _inst_3) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) Type.{max u1 u3} (SetLike.hasCoeToSort.{max u1 u3, max u1 u3} (Subalgebra.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b)) (Matrix.algebra.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b) (CommRing.toCommSemiring.{u3} R _inst_3) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.setLike.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b)) (Matrix.algebra.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b) (CommRing.toCommSemiring.{u3} R _inst_3) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))))) (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))) (Module.End.{u3, u2} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (CommRing.toCommSemiring.{u3} R _inst_3) (Subalgebra.toSemiring.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b)) (Matrix.algebra.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b) (CommRing.toCommSemiring.{u3} R _inst_3) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))) (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))) (Module.End.semiring.{u3, u2} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (Subalgebra.algebra.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b)) (Matrix.algebra.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b) (CommRing.toCommSemiring.{u3} R _inst_3) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))) (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))) (Module.End.algebra.{u3, u2} R M (CommRing.toCommSemiring.{u3} R _inst_3) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4))
but is expected to have type
- forall {ι : Type.{u1}} [_inst_1 : Fintype.{u1} ι] {M : Type.{u2}} [_inst_2 : AddCommGroup.{u2} M] (R : Type.{u3}) [_inst_3 : CommRing.{u3} R] [_inst_4 : Module.{u3, u2} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2)] (b : ι -> M), (Eq.{succ u2} (Submodule.{u3, u2} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (Submodule.span.{u3, u2} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4 (Set.range.{u2, succ u1} M ι b)) (Top.top.{u2} (Submodule.{u3, u2} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (Submodule.instTopSubmodule.{u3, u2} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4))) -> (forall [_inst_5 : DecidableEq.{succ u1} ι], AlgHom.{u3, max u1 u3, u2} R (Subtype.{succ (max u1 u3)} (Matrix.{u1, u1, u3} ι ι R) (fun (x : Matrix.{u1, u1, u3} ι ι R) => Membership.mem.{max u1 u3, max u1 u3} (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.{u3, max u3 u1} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (SetLike.instMembership.{max u1 u3, max u1 u3} (Subalgebra.{u3, max u3 u1} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))))) x (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (Module.End.{u3, u2} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (CommRing.toCommSemiring.{u3} R _inst_3) (Subalgebra.toSemiring.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))) (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))) (Module.End.semiring.{u3, u2} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (Subalgebra.instAlgebraSubtypeMemSubalgebraInstMembershipInstSetLikeSubalgebraToSemiring.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))) (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))) (Module.instAlgebraEndToSemiringSemiring.{u3, u2} R M (CommRing.toCommSemiring.{u3} R _inst_3) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4))
+ forall {ι : Type.{u1}} [_inst_1 : Fintype.{u1} ι] {M : Type.{u2}} [_inst_2 : AddCommGroup.{u2} M] (R : Type.{u3}) [_inst_3 : CommRing.{u3} R] [_inst_4 : Module.{u3, u2} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2)] (b : ι -> M), (Eq.{succ u2} (Submodule.{u3, u2} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (Submodule.span.{u3, u2} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4 (Set.range.{u2, succ u1} M ι b)) (Top.top.{u2} (Submodule.{u3, u2} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (Submodule.instTopSubmodule.{u3, u2} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4))) -> (forall [_inst_5 : DecidableEq.{succ u1} ι], AlgHom.{u3, max u1 u3, u2} R (Subtype.{succ (max u1 u3)} (Matrix.{u1, u1, u3} ι ι R) (fun (x : Matrix.{u1, u1, u3} ι ι R) => Membership.mem.{max u1 u3, max u1 u3} (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.{u3, max u3 u1} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (SetLike.instMembership.{max u1 u3, max u1 u3} (Subalgebra.{u3, max u3 u1} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))))) x (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (Module.End.{u3, u2} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (CommRing.toCommSemiring.{u3} R _inst_3) (Subalgebra.toSemiring.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))) (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))) (Module.End.semiring.{u3, u2} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (Subalgebra.algebra.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))) (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))) (Module.instAlgebraEndToSemiringSemiring.{u3, u2} R M (CommRing.toCommSemiring.{u3} R _inst_3) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4))
Case conversion may be inaccurate. Consider using '#align matrix.is_representation.to_End Matrix.isRepresentation.toEndₓ'. -/
/-- The map sending a matrix to the endomorphism it represents. This is an `R`-algebra morphism. -/
noncomputable def Matrix.isRepresentation.toEnd : Matrix.isRepresentation R b →ₐ[R] Module.End R M
@@ -292,7 +295,7 @@ noncomputable def Matrix.isRepresentation.toEnd : Matrix.isRepresentation R b
lean 3 declaration is
forall {ι : Type.{u1}} [_inst_1 : Fintype.{u1} ι] {M : Type.{u2}} [_inst_2 : AddCommGroup.{u2} M] (R : Type.{u3}) [_inst_3 : CommRing.{u3} R] [_inst_4 : Module.{u3, u2} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2)] (b : ι -> M) (hb : Eq.{succ u2} (Submodule.{u3, u2} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (Submodule.span.{u3, u2} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4 (Set.range.{u2, succ u1} M ι b)) (Top.top.{u2} (Submodule.{u3, u2} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (Submodule.hasTop.{u3, u2} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4))) [_inst_5 : DecidableEq.{succ u1} ι] (A : coeSort.{succ (max u1 u3), succ (succ (max u1 u3))} (Subalgebra.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.algebra.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) Type.{max u1 u3} (SetLike.hasCoeToSort.{max u1 u3, max u1 u3} (Subalgebra.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.algebra.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.setLike.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.algebra.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))))) (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))), Matrix.Represents.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b) ((fun (a : Type.{max u1 u3}) (b : Type.{max u1 u3}) [self : HasLiftT.{succ (max u1 u3), succ (max u1 u3)} a b] => self.0) (coeSort.{succ (max u1 u3), succ (succ (max u1 u3))} (Subalgebra.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.algebra.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) Type.{max u1 u3} (SetLike.hasCoeToSort.{max u1 u3, max u1 u3} (Subalgebra.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.algebra.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.setLike.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.algebra.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))))) (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))) (Matrix.{u1, u1, u3} ι ι R) (HasLiftT.mk.{succ (max u1 u3), succ (max u1 u3)} (coeSort.{succ (max u1 u3), succ (succ (max u1 u3))} (Subalgebra.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.algebra.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) Type.{max u1 u3} (SetLike.hasCoeToSort.{max u1 u3, max u1 u3} (Subalgebra.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.algebra.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.setLike.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.algebra.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))))) (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))) (Matrix.{u1, u1, u3} ι ι R) (CoeTCₓ.coe.{succ (max u1 u3), succ (max u1 u3)} (coeSort.{succ (max u1 u3), succ (succ (max u1 u3))} (Subalgebra.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.algebra.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) Type.{max u1 u3} (SetLike.hasCoeToSort.{max u1 u3, max u1 u3} (Subalgebra.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.algebra.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.setLike.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.algebra.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))))) (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))) (Matrix.{u1, u1, u3} ι ι R) (coeBase.{succ (max u1 u3), succ (max u1 u3)} (coeSort.{succ (max u1 u3), succ (succ (max u1 u3))} (Subalgebra.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.algebra.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) Type.{max u1 u3} (SetLike.hasCoeToSort.{max u1 u3, max u1 u3} (Subalgebra.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.algebra.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.setLike.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.algebra.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))))) (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))) (Matrix.{u1, u1, u3} ι ι R) (coeSubtype.{succ (max u1 u3)} (Matrix.{u1, u1, u3} ι ι R) (fun (x : Matrix.{u1, u1, u3} ι ι R) => Membership.Mem.{max u1 u3, max u1 u3} (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.algebra.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (SetLike.hasMem.{max u1 u3, max u1 u3} (Subalgebra.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.algebra.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.setLike.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.algebra.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))))) x (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))))))) A) (coeFn.{max (succ (max u1 u3)) (succ u2), max (succ (max u1 u3)) (succ u2)} (AlgHom.{u3, max u1 u3, u2} R (coeSort.{succ (max u1 u3), succ (succ (max u1 u3))} (Subalgebra.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b)) (Matrix.algebra.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b) (CommRing.toCommSemiring.{u3} R _inst_3) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) Type.{max u1 u3} (SetLike.hasCoeToSort.{max u1 u3, max u1 u3} (Subalgebra.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b)) (Matrix.algebra.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b) (CommRing.toCommSemiring.{u3} R _inst_3) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.setLike.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b)) (Matrix.algebra.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b) (CommRing.toCommSemiring.{u3} R _inst_3) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))))) (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))) (Module.End.{u3, u2} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (CommRing.toCommSemiring.{u3} R _inst_3) (Subalgebra.toSemiring.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b)) (Matrix.algebra.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b) (CommRing.toCommSemiring.{u3} R _inst_3) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))) (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))) (Module.End.semiring.{u3, u2} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (Subalgebra.algebra.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b)) (Matrix.algebra.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b) (CommRing.toCommSemiring.{u3} R _inst_3) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))) (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))) (Module.End.algebra.{u3, u2} R M (CommRing.toCommSemiring.{u3} R _inst_3) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4)) (fun (_x : AlgHom.{u3, max u1 u3, u2} R (coeSort.{succ (max u1 u3), succ (succ (max u1 u3))} (Subalgebra.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b)) (Matrix.algebra.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b) (CommRing.toCommSemiring.{u3} R _inst_3) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) Type.{max u1 u3} (SetLike.hasCoeToSort.{max u1 u3, max u1 u3} (Subalgebra.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b)) (Matrix.algebra.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b) (CommRing.toCommSemiring.{u3} R _inst_3) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.setLike.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b)) (Matrix.algebra.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b) (CommRing.toCommSemiring.{u3} R _inst_3) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))))) (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))) (Module.End.{u3, u2} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (CommRing.toCommSemiring.{u3} R _inst_3) (Subalgebra.toSemiring.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b)) (Matrix.algebra.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b) (CommRing.toCommSemiring.{u3} R _inst_3) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))) (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))) (Module.End.semiring.{u3, u2} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (Subalgebra.algebra.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b)) (Matrix.algebra.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b) (CommRing.toCommSemiring.{u3} R _inst_3) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))) (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))) (Module.End.algebra.{u3, u2} R M (CommRing.toCommSemiring.{u3} R _inst_3) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4)) => (coeSort.{succ (max u1 u3), succ (succ (max u1 u3))} (Subalgebra.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b)) (Matrix.algebra.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b) (CommRing.toCommSemiring.{u3} R _inst_3) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) Type.{max u1 u3} (SetLike.hasCoeToSort.{max u1 u3, max u1 u3} (Subalgebra.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b)) (Matrix.algebra.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b) (CommRing.toCommSemiring.{u3} R _inst_3) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.setLike.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b)) (Matrix.algebra.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b) (CommRing.toCommSemiring.{u3} R _inst_3) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))))) (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))) -> (Module.End.{u3, u2} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4)) ([anonymous].{u3, max u1 u3, u2} R (coeSort.{succ (max u1 u3), succ (succ (max u1 u3))} (Subalgebra.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b)) (Matrix.algebra.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b) (CommRing.toCommSemiring.{u3} R _inst_3) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) Type.{max u1 u3} (SetLike.hasCoeToSort.{max u1 u3, max u1 u3} (Subalgebra.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b)) (Matrix.algebra.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b) (CommRing.toCommSemiring.{u3} R _inst_3) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.setLike.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b)) (Matrix.algebra.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b) (CommRing.toCommSemiring.{u3} R _inst_3) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))))) (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))) (Module.End.{u3, u2} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (CommRing.toCommSemiring.{u3} R _inst_3) (Subalgebra.toSemiring.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b)) (Matrix.algebra.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b) (CommRing.toCommSemiring.{u3} R _inst_3) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))) (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))) (Module.End.semiring.{u3, u2} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (Subalgebra.algebra.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b)) (Matrix.algebra.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b) (CommRing.toCommSemiring.{u3} R _inst_3) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))) (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))) (Module.End.algebra.{u3, u2} R M (CommRing.toCommSemiring.{u3} R _inst_3) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4)) (Matrix.isRepresentation.toEnd.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b hb (fun (a : ι) (b : ι) => _inst_5 a b)) A)
but is expected to have type
- forall {ι : Type.{u3}} [_inst_1 : Fintype.{u3} ι] {M : Type.{u1}} [_inst_2 : AddCommGroup.{u1} M] (R : Type.{u2}) [_inst_3 : CommRing.{u2} R] [_inst_4 : Module.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2)] (b : ι -> M) (hb : Eq.{succ u1} (Submodule.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (Submodule.span.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4 (Set.range.{u1, succ u3} M ι b)) (Top.top.{u1} (Submodule.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (Submodule.instTopSubmodule.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4))) [_inst_5 : DecidableEq.{succ u3} ι] (A : Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))), Matrix.Represents.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b) (Subtype.val.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Set.{max u3 u2} (Matrix.{u3, u3, u2} ι ι R)) (Set.instMembershipSet.{max u3 u2} (Matrix.{u3, u3, u2} ι ι R)) x (SetLike.coe.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) A) (FunLike.coe.{max (max (succ u3) (succ u1)) (succ u2), max (succ u3) (succ u2), succ u1} (AlgHom.{u2, max u3 u2, u1} R (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (CommRing.toCommSemiring.{u2} R _inst_3) (Subalgebra.toSemiring.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))) (Module.End.semiring.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (Subalgebra.instAlgebraSubtypeMemSubalgebraInstMembershipInstSetLikeSubalgebraToSemiring.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))) (Module.instAlgebraEndToSemiringSemiring.{u2, u1} R M (CommRing.toCommSemiring.{u2} R _inst_3) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4)) (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (fun (_x : Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) => Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) _x) (SMulHomClass.toFunLike.{max (max u3 u1) u2, u2, max u3 u2, u1} (AlgHom.{u2, max u3 u2, u1} R (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (CommRing.toCommSemiring.{u2} R _inst_3) (Subalgebra.toSemiring.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))) (Module.End.semiring.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (Subalgebra.instAlgebraSubtypeMemSubalgebraInstMembershipInstSetLikeSubalgebraToSemiring.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))) (Module.instAlgebraEndToSemiringSemiring.{u2, u1} R M (CommRing.toCommSemiring.{u2} R _inst_3) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4)) R (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (SMulZeroClass.toSMul.{u2, max u3 u2} R (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (AddMonoid.toZero.{max u3 u2} (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (AddCommMonoid.toAddMonoid.{max u3 u2} (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (NonUnitalNonAssocSemiring.toAddCommMonoid.{max u3 u2} (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{max u3 u2} (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (Semiring.toNonAssocSemiring.{max u3 u2} (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (Subalgebra.toSemiring.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))))))) (DistribSMul.toSMulZeroClass.{u2, max u3 u2} R (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (AddMonoid.toAddZeroClass.{max u3 u2} (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (AddCommMonoid.toAddMonoid.{max u3 u2} (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (NonUnitalNonAssocSemiring.toAddCommMonoid.{max u3 u2} (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{max u3 u2} (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (Semiring.toNonAssocSemiring.{max u3 u2} (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (Subalgebra.toSemiring.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))))))) (DistribMulAction.toDistribSMul.{u2, max u3 u2} R (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (AddCommMonoid.toAddMonoid.{max u3 u2} (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (NonUnitalNonAssocSemiring.toAddCommMonoid.{max u3 u2} (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{max u3 u2} (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (Semiring.toNonAssocSemiring.{max u3 u2} (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (Subalgebra.toSemiring.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))))))) (Module.toDistribMulAction.{u2, max u3 u2} R (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{max u3 u2} (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{max u3 u2} (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (Semiring.toNonAssocSemiring.{max u3 u2} (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (Subalgebra.toSemiring.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))))) (Algebra.toModule.{u2, max u3 u2} R (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (CommRing.toCommSemiring.{u2} R _inst_3) (Subalgebra.toSemiring.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))) (Subalgebra.instAlgebraSubtypeMemSubalgebraInstMembershipInstSetLikeSubalgebraToSemiring.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))))))) (SMulZeroClass.toSMul.{u2, u1} R (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (AddMonoid.toZero.{u1} (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (AddCommMonoid.toAddMonoid.{u1} (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (Semiring.toNonAssocSemiring.{u1} (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (Module.End.semiring.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4)))))) (DistribSMul.toSMulZeroClass.{u2, u1} R (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (AddMonoid.toAddZeroClass.{u1} (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (AddCommMonoid.toAddMonoid.{u1} (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (Semiring.toNonAssocSemiring.{u1} (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (Module.End.semiring.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4)))))) (DistribMulAction.toDistribSMul.{u2, u1} R (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (AddCommMonoid.toAddMonoid.{u1} (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (Semiring.toNonAssocSemiring.{u1} (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (Module.End.semiring.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4))))) (Module.toDistribMulAction.{u2, u1} R (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (Semiring.toNonAssocSemiring.{u1} (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (Module.End.semiring.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4)))) (Algebra.toModule.{u2, u1} R (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (CommRing.toCommSemiring.{u2} R _inst_3) (Module.End.semiring.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (Module.instAlgebraEndToSemiringSemiring.{u2, u1} R M (CommRing.toCommSemiring.{u2} R _inst_3) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4)))))) (DistribMulActionHomClass.toSMulHomClass.{max (max u3 u1) u2, u2, max u3 u2, u1} (AlgHom.{u2, max u3 u2, u1} R (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (CommRing.toCommSemiring.{u2} R _inst_3) (Subalgebra.toSemiring.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))) (Module.End.semiring.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (Subalgebra.instAlgebraSubtypeMemSubalgebraInstMembershipInstSetLikeSubalgebraToSemiring.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))) (Module.instAlgebraEndToSemiringSemiring.{u2, u1} R M (CommRing.toCommSemiring.{u2} R _inst_3) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4)) R (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (AddCommMonoid.toAddMonoid.{max u3 u2} (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (NonUnitalNonAssocSemiring.toAddCommMonoid.{max u3 u2} (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{max u3 u2} (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (Semiring.toNonAssocSemiring.{max u3 u2} (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (Subalgebra.toSemiring.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))))))) (AddCommMonoid.toAddMonoid.{u1} (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (Semiring.toNonAssocSemiring.{u1} (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (Module.End.semiring.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4))))) (Module.toDistribMulAction.{u2, max u3 u2} R (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{max u3 u2} (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{max u3 u2} (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (Semiring.toNonAssocSemiring.{max u3 u2} (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (Subalgebra.toSemiring.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))))) (Algebra.toModule.{u2, max u3 u2} R (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (CommRing.toCommSemiring.{u2} R _inst_3) (Subalgebra.toSemiring.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))) (Subalgebra.instAlgebraSubtypeMemSubalgebraInstMembershipInstSetLikeSubalgebraToSemiring.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))))) (Module.toDistribMulAction.{u2, u1} R (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (Semiring.toNonAssocSemiring.{u1} (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (Module.End.semiring.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4)))) (Algebra.toModule.{u2, u1} R (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (CommRing.toCommSemiring.{u2} R _inst_3) (Module.End.semiring.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (Module.instAlgebraEndToSemiringSemiring.{u2, u1} R M (CommRing.toCommSemiring.{u2} R _inst_3) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4))) (NonUnitalAlgHomClass.toDistribMulActionHomClass.{max (max u3 u1) u2, u2, max u3 u2, u1} (AlgHom.{u2, max u3 u2, u1} R (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (CommRing.toCommSemiring.{u2} R _inst_3) (Subalgebra.toSemiring.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))) (Module.End.semiring.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (Subalgebra.instAlgebraSubtypeMemSubalgebraInstMembershipInstSetLikeSubalgebraToSemiring.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))) (Module.instAlgebraEndToSemiringSemiring.{u2, u1} R M (CommRing.toCommSemiring.{u2} R _inst_3) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4)) R (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{max u3 u2} (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (Semiring.toNonAssocSemiring.{max u3 u2} (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (Subalgebra.toSemiring.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))))) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (Semiring.toNonAssocSemiring.{u1} (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (Module.End.semiring.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4))) (Module.toDistribMulAction.{u2, max u3 u2} R (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{max u3 u2} (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{max u3 u2} (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (Semiring.toNonAssocSemiring.{max u3 u2} (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (Subalgebra.toSemiring.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))))) (Algebra.toModule.{u2, max u3 u2} R (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (CommRing.toCommSemiring.{u2} R _inst_3) (Subalgebra.toSemiring.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))) (Subalgebra.instAlgebraSubtypeMemSubalgebraInstMembershipInstSetLikeSubalgebraToSemiring.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))))) (Module.toDistribMulAction.{u2, u1} R (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (Semiring.toNonAssocSemiring.{u1} (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (Module.End.semiring.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4)))) (Algebra.toModule.{u2, u1} R (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (CommRing.toCommSemiring.{u2} R _inst_3) (Module.End.semiring.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (Module.instAlgebraEndToSemiringSemiring.{u2, u1} R M (CommRing.toCommSemiring.{u2} R _inst_3) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4))) (AlgHom.instNonUnitalAlgHomClassToMonoidToMonoidWithZeroToSemiringToNonUnitalNonAssocSemiringToNonAssocSemiringToNonUnitalNonAssocSemiringToNonAssocSemiringToDistribMulActionToAddCommMonoidToModuleToDistribMulActionToAddCommMonoidToModule.{u2, max u3 u2, u1, max (max u3 u1) u2} R (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (CommRing.toCommSemiring.{u2} R _inst_3) (Subalgebra.toSemiring.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))) (Module.End.semiring.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (Subalgebra.instAlgebraSubtypeMemSubalgebraInstMembershipInstSetLikeSubalgebraToSemiring.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))) (Module.instAlgebraEndToSemiringSemiring.{u2, u1} R M (CommRing.toCommSemiring.{u2} R _inst_3) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (AlgHom.{u2, max u3 u2, u1} R (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (CommRing.toCommSemiring.{u2} R _inst_3) (Subalgebra.toSemiring.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))) (Module.End.semiring.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (Subalgebra.instAlgebraSubtypeMemSubalgebraInstMembershipInstSetLikeSubalgebraToSemiring.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))) (Module.instAlgebraEndToSemiringSemiring.{u2, u1} R M (CommRing.toCommSemiring.{u2} R _inst_3) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4)) (AlgHom.algHomClass.{u2, max u3 u2, u1} R (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (CommRing.toCommSemiring.{u2} R _inst_3) (Subalgebra.toSemiring.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))) (Module.End.semiring.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (Subalgebra.instAlgebraSubtypeMemSubalgebraInstMembershipInstSetLikeSubalgebraToSemiring.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))) (Module.instAlgebraEndToSemiringSemiring.{u2, u1} R M (CommRing.toCommSemiring.{u2} R _inst_3) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4)))))) (Matrix.isRepresentation.toEnd.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b hb (fun (a : ι) (b : ι) => _inst_5 a b)) A)
+ forall {ι : Type.{u3}} [_inst_1 : Fintype.{u3} ι] {M : Type.{u1}} [_inst_2 : AddCommGroup.{u1} M] (R : Type.{u2}) [_inst_3 : CommRing.{u2} R] [_inst_4 : Module.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2)] (b : ι -> M) (hb : Eq.{succ u1} (Submodule.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (Submodule.span.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4 (Set.range.{u1, succ u3} M ι b)) (Top.top.{u1} (Submodule.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (Submodule.instTopSubmodule.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4))) [_inst_5 : DecidableEq.{succ u3} ι] (A : Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))), Matrix.Represents.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b) (Subtype.val.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Set.{max u3 u2} (Matrix.{u3, u3, u2} ι ι R)) (Set.instMembershipSet.{max u3 u2} (Matrix.{u3, u3, u2} ι ι R)) x (SetLike.coe.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) A) (FunLike.coe.{max (max (succ u3) (succ u1)) (succ u2), max (succ u3) (succ u2), succ u1} (AlgHom.{u2, max u3 u2, u1} R (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (CommRing.toCommSemiring.{u2} R _inst_3) (Subalgebra.toSemiring.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))) (Module.End.semiring.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (Subalgebra.algebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))) (Module.instAlgebraEndToSemiringSemiring.{u2, u1} R M (CommRing.toCommSemiring.{u2} R _inst_3) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4)) (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (fun (_x : Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) => Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) _x) (SMulHomClass.toFunLike.{max (max u3 u1) u2, u2, max u3 u2, u1} (AlgHom.{u2, max u3 u2, u1} R (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (CommRing.toCommSemiring.{u2} R _inst_3) (Subalgebra.toSemiring.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))) (Module.End.semiring.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (Subalgebra.algebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))) (Module.instAlgebraEndToSemiringSemiring.{u2, u1} R M (CommRing.toCommSemiring.{u2} R _inst_3) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4)) R (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (SMulZeroClass.toSMul.{u2, max u3 u2} R (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (AddMonoid.toZero.{max u3 u2} (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (AddCommMonoid.toAddMonoid.{max u3 u2} (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (NonUnitalNonAssocSemiring.toAddCommMonoid.{max u3 u2} (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{max u3 u2} (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (Semiring.toNonAssocSemiring.{max u3 u2} (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (Subalgebra.toSemiring.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))))))) (DistribSMul.toSMulZeroClass.{u2, max u3 u2} R (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (AddMonoid.toAddZeroClass.{max u3 u2} (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (AddCommMonoid.toAddMonoid.{max u3 u2} (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (NonUnitalNonAssocSemiring.toAddCommMonoid.{max u3 u2} (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{max u3 u2} (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (Semiring.toNonAssocSemiring.{max u3 u2} (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (Subalgebra.toSemiring.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))))))) (DistribMulAction.toDistribSMul.{u2, max u3 u2} R (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (AddCommMonoid.toAddMonoid.{max u3 u2} (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (NonUnitalNonAssocSemiring.toAddCommMonoid.{max u3 u2} (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{max u3 u2} (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (Semiring.toNonAssocSemiring.{max u3 u2} (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (Subalgebra.toSemiring.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))))))) (Module.toDistribMulAction.{u2, max u3 u2} R (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{max u3 u2} (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{max u3 u2} (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (Semiring.toNonAssocSemiring.{max u3 u2} (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (Subalgebra.toSemiring.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))))) (Algebra.toModule.{u2, max u3 u2} R (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (CommRing.toCommSemiring.{u2} R _inst_3) (Subalgebra.toSemiring.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))) (Subalgebra.algebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))))))) (SMulZeroClass.toSMul.{u2, u1} R (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (AddMonoid.toZero.{u1} (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (AddCommMonoid.toAddMonoid.{u1} (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (Semiring.toNonAssocSemiring.{u1} (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (Module.End.semiring.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4)))))) (DistribSMul.toSMulZeroClass.{u2, u1} R (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (AddMonoid.toAddZeroClass.{u1} (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (AddCommMonoid.toAddMonoid.{u1} (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (Semiring.toNonAssocSemiring.{u1} (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (Module.End.semiring.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4)))))) (DistribMulAction.toDistribSMul.{u2, u1} R (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (AddCommMonoid.toAddMonoid.{u1} (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (Semiring.toNonAssocSemiring.{u1} (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (Module.End.semiring.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4))))) (Module.toDistribMulAction.{u2, u1} R (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (Semiring.toNonAssocSemiring.{u1} (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (Module.End.semiring.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4)))) (Algebra.toModule.{u2, u1} R (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (CommRing.toCommSemiring.{u2} R _inst_3) (Module.End.semiring.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (Module.instAlgebraEndToSemiringSemiring.{u2, u1} R M (CommRing.toCommSemiring.{u2} R _inst_3) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4)))))) (DistribMulActionHomClass.toSMulHomClass.{max (max u3 u1) u2, u2, max u3 u2, u1} (AlgHom.{u2, max u3 u2, u1} R (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (CommRing.toCommSemiring.{u2} R _inst_3) (Subalgebra.toSemiring.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))) (Module.End.semiring.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (Subalgebra.algebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))) (Module.instAlgebraEndToSemiringSemiring.{u2, u1} R M (CommRing.toCommSemiring.{u2} R _inst_3) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4)) R (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (AddCommMonoid.toAddMonoid.{max u3 u2} (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (NonUnitalNonAssocSemiring.toAddCommMonoid.{max u3 u2} (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{max u3 u2} (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (Semiring.toNonAssocSemiring.{max u3 u2} (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (Subalgebra.toSemiring.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))))))) (AddCommMonoid.toAddMonoid.{u1} (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (Semiring.toNonAssocSemiring.{u1} (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (Module.End.semiring.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4))))) (Module.toDistribMulAction.{u2, max u3 u2} R (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{max u3 u2} (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{max u3 u2} (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (Semiring.toNonAssocSemiring.{max u3 u2} (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (Subalgebra.toSemiring.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))))) (Algebra.toModule.{u2, max u3 u2} R (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (CommRing.toCommSemiring.{u2} R _inst_3) (Subalgebra.toSemiring.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))) (Subalgebra.algebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))))) (Module.toDistribMulAction.{u2, u1} R (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (Semiring.toNonAssocSemiring.{u1} (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (Module.End.semiring.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4)))) (Algebra.toModule.{u2, u1} R (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (CommRing.toCommSemiring.{u2} R _inst_3) (Module.End.semiring.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (Module.instAlgebraEndToSemiringSemiring.{u2, u1} R M (CommRing.toCommSemiring.{u2} R _inst_3) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4))) (NonUnitalAlgHomClass.toDistribMulActionHomClass.{max (max u3 u1) u2, u2, max u3 u2, u1} (AlgHom.{u2, max u3 u2, u1} R (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (CommRing.toCommSemiring.{u2} R _inst_3) (Subalgebra.toSemiring.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))) (Module.End.semiring.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (Subalgebra.algebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))) (Module.instAlgebraEndToSemiringSemiring.{u2, u1} R M (CommRing.toCommSemiring.{u2} R _inst_3) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4)) R (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{max u3 u2} (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (Semiring.toNonAssocSemiring.{max u3 u2} (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (Subalgebra.toSemiring.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))))) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (Semiring.toNonAssocSemiring.{u1} (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (Module.End.semiring.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4))) (Module.toDistribMulAction.{u2, max u3 u2} R (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{max u3 u2} (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{max u3 u2} (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (Semiring.toNonAssocSemiring.{max u3 u2} (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (Subalgebra.toSemiring.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))))) (Algebra.toModule.{u2, max u3 u2} R (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (CommRing.toCommSemiring.{u2} R _inst_3) (Subalgebra.toSemiring.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))) (Subalgebra.algebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))))) (Module.toDistribMulAction.{u2, u1} R (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (Semiring.toNonAssocSemiring.{u1} (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (Module.End.semiring.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4)))) (Algebra.toModule.{u2, u1} R (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (CommRing.toCommSemiring.{u2} R _inst_3) (Module.End.semiring.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (Module.instAlgebraEndToSemiringSemiring.{u2, u1} R M (CommRing.toCommSemiring.{u2} R _inst_3) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4))) (AlgHom.instNonUnitalAlgHomClassToMonoidToMonoidWithZeroToSemiringToNonUnitalNonAssocSemiringToNonAssocSemiringToNonUnitalNonAssocSemiringToNonAssocSemiringToDistribMulActionToAddCommMonoidToModuleToDistribMulActionToAddCommMonoidToModule.{u2, max u3 u2, u1, max (max u3 u1) u2} R (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (CommRing.toCommSemiring.{u2} R _inst_3) (Subalgebra.toSemiring.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))) (Module.End.semiring.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (Subalgebra.algebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))) (Module.instAlgebraEndToSemiringSemiring.{u2, u1} R M (CommRing.toCommSemiring.{u2} R _inst_3) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (AlgHom.{u2, max u3 u2, u1} R (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (CommRing.toCommSemiring.{u2} R _inst_3) (Subalgebra.toSemiring.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))) (Module.End.semiring.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (Subalgebra.algebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))) (Module.instAlgebraEndToSemiringSemiring.{u2, u1} R M (CommRing.toCommSemiring.{u2} R _inst_3) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4)) (AlgHom.algHomClass.{u2, max u3 u2, u1} R (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (CommRing.toCommSemiring.{u2} R _inst_3) (Subalgebra.toSemiring.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))) (Module.End.semiring.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (Subalgebra.algebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))) (Module.instAlgebraEndToSemiringSemiring.{u2, u1} R M (CommRing.toCommSemiring.{u2} R _inst_3) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4)))))) (Matrix.isRepresentation.toEnd.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b hb (fun (a : ι) (b : ι) => _inst_5 a b)) A)
Case conversion may be inaccurate. Consider using '#align matrix.is_representation.to_End_represents Matrix.isRepresentation.toEnd_representsₓ'. -/
theorem Matrix.isRepresentation.toEnd_represents (A : Matrix.isRepresentation R b) :
(A : Matrix ι ι R).Represents b (Matrix.isRepresentation.toEnd R b hb A) :=
@@ -303,7 +306,7 @@ theorem Matrix.isRepresentation.toEnd_represents (A : Matrix.isRepresentation R
lean 3 declaration is
forall {ι : Type.{u1}} [_inst_1 : Fintype.{u1} ι] {M : Type.{u2}} [_inst_2 : AddCommGroup.{u2} M] (R : Type.{u3}) [_inst_3 : CommRing.{u3} R] [_inst_4 : Module.{u3, u2} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2)] (b : ι -> M) (hb : Eq.{succ u2} (Submodule.{u3, u2} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (Submodule.span.{u3, u2} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4 (Set.range.{u2, succ u1} M ι b)) (Top.top.{u2} (Submodule.{u3, u2} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (Submodule.hasTop.{u3, u2} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4))) [_inst_5 : DecidableEq.{succ u1} ι] (A : coeSort.{succ (max u1 u3), succ (succ (max u1 u3))} (Subalgebra.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.algebra.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) Type.{max u1 u3} (SetLike.hasCoeToSort.{max u1 u3, max u1 u3} (Subalgebra.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.algebra.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.setLike.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.algebra.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))))) (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))) {f : Module.End.{u3, u2} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4}, (Matrix.Represents.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b) ((fun (a : Type.{max u1 u3}) (b : Type.{max u1 u3}) [self : HasLiftT.{succ (max u1 u3), succ (max u1 u3)} a b] => self.0) (coeSort.{succ (max u1 u3), succ (succ (max u1 u3))} (Subalgebra.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.algebra.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) Type.{max u1 u3} (SetLike.hasCoeToSort.{max u1 u3, max u1 u3} (Subalgebra.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.algebra.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.setLike.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.algebra.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))))) (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))) (Matrix.{u1, u1, u3} ι ι R) (HasLiftT.mk.{succ (max u1 u3), succ (max u1 u3)} (coeSort.{succ (max u1 u3), succ (succ (max u1 u3))} (Subalgebra.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.algebra.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) Type.{max u1 u3} (SetLike.hasCoeToSort.{max u1 u3, max u1 u3} (Subalgebra.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.algebra.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.setLike.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.algebra.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))))) (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))) (Matrix.{u1, u1, u3} ι ι R) (CoeTCₓ.coe.{succ (max u1 u3), succ (max u1 u3)} (coeSort.{succ (max u1 u3), succ (succ (max u1 u3))} (Subalgebra.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.algebra.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) Type.{max u1 u3} (SetLike.hasCoeToSort.{max u1 u3, max u1 u3} (Subalgebra.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.algebra.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.setLike.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.algebra.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))))) (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))) (Matrix.{u1, u1, u3} ι ι R) (coeBase.{succ (max u1 u3), succ (max u1 u3)} (coeSort.{succ (max u1 u3), succ (succ (max u1 u3))} (Subalgebra.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.algebra.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) Type.{max u1 u3} (SetLike.hasCoeToSort.{max u1 u3, max u1 u3} (Subalgebra.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.algebra.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.setLike.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.algebra.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))))) (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))) (Matrix.{u1, u1, u3} ι ι R) (coeSubtype.{succ (max u1 u3)} (Matrix.{u1, u1, u3} ι ι R) (fun (x : Matrix.{u1, u1, u3} ι ι R) => Membership.Mem.{max u1 u3, max u1 u3} (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.algebra.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (SetLike.hasMem.{max u1 u3, max u1 u3} (Subalgebra.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.algebra.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.setLike.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.algebra.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))))) x (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))))))) A) f) -> (Eq.{succ u2} (Module.End.{u3, u2} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (coeFn.{max (succ (max u1 u3)) (succ u2), max (succ (max u1 u3)) (succ u2)} (AlgHom.{u3, max u1 u3, u2} R (coeSort.{succ (max u1 u3), succ (succ (max u1 u3))} (Subalgebra.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b)) (Matrix.algebra.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b) (CommRing.toCommSemiring.{u3} R _inst_3) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) Type.{max u1 u3} (SetLike.hasCoeToSort.{max u1 u3, max u1 u3} (Subalgebra.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b)) (Matrix.algebra.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b) (CommRing.toCommSemiring.{u3} R _inst_3) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.setLike.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b)) (Matrix.algebra.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b) (CommRing.toCommSemiring.{u3} R _inst_3) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))))) (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))) (Module.End.{u3, u2} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (CommRing.toCommSemiring.{u3} R _inst_3) (Subalgebra.toSemiring.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b)) (Matrix.algebra.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b) (CommRing.toCommSemiring.{u3} R _inst_3) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))) (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))) (Module.End.semiring.{u3, u2} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (Subalgebra.algebra.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b)) (Matrix.algebra.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b) (CommRing.toCommSemiring.{u3} R _inst_3) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))) (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))) (Module.End.algebra.{u3, u2} R M (CommRing.toCommSemiring.{u3} R _inst_3) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4)) (fun (_x : AlgHom.{u3, max u1 u3, u2} R (coeSort.{succ (max u1 u3), succ (succ (max u1 u3))} (Subalgebra.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b)) (Matrix.algebra.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b) (CommRing.toCommSemiring.{u3} R _inst_3) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) Type.{max u1 u3} (SetLike.hasCoeToSort.{max u1 u3, max u1 u3} (Subalgebra.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b)) (Matrix.algebra.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b) (CommRing.toCommSemiring.{u3} R _inst_3) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.setLike.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b)) (Matrix.algebra.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b) (CommRing.toCommSemiring.{u3} R _inst_3) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))))) (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))) (Module.End.{u3, u2} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (CommRing.toCommSemiring.{u3} R _inst_3) (Subalgebra.toSemiring.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b)) (Matrix.algebra.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b) (CommRing.toCommSemiring.{u3} R _inst_3) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))) (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))) (Module.End.semiring.{u3, u2} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (Subalgebra.algebra.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b)) (Matrix.algebra.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b) (CommRing.toCommSemiring.{u3} R _inst_3) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))) (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))) (Module.End.algebra.{u3, u2} R M (CommRing.toCommSemiring.{u3} R _inst_3) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4)) => (coeSort.{succ (max u1 u3), succ (succ (max u1 u3))} (Subalgebra.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b)) (Matrix.algebra.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b) (CommRing.toCommSemiring.{u3} R _inst_3) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) Type.{max u1 u3} (SetLike.hasCoeToSort.{max u1 u3, max u1 u3} (Subalgebra.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b)) (Matrix.algebra.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b) (CommRing.toCommSemiring.{u3} R _inst_3) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.setLike.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b)) (Matrix.algebra.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b) (CommRing.toCommSemiring.{u3} R _inst_3) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))))) (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))) -> (Module.End.{u3, u2} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4)) ([anonymous].{u3, max u1 u3, u2} R (coeSort.{succ (max u1 u3), succ (succ (max u1 u3))} (Subalgebra.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b)) (Matrix.algebra.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b) (CommRing.toCommSemiring.{u3} R _inst_3) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) Type.{max u1 u3} (SetLike.hasCoeToSort.{max u1 u3, max u1 u3} (Subalgebra.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b)) (Matrix.algebra.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b) (CommRing.toCommSemiring.{u3} R _inst_3) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.setLike.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b)) (Matrix.algebra.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b) (CommRing.toCommSemiring.{u3} R _inst_3) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))))) (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))) (Module.End.{u3, u2} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (CommRing.toCommSemiring.{u3} R _inst_3) (Subalgebra.toSemiring.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b)) (Matrix.algebra.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b) (CommRing.toCommSemiring.{u3} R _inst_3) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))) (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))) (Module.End.semiring.{u3, u2} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (Subalgebra.algebra.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b)) (Matrix.algebra.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b) (CommRing.toCommSemiring.{u3} R _inst_3) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))) (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))) (Module.End.algebra.{u3, u2} R M (CommRing.toCommSemiring.{u3} R _inst_3) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4)) (Matrix.isRepresentation.toEnd.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b hb (fun (a : ι) (b : ι) => _inst_5 a b)) A) f)
but is expected to have type
- forall {ι : Type.{u3}} [_inst_1 : Fintype.{u3} ι] {M : Type.{u1}} [_inst_2 : AddCommGroup.{u1} M] (R : Type.{u2}) [_inst_3 : CommRing.{u2} R] [_inst_4 : Module.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2)] (b : ι -> M) (hb : Eq.{succ u1} (Submodule.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (Submodule.span.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4 (Set.range.{u1, succ u3} M ι b)) (Top.top.{u1} (Submodule.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (Submodule.instTopSubmodule.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4))) [_inst_5 : DecidableEq.{succ u3} ι] (A : Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) {f : Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4}, (Matrix.Represents.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b) (Subtype.val.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Set.{max u3 u2} (Matrix.{u3, u3, u2} ι ι R)) (Set.instMembershipSet.{max u3 u2} (Matrix.{u3, u3, u2} ι ι R)) x (SetLike.coe.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) A) f) -> (Eq.{succ u1} ((fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) => Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) A) (FunLike.coe.{max (max (succ u3) (succ u1)) (succ u2), max (succ u3) (succ u2), succ u1} (AlgHom.{u2, max u3 u2, u1} R (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (CommRing.toCommSemiring.{u2} R _inst_3) (Subalgebra.toSemiring.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))) (Module.End.semiring.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (Subalgebra.instAlgebraSubtypeMemSubalgebraInstMembershipInstSetLikeSubalgebraToSemiring.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))) (Module.instAlgebraEndToSemiringSemiring.{u2, u1} R M (CommRing.toCommSemiring.{u2} R _inst_3) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4)) (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (fun (_x : Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) => Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) _x) (SMulHomClass.toFunLike.{max (max u3 u1) u2, u2, max u3 u2, u1} (AlgHom.{u2, max u3 u2, u1} R (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (CommRing.toCommSemiring.{u2} R _inst_3) (Subalgebra.toSemiring.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))) (Module.End.semiring.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (Subalgebra.instAlgebraSubtypeMemSubalgebraInstMembershipInstSetLikeSubalgebraToSemiring.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))) (Module.instAlgebraEndToSemiringSemiring.{u2, u1} R M (CommRing.toCommSemiring.{u2} R _inst_3) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4)) R (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (SMulZeroClass.toSMul.{u2, max u3 u2} R (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (AddMonoid.toZero.{max u3 u2} (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (AddCommMonoid.toAddMonoid.{max u3 u2} (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (NonUnitalNonAssocSemiring.toAddCommMonoid.{max u3 u2} (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{max u3 u2} (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (Semiring.toNonAssocSemiring.{max u3 u2} (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (Subalgebra.toSemiring.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))))))) (DistribSMul.toSMulZeroClass.{u2, max u3 u2} R (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (AddMonoid.toAddZeroClass.{max u3 u2} (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (AddCommMonoid.toAddMonoid.{max u3 u2} (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (NonUnitalNonAssocSemiring.toAddCommMonoid.{max u3 u2} (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{max u3 u2} (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (Semiring.toNonAssocSemiring.{max u3 u2} (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (Subalgebra.toSemiring.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))))))) (DistribMulAction.toDistribSMul.{u2, max u3 u2} R (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (AddCommMonoid.toAddMonoid.{max u3 u2} (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (NonUnitalNonAssocSemiring.toAddCommMonoid.{max u3 u2} (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{max u3 u2} (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (Semiring.toNonAssocSemiring.{max u3 u2} (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (Subalgebra.toSemiring.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))))))) (Module.toDistribMulAction.{u2, max u3 u2} R (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{max u3 u2} (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{max u3 u2} (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (Semiring.toNonAssocSemiring.{max u3 u2} (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (Subalgebra.toSemiring.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))))) (Algebra.toModule.{u2, max u3 u2} R (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (CommRing.toCommSemiring.{u2} R _inst_3) (Subalgebra.toSemiring.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))) (Subalgebra.instAlgebraSubtypeMemSubalgebraInstMembershipInstSetLikeSubalgebraToSemiring.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))))))) (SMulZeroClass.toSMul.{u2, u1} R (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (AddMonoid.toZero.{u1} (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (AddCommMonoid.toAddMonoid.{u1} (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (Semiring.toNonAssocSemiring.{u1} (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (Module.End.semiring.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4)))))) (DistribSMul.toSMulZeroClass.{u2, u1} R (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (AddMonoid.toAddZeroClass.{u1} (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (AddCommMonoid.toAddMonoid.{u1} (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (Semiring.toNonAssocSemiring.{u1} (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (Module.End.semiring.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4)))))) (DistribMulAction.toDistribSMul.{u2, u1} R (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (AddCommMonoid.toAddMonoid.{u1} (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (Semiring.toNonAssocSemiring.{u1} (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (Module.End.semiring.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4))))) (Module.toDistribMulAction.{u2, u1} R (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (Semiring.toNonAssocSemiring.{u1} (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (Module.End.semiring.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4)))) (Algebra.toModule.{u2, u1} R (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (CommRing.toCommSemiring.{u2} R _inst_3) (Module.End.semiring.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (Module.instAlgebraEndToSemiringSemiring.{u2, u1} R M (CommRing.toCommSemiring.{u2} R _inst_3) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4)))))) (DistribMulActionHomClass.toSMulHomClass.{max (max u3 u1) u2, u2, max u3 u2, u1} (AlgHom.{u2, max u3 u2, u1} R (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (CommRing.toCommSemiring.{u2} R _inst_3) (Subalgebra.toSemiring.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))) (Module.End.semiring.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (Subalgebra.instAlgebraSubtypeMemSubalgebraInstMembershipInstSetLikeSubalgebraToSemiring.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))) (Module.instAlgebraEndToSemiringSemiring.{u2, u1} R M (CommRing.toCommSemiring.{u2} R _inst_3) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4)) R (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (AddCommMonoid.toAddMonoid.{max u3 u2} (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (NonUnitalNonAssocSemiring.toAddCommMonoid.{max u3 u2} (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{max u3 u2} (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (Semiring.toNonAssocSemiring.{max u3 u2} (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (Subalgebra.toSemiring.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))))))) (AddCommMonoid.toAddMonoid.{u1} (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (Semiring.toNonAssocSemiring.{u1} (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (Module.End.semiring.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4))))) (Module.toDistribMulAction.{u2, max u3 u2} R (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{max u3 u2} (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{max u3 u2} (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (Semiring.toNonAssocSemiring.{max u3 u2} (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (Subalgebra.toSemiring.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))))) (Algebra.toModule.{u2, max u3 u2} R (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (CommRing.toCommSemiring.{u2} R _inst_3) (Subalgebra.toSemiring.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))) (Subalgebra.instAlgebraSubtypeMemSubalgebraInstMembershipInstSetLikeSubalgebraToSemiring.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))))) (Module.toDistribMulAction.{u2, u1} R (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (Semiring.toNonAssocSemiring.{u1} (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (Module.End.semiring.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4)))) (Algebra.toModule.{u2, u1} R (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (CommRing.toCommSemiring.{u2} R _inst_3) (Module.End.semiring.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (Module.instAlgebraEndToSemiringSemiring.{u2, u1} R M (CommRing.toCommSemiring.{u2} R _inst_3) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4))) (NonUnitalAlgHomClass.toDistribMulActionHomClass.{max (max u3 u1) u2, u2, max u3 u2, u1} (AlgHom.{u2, max u3 u2, u1} R (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (CommRing.toCommSemiring.{u2} R _inst_3) (Subalgebra.toSemiring.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))) (Module.End.semiring.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (Subalgebra.instAlgebraSubtypeMemSubalgebraInstMembershipInstSetLikeSubalgebraToSemiring.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))) (Module.instAlgebraEndToSemiringSemiring.{u2, u1} R M (CommRing.toCommSemiring.{u2} R _inst_3) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4)) R (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{max u3 u2} (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (Semiring.toNonAssocSemiring.{max u3 u2} (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (Subalgebra.toSemiring.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))))) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (Semiring.toNonAssocSemiring.{u1} (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (Module.End.semiring.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4))) (Module.toDistribMulAction.{u2, max u3 u2} R (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{max u3 u2} (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{max u3 u2} (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (Semiring.toNonAssocSemiring.{max u3 u2} (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (Subalgebra.toSemiring.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))))) (Algebra.toModule.{u2, max u3 u2} R (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (CommRing.toCommSemiring.{u2} R _inst_3) (Subalgebra.toSemiring.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))) (Subalgebra.instAlgebraSubtypeMemSubalgebraInstMembershipInstSetLikeSubalgebraToSemiring.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))))) (Module.toDistribMulAction.{u2, u1} R (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (Semiring.toNonAssocSemiring.{u1} (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (Module.End.semiring.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4)))) (Algebra.toModule.{u2, u1} R (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (CommRing.toCommSemiring.{u2} R _inst_3) (Module.End.semiring.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (Module.instAlgebraEndToSemiringSemiring.{u2, u1} R M (CommRing.toCommSemiring.{u2} R _inst_3) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4))) (AlgHom.instNonUnitalAlgHomClassToMonoidToMonoidWithZeroToSemiringToNonUnitalNonAssocSemiringToNonAssocSemiringToNonUnitalNonAssocSemiringToNonAssocSemiringToDistribMulActionToAddCommMonoidToModuleToDistribMulActionToAddCommMonoidToModule.{u2, max u3 u2, u1, max (max u3 u1) u2} R (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (CommRing.toCommSemiring.{u2} R _inst_3) (Subalgebra.toSemiring.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))) (Module.End.semiring.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (Subalgebra.instAlgebraSubtypeMemSubalgebraInstMembershipInstSetLikeSubalgebraToSemiring.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))) (Module.instAlgebraEndToSemiringSemiring.{u2, u1} R M (CommRing.toCommSemiring.{u2} R _inst_3) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (AlgHom.{u2, max u3 u2, u1} R (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (CommRing.toCommSemiring.{u2} R _inst_3) (Subalgebra.toSemiring.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))) (Module.End.semiring.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (Subalgebra.instAlgebraSubtypeMemSubalgebraInstMembershipInstSetLikeSubalgebraToSemiring.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))) (Module.instAlgebraEndToSemiringSemiring.{u2, u1} R M (CommRing.toCommSemiring.{u2} R _inst_3) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4)) (AlgHom.algHomClass.{u2, max u3 u2, u1} R (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (CommRing.toCommSemiring.{u2} R _inst_3) (Subalgebra.toSemiring.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))) (Module.End.semiring.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (Subalgebra.instAlgebraSubtypeMemSubalgebraInstMembershipInstSetLikeSubalgebraToSemiring.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))) (Module.instAlgebraEndToSemiringSemiring.{u2, u1} R M (CommRing.toCommSemiring.{u2} R _inst_3) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4)))))) (Matrix.isRepresentation.toEnd.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b hb (fun (a : ι) (b : ι) => _inst_5 a b)) A) f)
+ forall {ι : Type.{u3}} [_inst_1 : Fintype.{u3} ι] {M : Type.{u1}} [_inst_2 : AddCommGroup.{u1} M] (R : Type.{u2}) [_inst_3 : CommRing.{u2} R] [_inst_4 : Module.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2)] (b : ι -> M) (hb : Eq.{succ u1} (Submodule.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (Submodule.span.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4 (Set.range.{u1, succ u3} M ι b)) (Top.top.{u1} (Submodule.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (Submodule.instTopSubmodule.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4))) [_inst_5 : DecidableEq.{succ u3} ι] (A : Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) {f : Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4}, (Matrix.Represents.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b) (Subtype.val.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Set.{max u3 u2} (Matrix.{u3, u3, u2} ι ι R)) (Set.instMembershipSet.{max u3 u2} (Matrix.{u3, u3, u2} ι ι R)) x (SetLike.coe.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) A) f) -> (Eq.{succ u1} ((fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) => Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) A) (FunLike.coe.{max (max (succ u3) (succ u1)) (succ u2), max (succ u3) (succ u2), succ u1} (AlgHom.{u2, max u3 u2, u1} R (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (CommRing.toCommSemiring.{u2} R _inst_3) (Subalgebra.toSemiring.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))) (Module.End.semiring.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (Subalgebra.algebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))) (Module.instAlgebraEndToSemiringSemiring.{u2, u1} R M (CommRing.toCommSemiring.{u2} R _inst_3) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4)) (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (fun (_x : Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) => Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) _x) (SMulHomClass.toFunLike.{max (max u3 u1) u2, u2, max u3 u2, u1} (AlgHom.{u2, max u3 u2, u1} R (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (CommRing.toCommSemiring.{u2} R _inst_3) (Subalgebra.toSemiring.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))) (Module.End.semiring.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (Subalgebra.algebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))) (Module.instAlgebraEndToSemiringSemiring.{u2, u1} R M (CommRing.toCommSemiring.{u2} R _inst_3) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4)) R (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (SMulZeroClass.toSMul.{u2, max u3 u2} R (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (AddMonoid.toZero.{max u3 u2} (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (AddCommMonoid.toAddMonoid.{max u3 u2} (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (NonUnitalNonAssocSemiring.toAddCommMonoid.{max u3 u2} (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{max u3 u2} (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (Semiring.toNonAssocSemiring.{max u3 u2} (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (Subalgebra.toSemiring.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))))))) (DistribSMul.toSMulZeroClass.{u2, max u3 u2} R (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (AddMonoid.toAddZeroClass.{max u3 u2} (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (AddCommMonoid.toAddMonoid.{max u3 u2} (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (NonUnitalNonAssocSemiring.toAddCommMonoid.{max u3 u2} (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{max u3 u2} (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (Semiring.toNonAssocSemiring.{max u3 u2} (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (Subalgebra.toSemiring.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))))))) (DistribMulAction.toDistribSMul.{u2, max u3 u2} R (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (AddCommMonoid.toAddMonoid.{max u3 u2} (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (NonUnitalNonAssocSemiring.toAddCommMonoid.{max u3 u2} (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{max u3 u2} (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (Semiring.toNonAssocSemiring.{max u3 u2} (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (Subalgebra.toSemiring.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))))))) (Module.toDistribMulAction.{u2, max u3 u2} R (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{max u3 u2} (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{max u3 u2} (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (Semiring.toNonAssocSemiring.{max u3 u2} (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (Subalgebra.toSemiring.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))))) (Algebra.toModule.{u2, max u3 u2} R (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (CommRing.toCommSemiring.{u2} R _inst_3) (Subalgebra.toSemiring.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))) (Subalgebra.algebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))))))) (SMulZeroClass.toSMul.{u2, u1} R (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (AddMonoid.toZero.{u1} (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (AddCommMonoid.toAddMonoid.{u1} (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (Semiring.toNonAssocSemiring.{u1} (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (Module.End.semiring.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4)))))) (DistribSMul.toSMulZeroClass.{u2, u1} R (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (AddMonoid.toAddZeroClass.{u1} (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (AddCommMonoid.toAddMonoid.{u1} (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (Semiring.toNonAssocSemiring.{u1} (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (Module.End.semiring.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4)))))) (DistribMulAction.toDistribSMul.{u2, u1} R (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (AddCommMonoid.toAddMonoid.{u1} (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (Semiring.toNonAssocSemiring.{u1} (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (Module.End.semiring.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4))))) (Module.toDistribMulAction.{u2, u1} R (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (Semiring.toNonAssocSemiring.{u1} (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (Module.End.semiring.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4)))) (Algebra.toModule.{u2, u1} R (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (CommRing.toCommSemiring.{u2} R _inst_3) (Module.End.semiring.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (Module.instAlgebraEndToSemiringSemiring.{u2, u1} R M (CommRing.toCommSemiring.{u2} R _inst_3) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4)))))) (DistribMulActionHomClass.toSMulHomClass.{max (max u3 u1) u2, u2, max u3 u2, u1} (AlgHom.{u2, max u3 u2, u1} R (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (CommRing.toCommSemiring.{u2} R _inst_3) (Subalgebra.toSemiring.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))) (Module.End.semiring.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (Subalgebra.algebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))) (Module.instAlgebraEndToSemiringSemiring.{u2, u1} R M (CommRing.toCommSemiring.{u2} R _inst_3) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4)) R (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (AddCommMonoid.toAddMonoid.{max u3 u2} (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (NonUnitalNonAssocSemiring.toAddCommMonoid.{max u3 u2} (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{max u3 u2} (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (Semiring.toNonAssocSemiring.{max u3 u2} (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (Subalgebra.toSemiring.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))))))) (AddCommMonoid.toAddMonoid.{u1} (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (Semiring.toNonAssocSemiring.{u1} (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (Module.End.semiring.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4))))) (Module.toDistribMulAction.{u2, max u3 u2} R (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{max u3 u2} (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{max u3 u2} (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (Semiring.toNonAssocSemiring.{max u3 u2} (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (Subalgebra.toSemiring.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))))) (Algebra.toModule.{u2, max u3 u2} R (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (CommRing.toCommSemiring.{u2} R _inst_3) (Subalgebra.toSemiring.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))) (Subalgebra.algebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))))) (Module.toDistribMulAction.{u2, u1} R (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (Semiring.toNonAssocSemiring.{u1} (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (Module.End.semiring.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4)))) (Algebra.toModule.{u2, u1} R (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (CommRing.toCommSemiring.{u2} R _inst_3) (Module.End.semiring.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (Module.instAlgebraEndToSemiringSemiring.{u2, u1} R M (CommRing.toCommSemiring.{u2} R _inst_3) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4))) (NonUnitalAlgHomClass.toDistribMulActionHomClass.{max (max u3 u1) u2, u2, max u3 u2, u1} (AlgHom.{u2, max u3 u2, u1} R (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (CommRing.toCommSemiring.{u2} R _inst_3) (Subalgebra.toSemiring.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))) (Module.End.semiring.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (Subalgebra.algebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))) (Module.instAlgebraEndToSemiringSemiring.{u2, u1} R M (CommRing.toCommSemiring.{u2} R _inst_3) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4)) R (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{max u3 u2} (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (Semiring.toNonAssocSemiring.{max u3 u2} (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (Subalgebra.toSemiring.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))))) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (Semiring.toNonAssocSemiring.{u1} (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (Module.End.semiring.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4))) (Module.toDistribMulAction.{u2, max u3 u2} R (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{max u3 u2} (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{max u3 u2} (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (Semiring.toNonAssocSemiring.{max u3 u2} (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (Subalgebra.toSemiring.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))))) (Algebra.toModule.{u2, max u3 u2} R (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (CommRing.toCommSemiring.{u2} R _inst_3) (Subalgebra.toSemiring.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))) (Subalgebra.algebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))))) (Module.toDistribMulAction.{u2, u1} R (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (Semiring.toNonAssocSemiring.{u1} (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (Module.End.semiring.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4)))) (Algebra.toModule.{u2, u1} R (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (CommRing.toCommSemiring.{u2} R _inst_3) (Module.End.semiring.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (Module.instAlgebraEndToSemiringSemiring.{u2, u1} R M (CommRing.toCommSemiring.{u2} R _inst_3) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4))) (AlgHom.instNonUnitalAlgHomClassToMonoidToMonoidWithZeroToSemiringToNonUnitalNonAssocSemiringToNonAssocSemiringToNonUnitalNonAssocSemiringToNonAssocSemiringToDistribMulActionToAddCommMonoidToModuleToDistribMulActionToAddCommMonoidToModule.{u2, max u3 u2, u1, max (max u3 u1) u2} R (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (CommRing.toCommSemiring.{u2} R _inst_3) (Subalgebra.toSemiring.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))) (Module.End.semiring.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (Subalgebra.algebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))) (Module.instAlgebraEndToSemiringSemiring.{u2, u1} R M (CommRing.toCommSemiring.{u2} R _inst_3) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (AlgHom.{u2, max u3 u2, u1} R (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (CommRing.toCommSemiring.{u2} R _inst_3) (Subalgebra.toSemiring.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))) (Module.End.semiring.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (Subalgebra.algebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))) (Module.instAlgebraEndToSemiringSemiring.{u2, u1} R M (CommRing.toCommSemiring.{u2} R _inst_3) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4)) (AlgHom.algHomClass.{u2, max u3 u2, u1} R (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (CommRing.toCommSemiring.{u2} R _inst_3) (Subalgebra.toSemiring.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))) (Module.End.semiring.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (Subalgebra.algebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))) (Module.instAlgebraEndToSemiringSemiring.{u2, u1} R M (CommRing.toCommSemiring.{u2} R _inst_3) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4)))))) (Matrix.isRepresentation.toEnd.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b hb (fun (a : ι) (b : ι) => _inst_5 a b)) A) f)
Case conversion may be inaccurate. Consider using '#align matrix.is_representation.eq_to_End_of_represents Matrix.isRepresentation.eq_toEnd_of_representsₓ'. -/
theorem Matrix.isRepresentation.eq_toEnd_of_represents (A : Matrix.isRepresentation R b)
{f : Module.End R M} (h : (A : Matrix ι ι R).Represents b f) :
@@ -315,7 +318,7 @@ theorem Matrix.isRepresentation.eq_toEnd_of_represents (A : Matrix.isRepresentat
lean 3 declaration is
forall {ι : Type.{u1}} [_inst_1 : Fintype.{u1} ι] {M : Type.{u2}} [_inst_2 : AddCommGroup.{u2} M] (R : Type.{u3}) [_inst_3 : CommRing.{u3} R] [_inst_4 : Module.{u3, u2} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2)] (b : ι -> M) (hb : Eq.{succ u2} (Submodule.{u3, u2} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (Submodule.span.{u3, u2} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4 (Set.range.{u2, succ u1} M ι b)) (Top.top.{u2} (Submodule.{u3, u2} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (Submodule.hasTop.{u3, u2} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4))) [_inst_5 : DecidableEq.{succ u1} ι] (f : Module.End.{u3, u2} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (I : Ideal.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3))), (LE.le.{u2} (Submodule.{u3, u2} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (Preorder.toHasLe.{u2} (Submodule.{u3, u2} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (PartialOrder.toPreorder.{u2} (Submodule.{u3, u2} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (SetLike.partialOrder.{u2, u2} (Submodule.{u3, u2} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) M (Submodule.setLike.{u3, u2} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4)))) (LinearMap.range.{u3, u3, u2, u2, u2} R R M M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4 _inst_4 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) (Module.End.{u3, u2} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (LinearMap.semilinearMapClass.{u3, u3, u2, u2} R R M M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4 _inst_4 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3))))) (RingHomSurjective.ids.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3))) f) (SMul.smul.{u3, u2} (Ideal.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3))) (Submodule.{u3, u2} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (Submodule.hasSMul'.{u3, u2} R M (CommRing.toCommSemiring.{u3} R _inst_3) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) I (Top.top.{u2} (Submodule.{u3, u2} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (Submodule.hasTop.{u3, u2} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4)))) -> (Exists.{succ (max u1 u3)} (coeSort.{succ (max u1 u3), succ (succ (max u1 u3))} (Subalgebra.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b)) (Matrix.algebra.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b) (CommRing.toCommSemiring.{u3} R _inst_3) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) Type.{max u1 u3} (SetLike.hasCoeToSort.{max u1 u3, max u1 u3} (Subalgebra.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b)) (Matrix.algebra.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b) (CommRing.toCommSemiring.{u3} R _inst_3) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.setLike.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b)) (Matrix.algebra.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b) (CommRing.toCommSemiring.{u3} R _inst_3) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))))) (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))) (fun (M_1 : coeSort.{succ (max u1 u3), succ (succ (max u1 u3))} (Subalgebra.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b)) (Matrix.algebra.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b) (CommRing.toCommSemiring.{u3} R _inst_3) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) Type.{max u1 u3} (SetLike.hasCoeToSort.{max u1 u3, max u1 u3} (Subalgebra.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b)) (Matrix.algebra.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b) (CommRing.toCommSemiring.{u3} R _inst_3) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.setLike.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b)) (Matrix.algebra.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b) (CommRing.toCommSemiring.{u3} R _inst_3) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))))) (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))) => And (Eq.{succ u2} (Module.End.{u3, u2} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (coeFn.{max (succ (max u1 u3)) (succ u2), max (succ (max u1 u3)) (succ u2)} (AlgHom.{u3, max u1 u3, u2} R (coeSort.{succ (max u1 u3), succ (succ (max u1 u3))} (Subalgebra.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b)) (Matrix.algebra.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b) (CommRing.toCommSemiring.{u3} R _inst_3) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) Type.{max u1 u3} (SetLike.hasCoeToSort.{max u1 u3, max u1 u3} (Subalgebra.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b)) (Matrix.algebra.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b) (CommRing.toCommSemiring.{u3} R _inst_3) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.setLike.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b)) (Matrix.algebra.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b) (CommRing.toCommSemiring.{u3} R _inst_3) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))))) (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))) (Module.End.{u3, u2} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (CommRing.toCommSemiring.{u3} R _inst_3) (Subalgebra.toSemiring.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b)) (Matrix.algebra.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b) (CommRing.toCommSemiring.{u3} R _inst_3) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))) (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))) (Module.End.semiring.{u3, u2} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (Subalgebra.algebra.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b)) (Matrix.algebra.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b) (CommRing.toCommSemiring.{u3} R _inst_3) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))) (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))) (Module.End.algebra.{u3, u2} R M (CommRing.toCommSemiring.{u3} R _inst_3) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4)) (fun (_x : AlgHom.{u3, max u1 u3, u2} R (coeSort.{succ (max u1 u3), succ (succ (max u1 u3))} (Subalgebra.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b)) (Matrix.algebra.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b) (CommRing.toCommSemiring.{u3} R _inst_3) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) Type.{max u1 u3} (SetLike.hasCoeToSort.{max u1 u3, max u1 u3} (Subalgebra.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b)) (Matrix.algebra.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b) (CommRing.toCommSemiring.{u3} R _inst_3) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.setLike.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b)) (Matrix.algebra.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b) (CommRing.toCommSemiring.{u3} R _inst_3) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))))) (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))) (Module.End.{u3, u2} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (CommRing.toCommSemiring.{u3} R _inst_3) (Subalgebra.toSemiring.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b)) (Matrix.algebra.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b) (CommRing.toCommSemiring.{u3} R _inst_3) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))) (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))) (Module.End.semiring.{u3, u2} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (Subalgebra.algebra.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b)) (Matrix.algebra.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b) (CommRing.toCommSemiring.{u3} R _inst_3) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))) (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))) (Module.End.algebra.{u3, u2} R M (CommRing.toCommSemiring.{u3} R _inst_3) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4)) => (coeSort.{succ (max u1 u3), succ (succ (max u1 u3))} (Subalgebra.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b)) (Matrix.algebra.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b) (CommRing.toCommSemiring.{u3} R _inst_3) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) Type.{max u1 u3} (SetLike.hasCoeToSort.{max u1 u3, max u1 u3} (Subalgebra.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b)) (Matrix.algebra.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b) (CommRing.toCommSemiring.{u3} R _inst_3) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.setLike.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b)) (Matrix.algebra.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b) (CommRing.toCommSemiring.{u3} R _inst_3) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))))) (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))) -> (Module.End.{u3, u2} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4)) ([anonymous].{u3, max u1 u3, u2} R (coeSort.{succ (max u1 u3), succ (succ (max u1 u3))} (Subalgebra.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b)) (Matrix.algebra.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b) (CommRing.toCommSemiring.{u3} R _inst_3) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) Type.{max u1 u3} (SetLike.hasCoeToSort.{max u1 u3, max u1 u3} (Subalgebra.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b)) (Matrix.algebra.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b) (CommRing.toCommSemiring.{u3} R _inst_3) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.setLike.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b)) (Matrix.algebra.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b) (CommRing.toCommSemiring.{u3} R _inst_3) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))))) (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))) (Module.End.{u3, u2} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (CommRing.toCommSemiring.{u3} R _inst_3) (Subalgebra.toSemiring.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b)) (Matrix.algebra.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b) (CommRing.toCommSemiring.{u3} R _inst_3) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))) (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))) (Module.End.semiring.{u3, u2} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (Subalgebra.algebra.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b)) (Matrix.algebra.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b) (CommRing.toCommSemiring.{u3} R _inst_3) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))) (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))) (Module.End.algebra.{u3, u2} R M (CommRing.toCommSemiring.{u3} R _inst_3) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4)) (Matrix.isRepresentation.toEnd.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b hb (fun (a : ι) (b : ι) => _inst_5 a b)) M_1) f) (forall (i : ι) (j : ι), Membership.Mem.{u3, u3} R (Ideal.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3))) (SetLike.hasMem.{u3, u3} (Ideal.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3))) R (Submodule.setLike.{u3, u3} R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3))))) (Semiring.toModule.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3))))) (Subtype.val.{succ (max u1 u3)} (Matrix.{u1, u1, u3} ι ι R) (fun (x : Matrix.{u1, u1, u3} ι ι R) => Membership.Mem.{max u1 u3, max u1 u3} (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b)) (Matrix.algebra.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b) (CommRing.toCommSemiring.{u3} R _inst_3) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (SetLike.hasMem.{max u1 u3, max u1 u3} (Subalgebra.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b)) (Matrix.algebra.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b) (CommRing.toCommSemiring.{u3} R _inst_3) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.setLike.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b)) (Matrix.algebra.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b) (CommRing.toCommSemiring.{u3} R _inst_3) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))))) x (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))) M_1 i j) I)))
but is expected to have type
- forall {ι : Type.{u1}} [_inst_1 : Fintype.{u1} ι] {M : Type.{u2}} [_inst_2 : AddCommGroup.{u2} M] (R : Type.{u3}) [_inst_3 : CommRing.{u3} R] [_inst_4 : Module.{u3, u2} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2)] (b : ι -> M) (hb : Eq.{succ u2} (Submodule.{u3, u2} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (Submodule.span.{u3, u2} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4 (Set.range.{u2, succ u1} M ι b)) (Top.top.{u2} (Submodule.{u3, u2} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (Submodule.instTopSubmodule.{u3, u2} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4))) [_inst_5 : DecidableEq.{succ u1} ι] (f : Module.End.{u3, u2} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (I : Ideal.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))), (LE.le.{u2} (Submodule.{u3, u2} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (Preorder.toLE.{u2} (Submodule.{u3, u2} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (PartialOrder.toPreorder.{u2} (Submodule.{u3, u2} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (OmegaCompletePartialOrder.toPartialOrder.{u2} (Submodule.{u3, u2} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (CompleteLattice.instOmegaCompletePartialOrder.{u2} (Submodule.{u3, u2} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (Submodule.completeLattice.{u3, u2} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4))))) (LinearMap.range.{u3, u3, u2, u2, u2} R R M M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4 _inst_4 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (Module.End.{u3, u2} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (LinearMap.semilinearMapClass.{u3, u3, u2, u2} R R M M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4 _inst_4 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))))) (RingHomSurjective.ids.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))) f) (HSMul.hSMul.{u3, u2, u2} (Ideal.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))) (Submodule.{u3, u2} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (Submodule.{u3, u2} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (instHSMul.{u3, u2} (Ideal.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))) (Submodule.{u3, u2} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (Submodule.hasSMul'.{u3, u2} R M (CommRing.toCommSemiring.{u3} R _inst_3) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4)) I (Top.top.{u2} (Submodule.{u3, u2} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (Submodule.instTopSubmodule.{u3, u2} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4)))) -> (Exists.{max (succ u1) (succ u3)} (Subtype.{succ (max u1 u3)} (Matrix.{u1, u1, u3} ι ι R) (fun (x : Matrix.{u1, u1, u3} ι ι R) => Membership.mem.{max u1 u3, max u1 u3} (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.{u3, max u3 u1} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (SetLike.instMembership.{max u1 u3, max u1 u3} (Subalgebra.{u3, max u3 u1} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))))) x (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (fun (M_1 : Subtype.{succ (max u1 u3)} (Matrix.{u1, u1, u3} ι ι R) (fun (x : Matrix.{u1, u1, u3} ι ι R) => Membership.mem.{max u1 u3, max u1 u3} (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.{u3, max u3 u1} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (SetLike.instMembership.{max u1 u3, max u1 u3} (Subalgebra.{u3, max u3 u1} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))))) x (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) => And (Eq.{succ u2} ((fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : Subtype.{succ (max u1 u3)} (Matrix.{u1, u1, u3} ι ι R) (fun (x : Matrix.{u1, u1, u3} ι ι R) => Membership.mem.{max u1 u3, max u1 u3} (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.{u3, max u3 u1} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (SetLike.instMembership.{max u1 u3, max u1 u3} (Subalgebra.{u3, max u3 u1} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))))) x (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) => Module.End.{u3, u2} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) M_1) (FunLike.coe.{max (max (succ u1) (succ u2)) (succ u3), max (succ u1) (succ u3), succ u2} (AlgHom.{u3, max u1 u3, u2} R (Subtype.{succ (max u1 u3)} (Matrix.{u1, u1, u3} ι ι R) (fun (x : Matrix.{u1, u1, u3} ι ι R) => Membership.mem.{max u1 u3, max u1 u3} (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.{u3, max u3 u1} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (SetLike.instMembership.{max u1 u3, max u1 u3} (Subalgebra.{u3, max u3 u1} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))))) x (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (Module.End.{u3, u2} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (CommRing.toCommSemiring.{u3} R _inst_3) (Subalgebra.toSemiring.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))) (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))) (Module.End.semiring.{u3, u2} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (Subalgebra.instAlgebraSubtypeMemSubalgebraInstMembershipInstSetLikeSubalgebraToSemiring.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))) (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))) (Module.instAlgebraEndToSemiringSemiring.{u3, u2} R M (CommRing.toCommSemiring.{u3} R _inst_3) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4)) (Subtype.{succ (max u1 u3)} (Matrix.{u1, u1, u3} ι ι R) (fun (x : Matrix.{u1, u1, u3} ι ι R) => Membership.mem.{max u1 u3, max u1 u3} (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.{u3, max u3 u1} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (SetLike.instMembership.{max u1 u3, max u1 u3} (Subalgebra.{u3, max u3 u1} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))))) x (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (fun (_x : Subtype.{succ (max u1 u3)} (Matrix.{u1, u1, u3} ι ι R) (fun (x : Matrix.{u1, u1, u3} ι ι R) => Membership.mem.{max u1 u3, max u1 u3} (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.{u3, max u3 u1} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (SetLike.instMembership.{max u1 u3, max u1 u3} (Subalgebra.{u3, max u3 u1} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))))) x (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : Subtype.{succ (max u1 u3)} (Matrix.{u1, u1, u3} ι ι R) (fun (x : Matrix.{u1, u1, u3} ι ι R) => Membership.mem.{max u1 u3, max u1 u3} (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.{u3, max u3 u1} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (SetLike.instMembership.{max u1 u3, max u1 u3} (Subalgebra.{u3, max u3 u1} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))))) x (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) => Module.End.{u3, u2} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) _x) (SMulHomClass.toFunLike.{max (max u1 u2) u3, u3, max u1 u3, u2} (AlgHom.{u3, max u1 u3, u2} R (Subtype.{succ (max u1 u3)} (Matrix.{u1, u1, u3} ι ι R) (fun (x : Matrix.{u1, u1, u3} ι ι R) => Membership.mem.{max u1 u3, max u1 u3} (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.{u3, max u3 u1} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (SetLike.instMembership.{max u1 u3, max u1 u3} (Subalgebra.{u3, max u3 u1} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))))) x (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (Module.End.{u3, u2} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (CommRing.toCommSemiring.{u3} R _inst_3) (Subalgebra.toSemiring.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))) (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))) (Module.End.semiring.{u3, u2} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (Subalgebra.instAlgebraSubtypeMemSubalgebraInstMembershipInstSetLikeSubalgebraToSemiring.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))) (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))) (Module.instAlgebraEndToSemiringSemiring.{u3, u2} R M (CommRing.toCommSemiring.{u3} R _inst_3) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4)) R (Subtype.{succ (max u1 u3)} (Matrix.{u1, u1, u3} ι ι R) (fun (x : Matrix.{u1, u1, u3} ι ι R) => Membership.mem.{max u1 u3, max u1 u3} (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.{u3, max u3 u1} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (SetLike.instMembership.{max u1 u3, max u1 u3} (Subalgebra.{u3, max u3 u1} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))))) x (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (Module.End.{u3, u2} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (SMulZeroClass.toSMul.{u3, max u1 u3} R (Subtype.{succ (max u1 u3)} (Matrix.{u1, u1, u3} ι ι R) (fun (x : Matrix.{u1, u1, u3} ι ι R) => Membership.mem.{max u1 u3, max u1 u3} (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.{u3, max u3 u1} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (SetLike.instMembership.{max u1 u3, max u1 u3} (Subalgebra.{u3, max u3 u1} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))))) x (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (AddMonoid.toZero.{max u1 u3} (Subtype.{succ (max u1 u3)} (Matrix.{u1, u1, u3} ι ι R) (fun (x : Matrix.{u1, u1, u3} ι ι R) => Membership.mem.{max u1 u3, max u1 u3} (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.{u3, max u3 u1} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (SetLike.instMembership.{max u1 u3, max u1 u3} (Subalgebra.{u3, max u3 u1} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))))) x (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (AddCommMonoid.toAddMonoid.{max u1 u3} (Subtype.{succ (max u1 u3)} (Matrix.{u1, u1, u3} ι ι R) (fun (x : Matrix.{u1, u1, u3} ι ι R) => Membership.mem.{max u1 u3, max u1 u3} (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.{u3, max u3 u1} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (SetLike.instMembership.{max u1 u3, max u1 u3} (Subalgebra.{u3, max u3 u1} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))))) x (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (NonUnitalNonAssocSemiring.toAddCommMonoid.{max u1 u3} (Subtype.{succ (max u1 u3)} (Matrix.{u1, u1, u3} ι ι R) (fun (x : Matrix.{u1, u1, u3} ι ι R) => Membership.mem.{max u1 u3, max u1 u3} (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.{u3, max u3 u1} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (SetLike.instMembership.{max u1 u3, max u1 u3} (Subalgebra.{u3, max u3 u1} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))))) x (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{max u1 u3} (Subtype.{succ (max u1 u3)} (Matrix.{u1, u1, u3} ι ι R) (fun (x : Matrix.{u1, u1, u3} ι ι R) => Membership.mem.{max u1 u3, max u1 u3} (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.{u3, max u3 u1} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (SetLike.instMembership.{max u1 u3, max u1 u3} (Subalgebra.{u3, max u3 u1} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))))) x (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (Semiring.toNonAssocSemiring.{max u1 u3} (Subtype.{succ (max u1 u3)} (Matrix.{u1, u1, u3} ι ι R) (fun (x : Matrix.{u1, u1, u3} ι ι R) => Membership.mem.{max u1 u3, max u1 u3} (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.{u3, max u3 u1} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (SetLike.instMembership.{max u1 u3, max u1 u3} (Subalgebra.{u3, max u3 u1} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))))) x (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (Subalgebra.toSemiring.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))) (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))))))) (DistribSMul.toSMulZeroClass.{u3, max u1 u3} R (Subtype.{succ (max u1 u3)} (Matrix.{u1, u1, u3} ι ι R) (fun (x : Matrix.{u1, u1, u3} ι ι R) => Membership.mem.{max u1 u3, max u1 u3} (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.{u3, max u3 u1} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (SetLike.instMembership.{max u1 u3, max u1 u3} (Subalgebra.{u3, max u3 u1} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))))) x (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (AddMonoid.toAddZeroClass.{max u1 u3} (Subtype.{succ (max u1 u3)} (Matrix.{u1, u1, u3} ι ι R) (fun (x : Matrix.{u1, u1, u3} ι ι R) => Membership.mem.{max u1 u3, max u1 u3} (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.{u3, max u3 u1} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (SetLike.instMembership.{max u1 u3, max u1 u3} (Subalgebra.{u3, max u3 u1} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))))) x (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (AddCommMonoid.toAddMonoid.{max u1 u3} (Subtype.{succ (max u1 u3)} (Matrix.{u1, u1, u3} ι ι R) (fun (x : Matrix.{u1, u1, u3} ι ι R) => Membership.mem.{max u1 u3, max u1 u3} (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.{u3, max u3 u1} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (SetLike.instMembership.{max u1 u3, max u1 u3} (Subalgebra.{u3, max u3 u1} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))))) x (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (NonUnitalNonAssocSemiring.toAddCommMonoid.{max u1 u3} (Subtype.{succ (max u1 u3)} (Matrix.{u1, u1, u3} ι ι R) (fun (x : Matrix.{u1, u1, u3} ι ι R) => Membership.mem.{max u1 u3, max u1 u3} (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.{u3, max u3 u1} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (SetLike.instMembership.{max u1 u3, max u1 u3} (Subalgebra.{u3, max u3 u1} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))))) x (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{max u1 u3} (Subtype.{succ (max u1 u3)} (Matrix.{u1, u1, u3} ι ι R) (fun (x : Matrix.{u1, u1, u3} ι ι R) => Membership.mem.{max u1 u3, max u1 u3} (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.{u3, max u3 u1} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (SetLike.instMembership.{max u1 u3, max u1 u3} (Subalgebra.{u3, max u3 u1} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))))) x (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (Semiring.toNonAssocSemiring.{max u1 u3} (Subtype.{succ (max u1 u3)} (Matrix.{u1, u1, u3} ι ι R) (fun (x : Matrix.{u1, u1, u3} ι ι R) => Membership.mem.{max u1 u3, max u1 u3} (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.{u3, max u3 u1} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (SetLike.instMembership.{max u1 u3, max u1 u3} (Subalgebra.{u3, max u3 u1} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))))) x (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (Subalgebra.toSemiring.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))) (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))))))) (DistribMulAction.toDistribSMul.{u3, max u1 u3} R (Subtype.{succ (max u1 u3)} (Matrix.{u1, u1, u3} ι ι R) (fun (x : Matrix.{u1, u1, u3} ι ι R) => Membership.mem.{max u1 u3, max u1 u3} (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.{u3, max u3 u1} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (SetLike.instMembership.{max u1 u3, max u1 u3} (Subalgebra.{u3, max u3 u1} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))))) x (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (AddCommMonoid.toAddMonoid.{max u1 u3} (Subtype.{succ (max u1 u3)} (Matrix.{u1, u1, u3} ι ι R) (fun (x : Matrix.{u1, u1, u3} ι ι R) => Membership.mem.{max u1 u3, max u1 u3} (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.{u3, max u3 u1} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (SetLike.instMembership.{max u1 u3, max u1 u3} (Subalgebra.{u3, max u3 u1} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))))) x (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (NonUnitalNonAssocSemiring.toAddCommMonoid.{max u1 u3} (Subtype.{succ (max u1 u3)} (Matrix.{u1, u1, u3} ι ι R) (fun (x : Matrix.{u1, u1, u3} ι ι R) => Membership.mem.{max u1 u3, max u1 u3} (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.{u3, max u3 u1} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (SetLike.instMembership.{max u1 u3, max u1 u3} (Subalgebra.{u3, max u3 u1} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))))) x (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{max u1 u3} (Subtype.{succ (max u1 u3)} (Matrix.{u1, u1, u3} ι ι R) (fun (x : Matrix.{u1, u1, u3} ι ι R) => Membership.mem.{max u1 u3, max u1 u3} (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.{u3, max u3 u1} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (SetLike.instMembership.{max u1 u3, max u1 u3} (Subalgebra.{u3, max u3 u1} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))))) x (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (Semiring.toNonAssocSemiring.{max u1 u3} (Subtype.{succ (max u1 u3)} (Matrix.{u1, u1, u3} ι ι R) (fun (x : Matrix.{u1, u1, u3} ι ι R) => Membership.mem.{max u1 u3, max u1 u3} (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.{u3, max u3 u1} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (SetLike.instMembership.{max u1 u3, max u1 u3} (Subalgebra.{u3, max u3 u1} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))))) x (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (Subalgebra.toSemiring.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))) (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))))))) (Module.toDistribMulAction.{u3, max u1 u3} R (Subtype.{succ (max u1 u3)} (Matrix.{u1, u1, u3} ι ι R) (fun (x : Matrix.{u1, u1, u3} ι ι R) => Membership.mem.{max u1 u3, max u1 u3} (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.{u3, max u3 u1} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (SetLike.instMembership.{max u1 u3, max u1 u3} (Subalgebra.{u3, max u3 u1} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))))) x (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{max u1 u3} (Subtype.{succ (max u1 u3)} (Matrix.{u1, u1, u3} ι ι R) (fun (x : Matrix.{u1, u1, u3} ι ι R) => Membership.mem.{max u1 u3, max u1 u3} (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.{u3, max u3 u1} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (SetLike.instMembership.{max u1 u3, max u1 u3} (Subalgebra.{u3, max u3 u1} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))))) x (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{max u1 u3} (Subtype.{succ (max u1 u3)} (Matrix.{u1, u1, u3} ι ι R) (fun (x : Matrix.{u1, u1, u3} ι ι R) => Membership.mem.{max u1 u3, max u1 u3} (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.{u3, max u3 u1} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (SetLike.instMembership.{max u1 u3, max u1 u3} (Subalgebra.{u3, max u3 u1} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))))) x (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (Semiring.toNonAssocSemiring.{max u1 u3} (Subtype.{succ (max u1 u3)} (Matrix.{u1, u1, u3} ι ι R) (fun (x : Matrix.{u1, u1, u3} ι ι R) => Membership.mem.{max u1 u3, max u1 u3} (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.{u3, max u3 u1} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (SetLike.instMembership.{max u1 u3, max u1 u3} (Subalgebra.{u3, max u3 u1} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))))) x (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (Subalgebra.toSemiring.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))) (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))))) (Algebra.toModule.{u3, max u1 u3} R (Subtype.{succ (max u1 u3)} (Matrix.{u1, u1, u3} ι ι R) (fun (x : Matrix.{u1, u1, u3} ι ι R) => Membership.mem.{max u1 u3, max u1 u3} (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.{u3, max u3 u1} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (SetLike.instMembership.{max u1 u3, max u1 u3} (Subalgebra.{u3, max u3 u1} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))))) x (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (CommRing.toCommSemiring.{u3} R _inst_3) (Subalgebra.toSemiring.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))) (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))) (Subalgebra.instAlgebraSubtypeMemSubalgebraInstMembershipInstSetLikeSubalgebraToSemiring.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))) (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))))))) (SMulZeroClass.toSMul.{u3, u2} R (Module.End.{u3, u2} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (AddMonoid.toZero.{u2} (Module.End.{u3, u2} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (AddCommMonoid.toAddMonoid.{u2} (Module.End.{u3, u2} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} (Module.End.{u3, u2} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} (Module.End.{u3, u2} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (Semiring.toNonAssocSemiring.{u2} (Module.End.{u3, u2} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (Module.End.semiring.{u3, u2} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4)))))) (DistribSMul.toSMulZeroClass.{u3, u2} R (Module.End.{u3, u2} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (AddMonoid.toAddZeroClass.{u2} (Module.End.{u3, u2} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (AddCommMonoid.toAddMonoid.{u2} (Module.End.{u3, u2} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} (Module.End.{u3, u2} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} (Module.End.{u3, u2} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (Semiring.toNonAssocSemiring.{u2} (Module.End.{u3, u2} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (Module.End.semiring.{u3, u2} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4)))))) (DistribMulAction.toDistribSMul.{u3, u2} R (Module.End.{u3, u2} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (AddCommMonoid.toAddMonoid.{u2} (Module.End.{u3, u2} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} (Module.End.{u3, u2} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} (Module.End.{u3, u2} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (Semiring.toNonAssocSemiring.{u2} (Module.End.{u3, u2} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (Module.End.semiring.{u3, u2} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4))))) (Module.toDistribMulAction.{u3, u2} R (Module.End.{u3, u2} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} (Module.End.{u3, u2} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} (Module.End.{u3, u2} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (Semiring.toNonAssocSemiring.{u2} (Module.End.{u3, u2} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (Module.End.semiring.{u3, u2} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4)))) (Algebra.toModule.{u3, u2} R (Module.End.{u3, u2} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (CommRing.toCommSemiring.{u3} R _inst_3) (Module.End.semiring.{u3, u2} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (Module.instAlgebraEndToSemiringSemiring.{u3, u2} R M (CommRing.toCommSemiring.{u3} R _inst_3) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4)))))) (DistribMulActionHomClass.toSMulHomClass.{max (max u1 u2) u3, u3, max u1 u3, u2} (AlgHom.{u3, max u1 u3, u2} R (Subtype.{succ (max u1 u3)} (Matrix.{u1, u1, u3} ι ι R) (fun (x : Matrix.{u1, u1, u3} ι ι R) => Membership.mem.{max u1 u3, max u1 u3} (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.{u3, max u3 u1} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (SetLike.instMembership.{max u1 u3, max u1 u3} (Subalgebra.{u3, max u3 u1} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))))) x (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (Module.End.{u3, u2} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (CommRing.toCommSemiring.{u3} R _inst_3) (Subalgebra.toSemiring.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))) (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))) (Module.End.semiring.{u3, u2} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (Subalgebra.instAlgebraSubtypeMemSubalgebraInstMembershipInstSetLikeSubalgebraToSemiring.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))) (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))) (Module.instAlgebraEndToSemiringSemiring.{u3, u2} R M (CommRing.toCommSemiring.{u3} R _inst_3) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4)) R (Subtype.{succ (max u1 u3)} (Matrix.{u1, u1, u3} ι ι R) (fun (x : Matrix.{u1, u1, u3} ι ι R) => Membership.mem.{max u1 u3, max u1 u3} (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.{u3, max u3 u1} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (SetLike.instMembership.{max u1 u3, max u1 u3} (Subalgebra.{u3, max u3 u1} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))))) x (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (Module.End.{u3, u2} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (AddCommMonoid.toAddMonoid.{max u1 u3} (Subtype.{succ (max u1 u3)} (Matrix.{u1, u1, u3} ι ι R) (fun (x : Matrix.{u1, u1, u3} ι ι R) => Membership.mem.{max u1 u3, max u1 u3} (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.{u3, max u3 u1} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (SetLike.instMembership.{max u1 u3, max u1 u3} (Subalgebra.{u3, max u3 u1} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))))) x (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (NonUnitalNonAssocSemiring.toAddCommMonoid.{max u1 u3} (Subtype.{succ (max u1 u3)} (Matrix.{u1, u1, u3} ι ι R) (fun (x : Matrix.{u1, u1, u3} ι ι R) => Membership.mem.{max u1 u3, max u1 u3} (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.{u3, max u3 u1} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (SetLike.instMembership.{max u1 u3, max u1 u3} (Subalgebra.{u3, max u3 u1} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))))) x (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{max u1 u3} (Subtype.{succ (max u1 u3)} (Matrix.{u1, u1, u3} ι ι R) (fun (x : Matrix.{u1, u1, u3} ι ι R) => Membership.mem.{max u1 u3, max u1 u3} (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.{u3, max u3 u1} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (SetLike.instMembership.{max u1 u3, max u1 u3} (Subalgebra.{u3, max u3 u1} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))))) x (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (Semiring.toNonAssocSemiring.{max u1 u3} (Subtype.{succ (max u1 u3)} (Matrix.{u1, u1, u3} ι ι R) (fun (x : Matrix.{u1, u1, u3} ι ι R) => Membership.mem.{max u1 u3, max u1 u3} (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.{u3, max u3 u1} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (SetLike.instMembership.{max u1 u3, max u1 u3} (Subalgebra.{u3, max u3 u1} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))))) x (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (Subalgebra.toSemiring.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))) (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))))))) (AddCommMonoid.toAddMonoid.{u2} (Module.End.{u3, u2} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} (Module.End.{u3, u2} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} (Module.End.{u3, u2} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (Semiring.toNonAssocSemiring.{u2} (Module.End.{u3, u2} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (Module.End.semiring.{u3, u2} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4))))) (Module.toDistribMulAction.{u3, max u1 u3} R (Subtype.{succ (max u1 u3)} (Matrix.{u1, u1, u3} ι ι R) (fun (x : Matrix.{u1, u1, u3} ι ι R) => Membership.mem.{max u1 u3, max u1 u3} (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.{u3, max u3 u1} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (SetLike.instMembership.{max u1 u3, max u1 u3} (Subalgebra.{u3, max u3 u1} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))))) x (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{max u1 u3} (Subtype.{succ (max u1 u3)} (Matrix.{u1, u1, u3} ι ι R) (fun (x : Matrix.{u1, u1, u3} ι ι R) => Membership.mem.{max u1 u3, max u1 u3} (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.{u3, max u3 u1} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (SetLike.instMembership.{max u1 u3, max u1 u3} (Subalgebra.{u3, max u3 u1} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))))) x (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{max u1 u3} (Subtype.{succ (max u1 u3)} (Matrix.{u1, u1, u3} ι ι R) (fun (x : Matrix.{u1, u1, u3} ι ι R) => Membership.mem.{max u1 u3, max u1 u3} (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.{u3, max u3 u1} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (SetLike.instMembership.{max u1 u3, max u1 u3} (Subalgebra.{u3, max u3 u1} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))))) x (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (Semiring.toNonAssocSemiring.{max u1 u3} (Subtype.{succ (max u1 u3)} (Matrix.{u1, u1, u3} ι ι R) (fun (x : Matrix.{u1, u1, u3} ι ι R) => Membership.mem.{max u1 u3, max u1 u3} (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.{u3, max u3 u1} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (SetLike.instMembership.{max u1 u3, max u1 u3} (Subalgebra.{u3, max u3 u1} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))))) x (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (Subalgebra.toSemiring.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))) (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))))) (Algebra.toModule.{u3, max u1 u3} R (Subtype.{succ (max u1 u3)} (Matrix.{u1, u1, u3} ι ι R) (fun (x : Matrix.{u1, u1, u3} ι ι R) => Membership.mem.{max u1 u3, max u1 u3} (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.{u3, max u3 u1} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (SetLike.instMembership.{max u1 u3, max u1 u3} (Subalgebra.{u3, max u3 u1} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))))) x (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (CommRing.toCommSemiring.{u3} R _inst_3) (Subalgebra.toSemiring.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))) (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))) (Subalgebra.instAlgebraSubtypeMemSubalgebraInstMembershipInstSetLikeSubalgebraToSemiring.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))) (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))))) (Module.toDistribMulAction.{u3, u2} R (Module.End.{u3, u2} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} (Module.End.{u3, u2} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} (Module.End.{u3, u2} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (Semiring.toNonAssocSemiring.{u2} (Module.End.{u3, u2} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (Module.End.semiring.{u3, u2} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4)))) (Algebra.toModule.{u3, u2} R (Module.End.{u3, u2} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (CommRing.toCommSemiring.{u3} R _inst_3) (Module.End.semiring.{u3, u2} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (Module.instAlgebraEndToSemiringSemiring.{u3, u2} R M (CommRing.toCommSemiring.{u3} R _inst_3) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4))) (NonUnitalAlgHomClass.toDistribMulActionHomClass.{max (max u1 u2) u3, u3, max u1 u3, u2} (AlgHom.{u3, max u1 u3, u2} R (Subtype.{succ (max u1 u3)} (Matrix.{u1, u1, u3} ι ι R) (fun (x : Matrix.{u1, u1, u3} ι ι R) => Membership.mem.{max u1 u3, max u1 u3} (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.{u3, max u3 u1} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (SetLike.instMembership.{max u1 u3, max u1 u3} (Subalgebra.{u3, max u3 u1} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))))) x (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (Module.End.{u3, u2} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (CommRing.toCommSemiring.{u3} R _inst_3) (Subalgebra.toSemiring.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))) (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))) (Module.End.semiring.{u3, u2} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (Subalgebra.instAlgebraSubtypeMemSubalgebraInstMembershipInstSetLikeSubalgebraToSemiring.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))) (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))) (Module.instAlgebraEndToSemiringSemiring.{u3, u2} R M (CommRing.toCommSemiring.{u3} R _inst_3) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4)) R (Subtype.{succ (max u1 u3)} (Matrix.{u1, u1, u3} ι ι R) (fun (x : Matrix.{u1, u1, u3} ι ι R) => Membership.mem.{max u1 u3, max u1 u3} (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.{u3, max u3 u1} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (SetLike.instMembership.{max u1 u3, max u1 u3} (Subalgebra.{u3, max u3 u1} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))))) x (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (Module.End.{u3, u2} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{max u1 u3} (Subtype.{succ (max u1 u3)} (Matrix.{u1, u1, u3} ι ι R) (fun (x : Matrix.{u1, u1, u3} ι ι R) => Membership.mem.{max u1 u3, max u1 u3} (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.{u3, max u3 u1} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (SetLike.instMembership.{max u1 u3, max u1 u3} (Subalgebra.{u3, max u3 u1} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))))) x (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (Semiring.toNonAssocSemiring.{max u1 u3} (Subtype.{succ (max u1 u3)} (Matrix.{u1, u1, u3} ι ι R) (fun (x : Matrix.{u1, u1, u3} ι ι R) => Membership.mem.{max u1 u3, max u1 u3} (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.{u3, max u3 u1} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (SetLike.instMembership.{max u1 u3, max u1 u3} (Subalgebra.{u3, max u3 u1} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))))) x (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (Subalgebra.toSemiring.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))) (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))))) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} (Module.End.{u3, u2} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (Semiring.toNonAssocSemiring.{u2} (Module.End.{u3, u2} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (Module.End.semiring.{u3, u2} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4))) (Module.toDistribMulAction.{u3, max u1 u3} R (Subtype.{succ (max u1 u3)} (Matrix.{u1, u1, u3} ι ι R) (fun (x : Matrix.{u1, u1, u3} ι ι R) => Membership.mem.{max u1 u3, max u1 u3} (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.{u3, max u3 u1} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (SetLike.instMembership.{max u1 u3, max u1 u3} (Subalgebra.{u3, max u3 u1} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))))) x (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{max u1 u3} (Subtype.{succ (max u1 u3)} (Matrix.{u1, u1, u3} ι ι R) (fun (x : Matrix.{u1, u1, u3} ι ι R) => Membership.mem.{max u1 u3, max u1 u3} (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.{u3, max u3 u1} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (SetLike.instMembership.{max u1 u3, max u1 u3} (Subalgebra.{u3, max u3 u1} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))))) x (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{max u1 u3} (Subtype.{succ (max u1 u3)} (Matrix.{u1, u1, u3} ι ι R) (fun (x : Matrix.{u1, u1, u3} ι ι R) => Membership.mem.{max u1 u3, max u1 u3} (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.{u3, max u3 u1} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (SetLike.instMembership.{max u1 u3, max u1 u3} (Subalgebra.{u3, max u3 u1} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))))) x (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (Semiring.toNonAssocSemiring.{max u1 u3} (Subtype.{succ (max u1 u3)} (Matrix.{u1, u1, u3} ι ι R) (fun (x : Matrix.{u1, u1, u3} ι ι R) => Membership.mem.{max u1 u3, max u1 u3} (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.{u3, max u3 u1} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (SetLike.instMembership.{max u1 u3, max u1 u3} (Subalgebra.{u3, max u3 u1} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))))) x (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (Subalgebra.toSemiring.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))) (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))))) (Algebra.toModule.{u3, max u1 u3} R (Subtype.{succ (max u1 u3)} (Matrix.{u1, u1, u3} ι ι R) (fun (x : Matrix.{u1, u1, u3} ι ι R) => Membership.mem.{max u1 u3, max u1 u3} (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.{u3, max u3 u1} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (SetLike.instMembership.{max u1 u3, max u1 u3} (Subalgebra.{u3, max u3 u1} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))))) x (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (CommRing.toCommSemiring.{u3} R _inst_3) (Subalgebra.toSemiring.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))) (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))) (Subalgebra.instAlgebraSubtypeMemSubalgebraInstMembershipInstSetLikeSubalgebraToSemiring.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))) (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))))) (Module.toDistribMulAction.{u3, u2} R (Module.End.{u3, u2} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} (Module.End.{u3, u2} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} (Module.End.{u3, u2} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (Semiring.toNonAssocSemiring.{u2} (Module.End.{u3, u2} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (Module.End.semiring.{u3, u2} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4)))) (Algebra.toModule.{u3, u2} R (Module.End.{u3, u2} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (CommRing.toCommSemiring.{u3} R _inst_3) (Module.End.semiring.{u3, u2} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (Module.instAlgebraEndToSemiringSemiring.{u3, u2} R M (CommRing.toCommSemiring.{u3} R _inst_3) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4))) (AlgHom.instNonUnitalAlgHomClassToMonoidToMonoidWithZeroToSemiringToNonUnitalNonAssocSemiringToNonAssocSemiringToNonUnitalNonAssocSemiringToNonAssocSemiringToDistribMulActionToAddCommMonoidToModuleToDistribMulActionToAddCommMonoidToModule.{u3, max u1 u3, u2, max (max u1 u2) u3} R (Subtype.{succ (max u1 u3)} (Matrix.{u1, u1, u3} ι ι R) (fun (x : Matrix.{u1, u1, u3} ι ι R) => Membership.mem.{max u1 u3, max u1 u3} (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.{u3, max u3 u1} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (SetLike.instMembership.{max u1 u3, max u1 u3} (Subalgebra.{u3, max u3 u1} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))))) x (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (Module.End.{u3, u2} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (CommRing.toCommSemiring.{u3} R _inst_3) (Subalgebra.toSemiring.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))) (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))) (Module.End.semiring.{u3, u2} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (Subalgebra.instAlgebraSubtypeMemSubalgebraInstMembershipInstSetLikeSubalgebraToSemiring.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))) (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))) (Module.instAlgebraEndToSemiringSemiring.{u3, u2} R M (CommRing.toCommSemiring.{u3} R _inst_3) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (AlgHom.{u3, max u1 u3, u2} R (Subtype.{succ (max u1 u3)} (Matrix.{u1, u1, u3} ι ι R) (fun (x : Matrix.{u1, u1, u3} ι ι R) => Membership.mem.{max u1 u3, max u1 u3} (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.{u3, max u3 u1} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (SetLike.instMembership.{max u1 u3, max u1 u3} (Subalgebra.{u3, max u3 u1} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))))) x (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (Module.End.{u3, u2} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (CommRing.toCommSemiring.{u3} R _inst_3) (Subalgebra.toSemiring.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))) (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))) (Module.End.semiring.{u3, u2} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (Subalgebra.instAlgebraSubtypeMemSubalgebraInstMembershipInstSetLikeSubalgebraToSemiring.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))) (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))) (Module.instAlgebraEndToSemiringSemiring.{u3, u2} R M (CommRing.toCommSemiring.{u3} R _inst_3) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4)) (AlgHom.algHomClass.{u3, max u1 u3, u2} R (Subtype.{succ (max u1 u3)} (Matrix.{u1, u1, u3} ι ι R) (fun (x : Matrix.{u1, u1, u3} ι ι R) => Membership.mem.{max u1 u3, max u1 u3} (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.{u3, max u3 u1} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (SetLike.instMembership.{max u1 u3, max u1 u3} (Subalgebra.{u3, max u3 u1} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))))) x (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (Module.End.{u3, u2} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (CommRing.toCommSemiring.{u3} R _inst_3) (Subalgebra.toSemiring.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))) (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))) (Module.End.semiring.{u3, u2} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (Subalgebra.instAlgebraSubtypeMemSubalgebraInstMembershipInstSetLikeSubalgebraToSemiring.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))) (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))) (Module.instAlgebraEndToSemiringSemiring.{u3, u2} R M (CommRing.toCommSemiring.{u3} R _inst_3) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4)))))) (Matrix.isRepresentation.toEnd.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b hb (fun (a : ι) (b : ι) => _inst_5 a b)) M_1) f) (forall (i : ι) (j : ι), Membership.mem.{u3, u3} R (Ideal.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))) (SetLike.instMembership.{u3, u3} (Ideal.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))) R (Submodule.setLike.{u3, u3} R R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))))) (Semiring.toModule.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))))) (Subtype.val.{max (succ u1) (succ u3)} (Matrix.{u1, u1, u3} ι ι R) (fun (x : Matrix.{u1, u1, u3} ι ι R) => Membership.mem.{max u1 u3, max u1 u3} (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.{u3, max u3 u1} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (SetLike.instMembership.{max u1 u3, max u1 u3} (Subalgebra.{u3, max u3 u1} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))))) x (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))) M_1 i j) I)))
+ forall {ι : Type.{u1}} [_inst_1 : Fintype.{u1} ι] {M : Type.{u2}} [_inst_2 : AddCommGroup.{u2} M] (R : Type.{u3}) [_inst_3 : CommRing.{u3} R] [_inst_4 : Module.{u3, u2} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2)] (b : ι -> M) (hb : Eq.{succ u2} (Submodule.{u3, u2} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (Submodule.span.{u3, u2} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4 (Set.range.{u2, succ u1} M ι b)) (Top.top.{u2} (Submodule.{u3, u2} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (Submodule.instTopSubmodule.{u3, u2} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4))) [_inst_5 : DecidableEq.{succ u1} ι] (f : Module.End.{u3, u2} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (I : Ideal.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))), (LE.le.{u2} (Submodule.{u3, u2} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (Preorder.toLE.{u2} (Submodule.{u3, u2} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (PartialOrder.toPreorder.{u2} (Submodule.{u3, u2} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (OmegaCompletePartialOrder.toPartialOrder.{u2} (Submodule.{u3, u2} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (CompleteLattice.instOmegaCompletePartialOrder.{u2} (Submodule.{u3, u2} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (Submodule.completeLattice.{u3, u2} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4))))) (LinearMap.range.{u3, u3, u2, u2, u2} R R M M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4 _inst_4 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (Module.End.{u3, u2} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (LinearMap.semilinearMapClass.{u3, u3, u2, u2} R R M M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4 _inst_4 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))))) (RingHomSurjective.ids.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))) f) (HSMul.hSMul.{u3, u2, u2} (Ideal.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))) (Submodule.{u3, u2} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (Submodule.{u3, u2} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (instHSMul.{u3, u2} (Ideal.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))) (Submodule.{u3, u2} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (Submodule.hasSMul'.{u3, u2} R M (CommRing.toCommSemiring.{u3} R _inst_3) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4)) I (Top.top.{u2} (Submodule.{u3, u2} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (Submodule.instTopSubmodule.{u3, u2} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4)))) -> (Exists.{max (succ u1) (succ u3)} (Subtype.{succ (max u1 u3)} (Matrix.{u1, u1, u3} ι ι R) (fun (x : Matrix.{u1, u1, u3} ι ι R) => Membership.mem.{max u1 u3, max u1 u3} (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.{u3, max u3 u1} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (SetLike.instMembership.{max u1 u3, max u1 u3} (Subalgebra.{u3, max u3 u1} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))))) x (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (fun (M_1 : Subtype.{succ (max u1 u3)} (Matrix.{u1, u1, u3} ι ι R) (fun (x : Matrix.{u1, u1, u3} ι ι R) => Membership.mem.{max u1 u3, max u1 u3} (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.{u3, max u3 u1} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (SetLike.instMembership.{max u1 u3, max u1 u3} (Subalgebra.{u3, max u3 u1} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))))) x (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) => And (Eq.{succ u2} ((fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : Subtype.{succ (max u1 u3)} (Matrix.{u1, u1, u3} ι ι R) (fun (x : Matrix.{u1, u1, u3} ι ι R) => Membership.mem.{max u1 u3, max u1 u3} (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.{u3, max u3 u1} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (SetLike.instMembership.{max u1 u3, max u1 u3} (Subalgebra.{u3, max u3 u1} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))))) x (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) => Module.End.{u3, u2} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) M_1) (FunLike.coe.{max (max (succ u1) (succ u2)) (succ u3), max (succ u1) (succ u3), succ u2} (AlgHom.{u3, max u1 u3, u2} R (Subtype.{succ (max u1 u3)} (Matrix.{u1, u1, u3} ι ι R) (fun (x : Matrix.{u1, u1, u3} ι ι R) => Membership.mem.{max u1 u3, max u1 u3} (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.{u3, max u3 u1} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (SetLike.instMembership.{max u1 u3, max u1 u3} (Subalgebra.{u3, max u3 u1} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))))) x (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (Module.End.{u3, u2} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (CommRing.toCommSemiring.{u3} R _inst_3) (Subalgebra.toSemiring.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))) (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))) (Module.End.semiring.{u3, u2} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (Subalgebra.algebra.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))) (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))) (Module.instAlgebraEndToSemiringSemiring.{u3, u2} R M (CommRing.toCommSemiring.{u3} R _inst_3) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4)) (Subtype.{succ (max u1 u3)} (Matrix.{u1, u1, u3} ι ι R) (fun (x : Matrix.{u1, u1, u3} ι ι R) => Membership.mem.{max u1 u3, max u1 u3} (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.{u3, max u3 u1} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (SetLike.instMembership.{max u1 u3, max u1 u3} (Subalgebra.{u3, max u3 u1} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))))) x (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (fun (_x : Subtype.{succ (max u1 u3)} (Matrix.{u1, u1, u3} ι ι R) (fun (x : Matrix.{u1, u1, u3} ι ι R) => Membership.mem.{max u1 u3, max u1 u3} (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.{u3, max u3 u1} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (SetLike.instMembership.{max u1 u3, max u1 u3} (Subalgebra.{u3, max u3 u1} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))))) x (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : Subtype.{succ (max u1 u3)} (Matrix.{u1, u1, u3} ι ι R) (fun (x : Matrix.{u1, u1, u3} ι ι R) => Membership.mem.{max u1 u3, max u1 u3} (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.{u3, max u3 u1} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (SetLike.instMembership.{max u1 u3, max u1 u3} (Subalgebra.{u3, max u3 u1} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))))) x (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) => Module.End.{u3, u2} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) _x) (SMulHomClass.toFunLike.{max (max u1 u2) u3, u3, max u1 u3, u2} (AlgHom.{u3, max u1 u3, u2} R (Subtype.{succ (max u1 u3)} (Matrix.{u1, u1, u3} ι ι R) (fun (x : Matrix.{u1, u1, u3} ι ι R) => Membership.mem.{max u1 u3, max u1 u3} (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.{u3, max u3 u1} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (SetLike.instMembership.{max u1 u3, max u1 u3} (Subalgebra.{u3, max u3 u1} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))))) x (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (Module.End.{u3, u2} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (CommRing.toCommSemiring.{u3} R _inst_3) (Subalgebra.toSemiring.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))) (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))) (Module.End.semiring.{u3, u2} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (Subalgebra.algebra.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))) (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))) (Module.instAlgebraEndToSemiringSemiring.{u3, u2} R M (CommRing.toCommSemiring.{u3} R _inst_3) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4)) R (Subtype.{succ (max u1 u3)} (Matrix.{u1, u1, u3} ι ι R) (fun (x : Matrix.{u1, u1, u3} ι ι R) => Membership.mem.{max u1 u3, max u1 u3} (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.{u3, max u3 u1} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (SetLike.instMembership.{max u1 u3, max u1 u3} (Subalgebra.{u3, max u3 u1} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))))) x (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (Module.End.{u3, u2} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (SMulZeroClass.toSMul.{u3, max u1 u3} R (Subtype.{succ (max u1 u3)} (Matrix.{u1, u1, u3} ι ι R) (fun (x : Matrix.{u1, u1, u3} ι ι R) => Membership.mem.{max u1 u3, max u1 u3} (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.{u3, max u3 u1} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (SetLike.instMembership.{max u1 u3, max u1 u3} (Subalgebra.{u3, max u3 u1} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))))) x (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (AddMonoid.toZero.{max u1 u3} (Subtype.{succ (max u1 u3)} (Matrix.{u1, u1, u3} ι ι R) (fun (x : Matrix.{u1, u1, u3} ι ι R) => Membership.mem.{max u1 u3, max u1 u3} (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.{u3, max u3 u1} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (SetLike.instMembership.{max u1 u3, max u1 u3} (Subalgebra.{u3, max u3 u1} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))))) x (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (AddCommMonoid.toAddMonoid.{max u1 u3} (Subtype.{succ (max u1 u3)} (Matrix.{u1, u1, u3} ι ι R) (fun (x : Matrix.{u1, u1, u3} ι ι R) => Membership.mem.{max u1 u3, max u1 u3} (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.{u3, max u3 u1} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (SetLike.instMembership.{max u1 u3, max u1 u3} (Subalgebra.{u3, max u3 u1} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))))) x (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (NonUnitalNonAssocSemiring.toAddCommMonoid.{max u1 u3} (Subtype.{succ (max u1 u3)} (Matrix.{u1, u1, u3} ι ι R) (fun (x : Matrix.{u1, u1, u3} ι ι R) => Membership.mem.{max u1 u3, max u1 u3} (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.{u3, max u3 u1} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (SetLike.instMembership.{max u1 u3, max u1 u3} (Subalgebra.{u3, max u3 u1} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))))) x (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{max u1 u3} (Subtype.{succ (max u1 u3)} (Matrix.{u1, u1, u3} ι ι R) (fun (x : Matrix.{u1, u1, u3} ι ι R) => Membership.mem.{max u1 u3, max u1 u3} (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.{u3, max u3 u1} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (SetLike.instMembership.{max u1 u3, max u1 u3} (Subalgebra.{u3, max u3 u1} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))))) x (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (Semiring.toNonAssocSemiring.{max u1 u3} (Subtype.{succ (max u1 u3)} (Matrix.{u1, u1, u3} ι ι R) (fun (x : Matrix.{u1, u1, u3} ι ι R) => Membership.mem.{max u1 u3, max u1 u3} (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.{u3, max u3 u1} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (SetLike.instMembership.{max u1 u3, max u1 u3} (Subalgebra.{u3, max u3 u1} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))))) x (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (Subalgebra.toSemiring.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))) (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))))))) (DistribSMul.toSMulZeroClass.{u3, max u1 u3} R (Subtype.{succ (max u1 u3)} (Matrix.{u1, u1, u3} ι ι R) (fun (x : Matrix.{u1, u1, u3} ι ι R) => Membership.mem.{max u1 u3, max u1 u3} (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.{u3, max u3 u1} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (SetLike.instMembership.{max u1 u3, max u1 u3} (Subalgebra.{u3, max u3 u1} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))))) x (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (AddMonoid.toAddZeroClass.{max u1 u3} (Subtype.{succ (max u1 u3)} (Matrix.{u1, u1, u3} ι ι R) (fun (x : Matrix.{u1, u1, u3} ι ι R) => Membership.mem.{max u1 u3, max u1 u3} (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.{u3, max u3 u1} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (SetLike.instMembership.{max u1 u3, max u1 u3} (Subalgebra.{u3, max u3 u1} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))))) x (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (AddCommMonoid.toAddMonoid.{max u1 u3} (Subtype.{succ (max u1 u3)} (Matrix.{u1, u1, u3} ι ι R) (fun (x : Matrix.{u1, u1, u3} ι ι R) => Membership.mem.{max u1 u3, max u1 u3} (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.{u3, max u3 u1} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (SetLike.instMembership.{max u1 u3, max u1 u3} (Subalgebra.{u3, max u3 u1} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))))) x (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (NonUnitalNonAssocSemiring.toAddCommMonoid.{max u1 u3} (Subtype.{succ (max u1 u3)} (Matrix.{u1, u1, u3} ι ι R) (fun (x : Matrix.{u1, u1, u3} ι ι R) => Membership.mem.{max u1 u3, max u1 u3} (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.{u3, max u3 u1} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (SetLike.instMembership.{max u1 u3, max u1 u3} (Subalgebra.{u3, max u3 u1} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))))) x (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{max u1 u3} (Subtype.{succ (max u1 u3)} (Matrix.{u1, u1, u3} ι ι R) (fun (x : Matrix.{u1, u1, u3} ι ι R) => Membership.mem.{max u1 u3, max u1 u3} (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.{u3, max u3 u1} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (SetLike.instMembership.{max u1 u3, max u1 u3} (Subalgebra.{u3, max u3 u1} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))))) x (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (Semiring.toNonAssocSemiring.{max u1 u3} (Subtype.{succ (max u1 u3)} (Matrix.{u1, u1, u3} ι ι R) (fun (x : Matrix.{u1, u1, u3} ι ι R) => Membership.mem.{max u1 u3, max u1 u3} (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.{u3, max u3 u1} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (SetLike.instMembership.{max u1 u3, max u1 u3} (Subalgebra.{u3, max u3 u1} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))))) x (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (Subalgebra.toSemiring.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))) (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))))))) (DistribMulAction.toDistribSMul.{u3, max u1 u3} R (Subtype.{succ (max u1 u3)} (Matrix.{u1, u1, u3} ι ι R) (fun (x : Matrix.{u1, u1, u3} ι ι R) => Membership.mem.{max u1 u3, max u1 u3} (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.{u3, max u3 u1} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (SetLike.instMembership.{max u1 u3, max u1 u3} (Subalgebra.{u3, max u3 u1} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))))) x (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (AddCommMonoid.toAddMonoid.{max u1 u3} (Subtype.{succ (max u1 u3)} (Matrix.{u1, u1, u3} ι ι R) (fun (x : Matrix.{u1, u1, u3} ι ι R) => Membership.mem.{max u1 u3, max u1 u3} (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.{u3, max u3 u1} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (SetLike.instMembership.{max u1 u3, max u1 u3} (Subalgebra.{u3, max u3 u1} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))))) x (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (NonUnitalNonAssocSemiring.toAddCommMonoid.{max u1 u3} (Subtype.{succ (max u1 u3)} (Matrix.{u1, u1, u3} ι ι R) (fun (x : Matrix.{u1, u1, u3} ι ι R) => Membership.mem.{max u1 u3, max u1 u3} (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.{u3, max u3 u1} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (SetLike.instMembership.{max u1 u3, max u1 u3} (Subalgebra.{u3, max u3 u1} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))))) x (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{max u1 u3} (Subtype.{succ (max u1 u3)} (Matrix.{u1, u1, u3} ι ι R) (fun (x : Matrix.{u1, u1, u3} ι ι R) => Membership.mem.{max u1 u3, max u1 u3} (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.{u3, max u3 u1} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (SetLike.instMembership.{max u1 u3, max u1 u3} (Subalgebra.{u3, max u3 u1} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))))) x (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (Semiring.toNonAssocSemiring.{max u1 u3} (Subtype.{succ (max u1 u3)} (Matrix.{u1, u1, u3} ι ι R) (fun (x : Matrix.{u1, u1, u3} ι ι R) => Membership.mem.{max u1 u3, max u1 u3} (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.{u3, max u3 u1} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (SetLike.instMembership.{max u1 u3, max u1 u3} (Subalgebra.{u3, max u3 u1} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))))) x (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (Subalgebra.toSemiring.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))) (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))))))) (Module.toDistribMulAction.{u3, max u1 u3} R (Subtype.{succ (max u1 u3)} (Matrix.{u1, u1, u3} ι ι R) (fun (x : Matrix.{u1, u1, u3} ι ι R) => Membership.mem.{max u1 u3, max u1 u3} (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.{u3, max u3 u1} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (SetLike.instMembership.{max u1 u3, max u1 u3} (Subalgebra.{u3, max u3 u1} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))))) x (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{max u1 u3} (Subtype.{succ (max u1 u3)} (Matrix.{u1, u1, u3} ι ι R) (fun (x : Matrix.{u1, u1, u3} ι ι R) => Membership.mem.{max u1 u3, max u1 u3} (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.{u3, max u3 u1} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (SetLike.instMembership.{max u1 u3, max u1 u3} (Subalgebra.{u3, max u3 u1} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))))) x (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{max u1 u3} (Subtype.{succ (max u1 u3)} (Matrix.{u1, u1, u3} ι ι R) (fun (x : Matrix.{u1, u1, u3} ι ι R) => Membership.mem.{max u1 u3, max u1 u3} (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.{u3, max u3 u1} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (SetLike.instMembership.{max u1 u3, max u1 u3} (Subalgebra.{u3, max u3 u1} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))))) x (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (Semiring.toNonAssocSemiring.{max u1 u3} (Subtype.{succ (max u1 u3)} (Matrix.{u1, u1, u3} ι ι R) (fun (x : Matrix.{u1, u1, u3} ι ι R) => Membership.mem.{max u1 u3, max u1 u3} (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.{u3, max u3 u1} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (SetLike.instMembership.{max u1 u3, max u1 u3} (Subalgebra.{u3, max u3 u1} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))))) x (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (Subalgebra.toSemiring.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))) (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))))) (Algebra.toModule.{u3, max u1 u3} R (Subtype.{succ (max u1 u3)} (Matrix.{u1, u1, u3} ι ι R) (fun (x : Matrix.{u1, u1, u3} ι ι R) => Membership.mem.{max u1 u3, max u1 u3} (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.{u3, max u3 u1} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (SetLike.instMembership.{max u1 u3, max u1 u3} (Subalgebra.{u3, max u3 u1} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))))) x (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (CommRing.toCommSemiring.{u3} R _inst_3) (Subalgebra.toSemiring.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))) (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))) (Subalgebra.algebra.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))) (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))))))) (SMulZeroClass.toSMul.{u3, u2} R (Module.End.{u3, u2} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (AddMonoid.toZero.{u2} (Module.End.{u3, u2} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (AddCommMonoid.toAddMonoid.{u2} (Module.End.{u3, u2} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} (Module.End.{u3, u2} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} (Module.End.{u3, u2} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (Semiring.toNonAssocSemiring.{u2} (Module.End.{u3, u2} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (Module.End.semiring.{u3, u2} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4)))))) (DistribSMul.toSMulZeroClass.{u3, u2} R (Module.End.{u3, u2} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (AddMonoid.toAddZeroClass.{u2} (Module.End.{u3, u2} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (AddCommMonoid.toAddMonoid.{u2} (Module.End.{u3, u2} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} (Module.End.{u3, u2} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} (Module.End.{u3, u2} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (Semiring.toNonAssocSemiring.{u2} (Module.End.{u3, u2} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (Module.End.semiring.{u3, u2} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4)))))) (DistribMulAction.toDistribSMul.{u3, u2} R (Module.End.{u3, u2} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (AddCommMonoid.toAddMonoid.{u2} (Module.End.{u3, u2} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} (Module.End.{u3, u2} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} (Module.End.{u3, u2} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (Semiring.toNonAssocSemiring.{u2} (Module.End.{u3, u2} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (Module.End.semiring.{u3, u2} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4))))) (Module.toDistribMulAction.{u3, u2} R (Module.End.{u3, u2} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} (Module.End.{u3, u2} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} (Module.End.{u3, u2} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (Semiring.toNonAssocSemiring.{u2} (Module.End.{u3, u2} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (Module.End.semiring.{u3, u2} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4)))) (Algebra.toModule.{u3, u2} R (Module.End.{u3, u2} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (CommRing.toCommSemiring.{u3} R _inst_3) (Module.End.semiring.{u3, u2} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (Module.instAlgebraEndToSemiringSemiring.{u3, u2} R M (CommRing.toCommSemiring.{u3} R _inst_3) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4)))))) (DistribMulActionHomClass.toSMulHomClass.{max (max u1 u2) u3, u3, max u1 u3, u2} (AlgHom.{u3, max u1 u3, u2} R (Subtype.{succ (max u1 u3)} (Matrix.{u1, u1, u3} ι ι R) (fun (x : Matrix.{u1, u1, u3} ι ι R) => Membership.mem.{max u1 u3, max u1 u3} (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.{u3, max u3 u1} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (SetLike.instMembership.{max u1 u3, max u1 u3} (Subalgebra.{u3, max u3 u1} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))))) x (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (Module.End.{u3, u2} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (CommRing.toCommSemiring.{u3} R _inst_3) (Subalgebra.toSemiring.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))) (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))) (Module.End.semiring.{u3, u2} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (Subalgebra.algebra.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))) (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))) (Module.instAlgebraEndToSemiringSemiring.{u3, u2} R M (CommRing.toCommSemiring.{u3} R _inst_3) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4)) R (Subtype.{succ (max u1 u3)} (Matrix.{u1, u1, u3} ι ι R) (fun (x : Matrix.{u1, u1, u3} ι ι R) => Membership.mem.{max u1 u3, max u1 u3} (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.{u3, max u3 u1} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (SetLike.instMembership.{max u1 u3, max u1 u3} (Subalgebra.{u3, max u3 u1} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))))) x (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (Module.End.{u3, u2} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (AddCommMonoid.toAddMonoid.{max u1 u3} (Subtype.{succ (max u1 u3)} (Matrix.{u1, u1, u3} ι ι R) (fun (x : Matrix.{u1, u1, u3} ι ι R) => Membership.mem.{max u1 u3, max u1 u3} (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.{u3, max u3 u1} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (SetLike.instMembership.{max u1 u3, max u1 u3} (Subalgebra.{u3, max u3 u1} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))))) x (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (NonUnitalNonAssocSemiring.toAddCommMonoid.{max u1 u3} (Subtype.{succ (max u1 u3)} (Matrix.{u1, u1, u3} ι ι R) (fun (x : Matrix.{u1, u1, u3} ι ι R) => Membership.mem.{max u1 u3, max u1 u3} (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.{u3, max u3 u1} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (SetLike.instMembership.{max u1 u3, max u1 u3} (Subalgebra.{u3, max u3 u1} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))))) x (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{max u1 u3} (Subtype.{succ (max u1 u3)} (Matrix.{u1, u1, u3} ι ι R) (fun (x : Matrix.{u1, u1, u3} ι ι R) => Membership.mem.{max u1 u3, max u1 u3} (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.{u3, max u3 u1} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (SetLike.instMembership.{max u1 u3, max u1 u3} (Subalgebra.{u3, max u3 u1} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))))) x (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (Semiring.toNonAssocSemiring.{max u1 u3} (Subtype.{succ (max u1 u3)} (Matrix.{u1, u1, u3} ι ι R) (fun (x : Matrix.{u1, u1, u3} ι ι R) => Membership.mem.{max u1 u3, max u1 u3} (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.{u3, max u3 u1} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (SetLike.instMembership.{max u1 u3, max u1 u3} (Subalgebra.{u3, max u3 u1} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))))) x (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (Subalgebra.toSemiring.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))) (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))))))) (AddCommMonoid.toAddMonoid.{u2} (Module.End.{u3, u2} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} (Module.End.{u3, u2} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} (Module.End.{u3, u2} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (Semiring.toNonAssocSemiring.{u2} (Module.End.{u3, u2} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (Module.End.semiring.{u3, u2} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4))))) (Module.toDistribMulAction.{u3, max u1 u3} R (Subtype.{succ (max u1 u3)} (Matrix.{u1, u1, u3} ι ι R) (fun (x : Matrix.{u1, u1, u3} ι ι R) => Membership.mem.{max u1 u3, max u1 u3} (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.{u3, max u3 u1} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (SetLike.instMembership.{max u1 u3, max u1 u3} (Subalgebra.{u3, max u3 u1} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))))) x (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{max u1 u3} (Subtype.{succ (max u1 u3)} (Matrix.{u1, u1, u3} ι ι R) (fun (x : Matrix.{u1, u1, u3} ι ι R) => Membership.mem.{max u1 u3, max u1 u3} (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.{u3, max u3 u1} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (SetLike.instMembership.{max u1 u3, max u1 u3} (Subalgebra.{u3, max u3 u1} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))))) x (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{max u1 u3} (Subtype.{succ (max u1 u3)} (Matrix.{u1, u1, u3} ι ι R) (fun (x : Matrix.{u1, u1, u3} ι ι R) => Membership.mem.{max u1 u3, max u1 u3} (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.{u3, max u3 u1} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (SetLike.instMembership.{max u1 u3, max u1 u3} (Subalgebra.{u3, max u3 u1} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))))) x (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (Semiring.toNonAssocSemiring.{max u1 u3} (Subtype.{succ (max u1 u3)} (Matrix.{u1, u1, u3} ι ι R) (fun (x : Matrix.{u1, u1, u3} ι ι R) => Membership.mem.{max u1 u3, max u1 u3} (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.{u3, max u3 u1} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (SetLike.instMembership.{max u1 u3, max u1 u3} (Subalgebra.{u3, max u3 u1} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))))) x (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (Subalgebra.toSemiring.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))) (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))))) (Algebra.toModule.{u3, max u1 u3} R (Subtype.{succ (max u1 u3)} (Matrix.{u1, u1, u3} ι ι R) (fun (x : Matrix.{u1, u1, u3} ι ι R) => Membership.mem.{max u1 u3, max u1 u3} (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.{u3, max u3 u1} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (SetLike.instMembership.{max u1 u3, max u1 u3} (Subalgebra.{u3, max u3 u1} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))))) x (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (CommRing.toCommSemiring.{u3} R _inst_3) (Subalgebra.toSemiring.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))) (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))) (Subalgebra.algebra.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))) (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))))) (Module.toDistribMulAction.{u3, u2} R (Module.End.{u3, u2} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} (Module.End.{u3, u2} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} (Module.End.{u3, u2} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (Semiring.toNonAssocSemiring.{u2} (Module.End.{u3, u2} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (Module.End.semiring.{u3, u2} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4)))) (Algebra.toModule.{u3, u2} R (Module.End.{u3, u2} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (CommRing.toCommSemiring.{u3} R _inst_3) (Module.End.semiring.{u3, u2} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (Module.instAlgebraEndToSemiringSemiring.{u3, u2} R M (CommRing.toCommSemiring.{u3} R _inst_3) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4))) (NonUnitalAlgHomClass.toDistribMulActionHomClass.{max (max u1 u2) u3, u3, max u1 u3, u2} (AlgHom.{u3, max u1 u3, u2} R (Subtype.{succ (max u1 u3)} (Matrix.{u1, u1, u3} ι ι R) (fun (x : Matrix.{u1, u1, u3} ι ι R) => Membership.mem.{max u1 u3, max u1 u3} (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.{u3, max u3 u1} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (SetLike.instMembership.{max u1 u3, max u1 u3} (Subalgebra.{u3, max u3 u1} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))))) x (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (Module.End.{u3, u2} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (CommRing.toCommSemiring.{u3} R _inst_3) (Subalgebra.toSemiring.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))) (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))) (Module.End.semiring.{u3, u2} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (Subalgebra.algebra.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))) (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))) (Module.instAlgebraEndToSemiringSemiring.{u3, u2} R M (CommRing.toCommSemiring.{u3} R _inst_3) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4)) R (Subtype.{succ (max u1 u3)} (Matrix.{u1, u1, u3} ι ι R) (fun (x : Matrix.{u1, u1, u3} ι ι R) => Membership.mem.{max u1 u3, max u1 u3} (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.{u3, max u3 u1} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (SetLike.instMembership.{max u1 u3, max u1 u3} (Subalgebra.{u3, max u3 u1} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))))) x (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (Module.End.{u3, u2} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{max u1 u3} (Subtype.{succ (max u1 u3)} (Matrix.{u1, u1, u3} ι ι R) (fun (x : Matrix.{u1, u1, u3} ι ι R) => Membership.mem.{max u1 u3, max u1 u3} (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.{u3, max u3 u1} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (SetLike.instMembership.{max u1 u3, max u1 u3} (Subalgebra.{u3, max u3 u1} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))))) x (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (Semiring.toNonAssocSemiring.{max u1 u3} (Subtype.{succ (max u1 u3)} (Matrix.{u1, u1, u3} ι ι R) (fun (x : Matrix.{u1, u1, u3} ι ι R) => Membership.mem.{max u1 u3, max u1 u3} (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.{u3, max u3 u1} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (SetLike.instMembership.{max u1 u3, max u1 u3} (Subalgebra.{u3, max u3 u1} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))))) x (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (Subalgebra.toSemiring.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))) (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))))) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} (Module.End.{u3, u2} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (Semiring.toNonAssocSemiring.{u2} (Module.End.{u3, u2} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (Module.End.semiring.{u3, u2} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4))) (Module.toDistribMulAction.{u3, max u1 u3} R (Subtype.{succ (max u1 u3)} (Matrix.{u1, u1, u3} ι ι R) (fun (x : Matrix.{u1, u1, u3} ι ι R) => Membership.mem.{max u1 u3, max u1 u3} (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.{u3, max u3 u1} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (SetLike.instMembership.{max u1 u3, max u1 u3} (Subalgebra.{u3, max u3 u1} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))))) x (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{max u1 u3} (Subtype.{succ (max u1 u3)} (Matrix.{u1, u1, u3} ι ι R) (fun (x : Matrix.{u1, u1, u3} ι ι R) => Membership.mem.{max u1 u3, max u1 u3} (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.{u3, max u3 u1} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (SetLike.instMembership.{max u1 u3, max u1 u3} (Subalgebra.{u3, max u3 u1} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))))) x (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{max u1 u3} (Subtype.{succ (max u1 u3)} (Matrix.{u1, u1, u3} ι ι R) (fun (x : Matrix.{u1, u1, u3} ι ι R) => Membership.mem.{max u1 u3, max u1 u3} (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.{u3, max u3 u1} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (SetLike.instMembership.{max u1 u3, max u1 u3} (Subalgebra.{u3, max u3 u1} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))))) x (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (Semiring.toNonAssocSemiring.{max u1 u3} (Subtype.{succ (max u1 u3)} (Matrix.{u1, u1, u3} ι ι R) (fun (x : Matrix.{u1, u1, u3} ι ι R) => Membership.mem.{max u1 u3, max u1 u3} (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.{u3, max u3 u1} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (SetLike.instMembership.{max u1 u3, max u1 u3} (Subalgebra.{u3, max u3 u1} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))))) x (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (Subalgebra.toSemiring.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))) (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))))) (Algebra.toModule.{u3, max u1 u3} R (Subtype.{succ (max u1 u3)} (Matrix.{u1, u1, u3} ι ι R) (fun (x : Matrix.{u1, u1, u3} ι ι R) => Membership.mem.{max u1 u3, max u1 u3} (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.{u3, max u3 u1} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (SetLike.instMembership.{max u1 u3, max u1 u3} (Subalgebra.{u3, max u3 u1} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))))) x (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (CommRing.toCommSemiring.{u3} R _inst_3) (Subalgebra.toSemiring.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))) (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))) (Subalgebra.algebra.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))) (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))))) (Module.toDistribMulAction.{u3, u2} R (Module.End.{u3, u2} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} (Module.End.{u3, u2} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} (Module.End.{u3, u2} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (Semiring.toNonAssocSemiring.{u2} (Module.End.{u3, u2} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (Module.End.semiring.{u3, u2} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4)))) (Algebra.toModule.{u3, u2} R (Module.End.{u3, u2} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (CommRing.toCommSemiring.{u3} R _inst_3) (Module.End.semiring.{u3, u2} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (Module.instAlgebraEndToSemiringSemiring.{u3, u2} R M (CommRing.toCommSemiring.{u3} R _inst_3) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4))) (AlgHom.instNonUnitalAlgHomClassToMonoidToMonoidWithZeroToSemiringToNonUnitalNonAssocSemiringToNonAssocSemiringToNonUnitalNonAssocSemiringToNonAssocSemiringToDistribMulActionToAddCommMonoidToModuleToDistribMulActionToAddCommMonoidToModule.{u3, max u1 u3, u2, max (max u1 u2) u3} R (Subtype.{succ (max u1 u3)} (Matrix.{u1, u1, u3} ι ι R) (fun (x : Matrix.{u1, u1, u3} ι ι R) => Membership.mem.{max u1 u3, max u1 u3} (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.{u3, max u3 u1} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (SetLike.instMembership.{max u1 u3, max u1 u3} (Subalgebra.{u3, max u3 u1} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))))) x (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (Module.End.{u3, u2} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (CommRing.toCommSemiring.{u3} R _inst_3) (Subalgebra.toSemiring.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))) (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))) (Module.End.semiring.{u3, u2} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (Subalgebra.algebra.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))) (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))) (Module.instAlgebraEndToSemiringSemiring.{u3, u2} R M (CommRing.toCommSemiring.{u3} R _inst_3) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (AlgHom.{u3, max u1 u3, u2} R (Subtype.{succ (max u1 u3)} (Matrix.{u1, u1, u3} ι ι R) (fun (x : Matrix.{u1, u1, u3} ι ι R) => Membership.mem.{max u1 u3, max u1 u3} (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.{u3, max u3 u1} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (SetLike.instMembership.{max u1 u3, max u1 u3} (Subalgebra.{u3, max u3 u1} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))))) x (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (Module.End.{u3, u2} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (CommRing.toCommSemiring.{u3} R _inst_3) (Subalgebra.toSemiring.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))) (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))) (Module.End.semiring.{u3, u2} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (Subalgebra.algebra.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))) (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))) (Module.instAlgebraEndToSemiringSemiring.{u3, u2} R M (CommRing.toCommSemiring.{u3} R _inst_3) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4)) (AlgHom.algHomClass.{u3, max u1 u3, u2} R (Subtype.{succ (max u1 u3)} (Matrix.{u1, u1, u3} ι ι R) (fun (x : Matrix.{u1, u1, u3} ι ι R) => Membership.mem.{max u1 u3, max u1 u3} (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.{u3, max u3 u1} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (SetLike.instMembership.{max u1 u3, max u1 u3} (Subalgebra.{u3, max u3 u1} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))))) x (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (Module.End.{u3, u2} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (CommRing.toCommSemiring.{u3} R _inst_3) (Subalgebra.toSemiring.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))) (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))) (Module.End.semiring.{u3, u2} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (Subalgebra.algebra.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))) (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))) (Module.instAlgebraEndToSemiringSemiring.{u3, u2} R M (CommRing.toCommSemiring.{u3} R _inst_3) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4)))))) (Matrix.isRepresentation.toEnd.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b hb (fun (a : ι) (b : ι) => _inst_5 a b)) M_1) f) (forall (i : ι) (j : ι), Membership.mem.{u3, u3} R (Ideal.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))) (SetLike.instMembership.{u3, u3} (Ideal.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))) R (Submodule.setLike.{u3, u3} R R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))))) (Semiring.toModule.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))))) (Subtype.val.{max (succ u1) (succ u3)} (Matrix.{u1, u1, u3} ι ι R) (fun (x : Matrix.{u1, u1, u3} ι ι R) => Membership.mem.{max u1 u3, max u1 u3} (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.{u3, max u3 u1} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (SetLike.instMembership.{max u1 u3, max u1 u3} (Subalgebra.{u3, max u3 u1} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))))) x (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))) M_1 i j) I)))
Case conversion may be inaccurate. Consider using '#align matrix.is_representation.to_End_exists_mem_ideal Matrix.isRepresentation.toEnd_exists_mem_idealₓ'. -/
theorem Matrix.isRepresentation.toEnd_exists_mem_ideal (f : Module.End R M) (I : Ideal R)
(hI : f.range ≤ I • ⊤) : ∃ M, Matrix.isRepresentation.toEnd R b hb M = f ∧ ∀ i j, M.1 i j ∈ I :=
@@ -341,7 +344,7 @@ theorem Matrix.isRepresentation.toEnd_exists_mem_ideal (f : Module.End R M) (I :
lean 3 declaration is
forall {ι : Type.{u1}} [_inst_1 : Fintype.{u1} ι] {M : Type.{u2}} [_inst_2 : AddCommGroup.{u2} M] (R : Type.{u3}) [_inst_3 : CommRing.{u3} R] [_inst_4 : Module.{u3, u2} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2)] (b : ι -> M) (hb : Eq.{succ u2} (Submodule.{u3, u2} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (Submodule.span.{u3, u2} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4 (Set.range.{u2, succ u1} M ι b)) (Top.top.{u2} (Submodule.{u3, u2} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (Submodule.hasTop.{u3, u2} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4))) [_inst_5 : DecidableEq.{succ u1} ι], Function.Surjective.{succ (max u1 u3), succ u2} (coeSort.{succ (max u1 u3), succ (succ (max u1 u3))} (Subalgebra.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b) a b)) (Matrix.algebra.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b) a b) (CommRing.toCommSemiring.{u3} R _inst_3) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) Type.{max u1 u3} (SetLike.hasCoeToSort.{max u1 u3, max u1 u3} (Subalgebra.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b) a b)) (Matrix.algebra.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b) a b) (CommRing.toCommSemiring.{u3} R _inst_3) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.setLike.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b) a b)) (Matrix.algebra.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b) a b) (CommRing.toCommSemiring.{u3} R _inst_3) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))))) (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b))) (Module.End.{u3, u2} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (coeFn.{max (succ (max u1 u3)) (succ u2), max (succ (max u1 u3)) (succ u2)} (AlgHom.{u3, max u1 u3, u2} R (coeSort.{succ (max u1 u3), succ (succ (max u1 u3))} (Subalgebra.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b) a b)) (Matrix.algebra.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b) a b) (CommRing.toCommSemiring.{u3} R _inst_3) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) Type.{max u1 u3} (SetLike.hasCoeToSort.{max u1 u3, max u1 u3} (Subalgebra.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b) a b)) (Matrix.algebra.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b) a b) (CommRing.toCommSemiring.{u3} R _inst_3) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.setLike.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b) a b)) (Matrix.algebra.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b) a b) (CommRing.toCommSemiring.{u3} R _inst_3) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))))) (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b))) (Module.End.{u3, u2} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (CommRing.toCommSemiring.{u3} R _inst_3) (Subalgebra.toSemiring.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b) a b)) (Matrix.algebra.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b) a b) (CommRing.toCommSemiring.{u3} R _inst_3) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))) (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b))) (Module.End.semiring.{u3, u2} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (Subalgebra.algebra.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b) a b)) (Matrix.algebra.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b) a b) (CommRing.toCommSemiring.{u3} R _inst_3) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))) (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b))) (Module.End.algebra.{u3, u2} R M (CommRing.toCommSemiring.{u3} R _inst_3) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4)) (fun (_x : AlgHom.{u3, max u1 u3, u2} R (coeSort.{succ (max u1 u3), succ (succ (max u1 u3))} (Subalgebra.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b) a b)) (Matrix.algebra.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b) a b) (CommRing.toCommSemiring.{u3} R _inst_3) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) Type.{max u1 u3} (SetLike.hasCoeToSort.{max u1 u3, max u1 u3} (Subalgebra.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b) a b)) (Matrix.algebra.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b) a b) (CommRing.toCommSemiring.{u3} R _inst_3) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.setLike.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b) a b)) (Matrix.algebra.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b) a b) (CommRing.toCommSemiring.{u3} R _inst_3) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))))) (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b))) (Module.End.{u3, u2} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (CommRing.toCommSemiring.{u3} R _inst_3) (Subalgebra.toSemiring.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b) a b)) (Matrix.algebra.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b) a b) (CommRing.toCommSemiring.{u3} R _inst_3) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))) (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b))) (Module.End.semiring.{u3, u2} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (Subalgebra.algebra.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b) a b)) (Matrix.algebra.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b) a b) (CommRing.toCommSemiring.{u3} R _inst_3) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))) (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b))) (Module.End.algebra.{u3, u2} R M (CommRing.toCommSemiring.{u3} R _inst_3) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4)) => (coeSort.{succ (max u1 u3), succ (succ (max u1 u3))} (Subalgebra.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b) a b)) (Matrix.algebra.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b) a b) (CommRing.toCommSemiring.{u3} R _inst_3) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) Type.{max u1 u3} (SetLike.hasCoeToSort.{max u1 u3, max u1 u3} (Subalgebra.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b) a b)) (Matrix.algebra.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b) a b) (CommRing.toCommSemiring.{u3} R _inst_3) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.setLike.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b) a b)) (Matrix.algebra.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b) a b) (CommRing.toCommSemiring.{u3} R _inst_3) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))))) (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b))) -> (Module.End.{u3, u2} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4)) ([anonymous].{u3, max u1 u3, u2} R (coeSort.{succ (max u1 u3), succ (succ (max u1 u3))} (Subalgebra.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b) a b)) (Matrix.algebra.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b) a b) (CommRing.toCommSemiring.{u3} R _inst_3) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) Type.{max u1 u3} (SetLike.hasCoeToSort.{max u1 u3, max u1 u3} (Subalgebra.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b) a b)) (Matrix.algebra.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b) a b) (CommRing.toCommSemiring.{u3} R _inst_3) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.setLike.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b) a b)) (Matrix.algebra.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b) a b) (CommRing.toCommSemiring.{u3} R _inst_3) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))))) (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b))) (Module.End.{u3, u2} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (CommRing.toCommSemiring.{u3} R _inst_3) (Subalgebra.toSemiring.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b) a b)) (Matrix.algebra.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b) a b) (CommRing.toCommSemiring.{u3} R _inst_3) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))) (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b))) (Module.End.semiring.{u3, u2} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (Subalgebra.algebra.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b) a b)) (Matrix.algebra.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b) a b) (CommRing.toCommSemiring.{u3} R _inst_3) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))) (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b))) (Module.End.algebra.{u3, u2} R M (CommRing.toCommSemiring.{u3} R _inst_3) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4)) (Matrix.isRepresentation.toEnd.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b hb (fun (a : ι) (b : ι) => _inst_5 a b)))
but is expected to have type
- forall {ι : Type.{u3}} [_inst_1 : Fintype.{u3} ι] {M : Type.{u1}} [_inst_2 : AddCommGroup.{u1} M] (R : Type.{u2}) [_inst_3 : CommRing.{u2} R] [_inst_4 : Module.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2)] (b : ι -> M) (hb : Eq.{succ u1} (Submodule.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (Submodule.span.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4 (Set.range.{u1, succ u3} M ι b)) (Top.top.{u1} (Submodule.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (Submodule.instTopSubmodule.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4))) [_inst_5 : DecidableEq.{succ u3} ι], Function.Surjective.{max (succ u3) (succ u2), succ u1} (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (FunLike.coe.{max (max (succ u3) (succ u1)) (succ u2), max (succ u3) (succ u2), succ u1} (AlgHom.{u2, max u3 u2, u1} R (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (CommRing.toCommSemiring.{u2} R _inst_3) (Subalgebra.toSemiring.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))) (Module.End.semiring.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (Subalgebra.instAlgebraSubtypeMemSubalgebraInstMembershipInstSetLikeSubalgebraToSemiring.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))) (Module.instAlgebraEndToSemiringSemiring.{u2, u1} R M (CommRing.toCommSemiring.{u2} R _inst_3) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4)) (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (fun (_x : Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) => Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) _x) (SMulHomClass.toFunLike.{max (max u3 u1) u2, u2, max u3 u2, u1} (AlgHom.{u2, max u3 u2, u1} R (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (CommRing.toCommSemiring.{u2} R _inst_3) (Subalgebra.toSemiring.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))) (Module.End.semiring.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (Subalgebra.instAlgebraSubtypeMemSubalgebraInstMembershipInstSetLikeSubalgebraToSemiring.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))) (Module.instAlgebraEndToSemiringSemiring.{u2, u1} R M (CommRing.toCommSemiring.{u2} R _inst_3) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4)) R (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (SMulZeroClass.toSMul.{u2, max u3 u2} R (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (AddMonoid.toZero.{max u3 u2} (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (AddCommMonoid.toAddMonoid.{max u3 u2} (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (NonUnitalNonAssocSemiring.toAddCommMonoid.{max u3 u2} (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{max u3 u2} (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (Semiring.toNonAssocSemiring.{max u3 u2} (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (Subalgebra.toSemiring.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))))))) (DistribSMul.toSMulZeroClass.{u2, max u3 u2} R (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (AddMonoid.toAddZeroClass.{max u3 u2} (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (AddCommMonoid.toAddMonoid.{max u3 u2} (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (NonUnitalNonAssocSemiring.toAddCommMonoid.{max u3 u2} (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{max u3 u2} (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (Semiring.toNonAssocSemiring.{max u3 u2} (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (Subalgebra.toSemiring.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))))))) (DistribMulAction.toDistribSMul.{u2, max u3 u2} R (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (AddCommMonoid.toAddMonoid.{max u3 u2} (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (NonUnitalNonAssocSemiring.toAddCommMonoid.{max u3 u2} (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{max u3 u2} (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (Semiring.toNonAssocSemiring.{max u3 u2} (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (Subalgebra.toSemiring.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))))))) (Module.toDistribMulAction.{u2, max u3 u2} R (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{max u3 u2} (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{max u3 u2} (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (Semiring.toNonAssocSemiring.{max u3 u2} (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (Subalgebra.toSemiring.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))))) (Algebra.toModule.{u2, max u3 u2} R (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (CommRing.toCommSemiring.{u2} R _inst_3) (Subalgebra.toSemiring.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))) (Subalgebra.instAlgebraSubtypeMemSubalgebraInstMembershipInstSetLikeSubalgebraToSemiring.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))))))) (SMulZeroClass.toSMul.{u2, u1} R (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (AddMonoid.toZero.{u1} (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (AddCommMonoid.toAddMonoid.{u1} (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (Semiring.toNonAssocSemiring.{u1} (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (Module.End.semiring.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4)))))) (DistribSMul.toSMulZeroClass.{u2, u1} R (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (AddMonoid.toAddZeroClass.{u1} (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (AddCommMonoid.toAddMonoid.{u1} (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (Semiring.toNonAssocSemiring.{u1} (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (Module.End.semiring.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4)))))) (DistribMulAction.toDistribSMul.{u2, u1} R (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (AddCommMonoid.toAddMonoid.{u1} (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (Semiring.toNonAssocSemiring.{u1} (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (Module.End.semiring.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4))))) (Module.toDistribMulAction.{u2, u1} R (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (Semiring.toNonAssocSemiring.{u1} (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (Module.End.semiring.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4)))) (Algebra.toModule.{u2, u1} R (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (CommRing.toCommSemiring.{u2} R _inst_3) (Module.End.semiring.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (Module.instAlgebraEndToSemiringSemiring.{u2, u1} R M (CommRing.toCommSemiring.{u2} R _inst_3) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4)))))) (DistribMulActionHomClass.toSMulHomClass.{max (max u3 u1) u2, u2, max u3 u2, u1} (AlgHom.{u2, max u3 u2, u1} R (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (CommRing.toCommSemiring.{u2} R _inst_3) (Subalgebra.toSemiring.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))) (Module.End.semiring.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (Subalgebra.instAlgebraSubtypeMemSubalgebraInstMembershipInstSetLikeSubalgebraToSemiring.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))) (Module.instAlgebraEndToSemiringSemiring.{u2, u1} R M (CommRing.toCommSemiring.{u2} R _inst_3) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4)) R (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (AddCommMonoid.toAddMonoid.{max u3 u2} (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (NonUnitalNonAssocSemiring.toAddCommMonoid.{max u3 u2} (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{max u3 u2} (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (Semiring.toNonAssocSemiring.{max u3 u2} (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (Subalgebra.toSemiring.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))))))) (AddCommMonoid.toAddMonoid.{u1} (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (Semiring.toNonAssocSemiring.{u1} (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (Module.End.semiring.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4))))) (Module.toDistribMulAction.{u2, max u3 u2} R (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{max u3 u2} (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{max u3 u2} (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (Semiring.toNonAssocSemiring.{max u3 u2} (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (Subalgebra.toSemiring.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))))) (Algebra.toModule.{u2, max u3 u2} R (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (CommRing.toCommSemiring.{u2} R _inst_3) (Subalgebra.toSemiring.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))) (Subalgebra.instAlgebraSubtypeMemSubalgebraInstMembershipInstSetLikeSubalgebraToSemiring.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))))) (Module.toDistribMulAction.{u2, u1} R (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (Semiring.toNonAssocSemiring.{u1} (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (Module.End.semiring.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4)))) (Algebra.toModule.{u2, u1} R (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (CommRing.toCommSemiring.{u2} R _inst_3) (Module.End.semiring.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (Module.instAlgebraEndToSemiringSemiring.{u2, u1} R M (CommRing.toCommSemiring.{u2} R _inst_3) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4))) (NonUnitalAlgHomClass.toDistribMulActionHomClass.{max (max u3 u1) u2, u2, max u3 u2, u1} (AlgHom.{u2, max u3 u2, u1} R (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (CommRing.toCommSemiring.{u2} R _inst_3) (Subalgebra.toSemiring.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))) (Module.End.semiring.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (Subalgebra.instAlgebraSubtypeMemSubalgebraInstMembershipInstSetLikeSubalgebraToSemiring.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))) (Module.instAlgebraEndToSemiringSemiring.{u2, u1} R M (CommRing.toCommSemiring.{u2} R _inst_3) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4)) R (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{max u3 u2} (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (Semiring.toNonAssocSemiring.{max u3 u2} (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (Subalgebra.toSemiring.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))))) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (Semiring.toNonAssocSemiring.{u1} (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (Module.End.semiring.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4))) (Module.toDistribMulAction.{u2, max u3 u2} R (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{max u3 u2} (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{max u3 u2} (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (Semiring.toNonAssocSemiring.{max u3 u2} (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (Subalgebra.toSemiring.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))))) (Algebra.toModule.{u2, max u3 u2} R (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (CommRing.toCommSemiring.{u2} R _inst_3) (Subalgebra.toSemiring.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))) (Subalgebra.instAlgebraSubtypeMemSubalgebraInstMembershipInstSetLikeSubalgebraToSemiring.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))))) (Module.toDistribMulAction.{u2, u1} R (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (Semiring.toNonAssocSemiring.{u1} (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (Module.End.semiring.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4)))) (Algebra.toModule.{u2, u1} R (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (CommRing.toCommSemiring.{u2} R _inst_3) (Module.End.semiring.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (Module.instAlgebraEndToSemiringSemiring.{u2, u1} R M (CommRing.toCommSemiring.{u2} R _inst_3) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4))) (AlgHom.instNonUnitalAlgHomClassToMonoidToMonoidWithZeroToSemiringToNonUnitalNonAssocSemiringToNonAssocSemiringToNonUnitalNonAssocSemiringToNonAssocSemiringToDistribMulActionToAddCommMonoidToModuleToDistribMulActionToAddCommMonoidToModule.{u2, max u3 u2, u1, max (max u3 u1) u2} R (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (CommRing.toCommSemiring.{u2} R _inst_3) (Subalgebra.toSemiring.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))) (Module.End.semiring.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (Subalgebra.instAlgebraSubtypeMemSubalgebraInstMembershipInstSetLikeSubalgebraToSemiring.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))) (Module.instAlgebraEndToSemiringSemiring.{u2, u1} R M (CommRing.toCommSemiring.{u2} R _inst_3) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (AlgHom.{u2, max u3 u2, u1} R (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (CommRing.toCommSemiring.{u2} R _inst_3) (Subalgebra.toSemiring.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))) (Module.End.semiring.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (Subalgebra.instAlgebraSubtypeMemSubalgebraInstMembershipInstSetLikeSubalgebraToSemiring.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))) (Module.instAlgebraEndToSemiringSemiring.{u2, u1} R M (CommRing.toCommSemiring.{u2} R _inst_3) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4)) (AlgHom.algHomClass.{u2, max u3 u2, u1} R (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (CommRing.toCommSemiring.{u2} R _inst_3) (Subalgebra.toSemiring.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))) (Module.End.semiring.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (Subalgebra.instAlgebraSubtypeMemSubalgebraInstMembershipInstSetLikeSubalgebraToSemiring.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))) (Module.instAlgebraEndToSemiringSemiring.{u2, u1} R M (CommRing.toCommSemiring.{u2} R _inst_3) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4)))))) (Matrix.isRepresentation.toEnd.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b hb (fun (a : ι) (b : ι) => _inst_5 a b)))
+ forall {ι : Type.{u3}} [_inst_1 : Fintype.{u3} ι] {M : Type.{u1}} [_inst_2 : AddCommGroup.{u1} M] (R : Type.{u2}) [_inst_3 : CommRing.{u2} R] [_inst_4 : Module.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2)] (b : ι -> M) (hb : Eq.{succ u1} (Submodule.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (Submodule.span.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4 (Set.range.{u1, succ u3} M ι b)) (Top.top.{u1} (Submodule.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (Submodule.instTopSubmodule.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4))) [_inst_5 : DecidableEq.{succ u3} ι], Function.Surjective.{max (succ u3) (succ u2), succ u1} (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (FunLike.coe.{max (max (succ u3) (succ u1)) (succ u2), max (succ u3) (succ u2), succ u1} (AlgHom.{u2, max u3 u2, u1} R (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (CommRing.toCommSemiring.{u2} R _inst_3) (Subalgebra.toSemiring.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))) (Module.End.semiring.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (Subalgebra.algebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))) (Module.instAlgebraEndToSemiringSemiring.{u2, u1} R M (CommRing.toCommSemiring.{u2} R _inst_3) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4)) (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (fun (_x : Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) => Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) _x) (SMulHomClass.toFunLike.{max (max u3 u1) u2, u2, max u3 u2, u1} (AlgHom.{u2, max u3 u2, u1} R (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (CommRing.toCommSemiring.{u2} R _inst_3) (Subalgebra.toSemiring.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))) (Module.End.semiring.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (Subalgebra.algebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))) (Module.instAlgebraEndToSemiringSemiring.{u2, u1} R M (CommRing.toCommSemiring.{u2} R _inst_3) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4)) R (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (SMulZeroClass.toSMul.{u2, max u3 u2} R (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (AddMonoid.toZero.{max u3 u2} (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (AddCommMonoid.toAddMonoid.{max u3 u2} (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (NonUnitalNonAssocSemiring.toAddCommMonoid.{max u3 u2} (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{max u3 u2} (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (Semiring.toNonAssocSemiring.{max u3 u2} (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (Subalgebra.toSemiring.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))))))) (DistribSMul.toSMulZeroClass.{u2, max u3 u2} R (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (AddMonoid.toAddZeroClass.{max u3 u2} (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (AddCommMonoid.toAddMonoid.{max u3 u2} (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (NonUnitalNonAssocSemiring.toAddCommMonoid.{max u3 u2} (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{max u3 u2} (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (Semiring.toNonAssocSemiring.{max u3 u2} (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (Subalgebra.toSemiring.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))))))) (DistribMulAction.toDistribSMul.{u2, max u3 u2} R (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (AddCommMonoid.toAddMonoid.{max u3 u2} (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (NonUnitalNonAssocSemiring.toAddCommMonoid.{max u3 u2} (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{max u3 u2} (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (Semiring.toNonAssocSemiring.{max u3 u2} (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (Subalgebra.toSemiring.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))))))) (Module.toDistribMulAction.{u2, max u3 u2} R (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{max u3 u2} (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{max u3 u2} (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (Semiring.toNonAssocSemiring.{max u3 u2} (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (Subalgebra.toSemiring.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))))) (Algebra.toModule.{u2, max u3 u2} R (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (CommRing.toCommSemiring.{u2} R _inst_3) (Subalgebra.toSemiring.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))) (Subalgebra.algebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))))))) (SMulZeroClass.toSMul.{u2, u1} R (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (AddMonoid.toZero.{u1} (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (AddCommMonoid.toAddMonoid.{u1} (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (Semiring.toNonAssocSemiring.{u1} (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (Module.End.semiring.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4)))))) (DistribSMul.toSMulZeroClass.{u2, u1} R (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (AddMonoid.toAddZeroClass.{u1} (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (AddCommMonoid.toAddMonoid.{u1} (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (Semiring.toNonAssocSemiring.{u1} (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (Module.End.semiring.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4)))))) (DistribMulAction.toDistribSMul.{u2, u1} R (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (AddCommMonoid.toAddMonoid.{u1} (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (Semiring.toNonAssocSemiring.{u1} (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (Module.End.semiring.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4))))) (Module.toDistribMulAction.{u2, u1} R (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (Semiring.toNonAssocSemiring.{u1} (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (Module.End.semiring.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4)))) (Algebra.toModule.{u2, u1} R (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (CommRing.toCommSemiring.{u2} R _inst_3) (Module.End.semiring.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (Module.instAlgebraEndToSemiringSemiring.{u2, u1} R M (CommRing.toCommSemiring.{u2} R _inst_3) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4)))))) (DistribMulActionHomClass.toSMulHomClass.{max (max u3 u1) u2, u2, max u3 u2, u1} (AlgHom.{u2, max u3 u2, u1} R (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (CommRing.toCommSemiring.{u2} R _inst_3) (Subalgebra.toSemiring.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))) (Module.End.semiring.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (Subalgebra.algebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))) (Module.instAlgebraEndToSemiringSemiring.{u2, u1} R M (CommRing.toCommSemiring.{u2} R _inst_3) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4)) R (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (AddCommMonoid.toAddMonoid.{max u3 u2} (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (NonUnitalNonAssocSemiring.toAddCommMonoid.{max u3 u2} (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{max u3 u2} (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (Semiring.toNonAssocSemiring.{max u3 u2} (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (Subalgebra.toSemiring.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))))))) (AddCommMonoid.toAddMonoid.{u1} (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (Semiring.toNonAssocSemiring.{u1} (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (Module.End.semiring.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4))))) (Module.toDistribMulAction.{u2, max u3 u2} R (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{max u3 u2} (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{max u3 u2} (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (Semiring.toNonAssocSemiring.{max u3 u2} (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (Subalgebra.toSemiring.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))))) (Algebra.toModule.{u2, max u3 u2} R (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (CommRing.toCommSemiring.{u2} R _inst_3) (Subalgebra.toSemiring.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))) (Subalgebra.algebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))))) (Module.toDistribMulAction.{u2, u1} R (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (Semiring.toNonAssocSemiring.{u1} (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (Module.End.semiring.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4)))) (Algebra.toModule.{u2, u1} R (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (CommRing.toCommSemiring.{u2} R _inst_3) (Module.End.semiring.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (Module.instAlgebraEndToSemiringSemiring.{u2, u1} R M (CommRing.toCommSemiring.{u2} R _inst_3) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4))) (NonUnitalAlgHomClass.toDistribMulActionHomClass.{max (max u3 u1) u2, u2, max u3 u2, u1} (AlgHom.{u2, max u3 u2, u1} R (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (CommRing.toCommSemiring.{u2} R _inst_3) (Subalgebra.toSemiring.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))) (Module.End.semiring.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (Subalgebra.algebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))) (Module.instAlgebraEndToSemiringSemiring.{u2, u1} R M (CommRing.toCommSemiring.{u2} R _inst_3) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4)) R (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{max u3 u2} (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (Semiring.toNonAssocSemiring.{max u3 u2} (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (Subalgebra.toSemiring.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))))) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (Semiring.toNonAssocSemiring.{u1} (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (Module.End.semiring.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4))) (Module.toDistribMulAction.{u2, max u3 u2} R (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{max u3 u2} (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{max u3 u2} (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (Semiring.toNonAssocSemiring.{max u3 u2} (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (Subalgebra.toSemiring.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))))) (Algebra.toModule.{u2, max u3 u2} R (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (CommRing.toCommSemiring.{u2} R _inst_3) (Subalgebra.toSemiring.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))) (Subalgebra.algebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))))) (Module.toDistribMulAction.{u2, u1} R (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (Semiring.toNonAssocSemiring.{u1} (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (Module.End.semiring.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4)))) (Algebra.toModule.{u2, u1} R (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (CommRing.toCommSemiring.{u2} R _inst_3) (Module.End.semiring.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (Module.instAlgebraEndToSemiringSemiring.{u2, u1} R M (CommRing.toCommSemiring.{u2} R _inst_3) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4))) (AlgHom.instNonUnitalAlgHomClassToMonoidToMonoidWithZeroToSemiringToNonUnitalNonAssocSemiringToNonAssocSemiringToNonUnitalNonAssocSemiringToNonAssocSemiringToDistribMulActionToAddCommMonoidToModuleToDistribMulActionToAddCommMonoidToModule.{u2, max u3 u2, u1, max (max u3 u1) u2} R (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (CommRing.toCommSemiring.{u2} R _inst_3) (Subalgebra.toSemiring.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))) (Module.End.semiring.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (Subalgebra.algebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))) (Module.instAlgebraEndToSemiringSemiring.{u2, u1} R M (CommRing.toCommSemiring.{u2} R _inst_3) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (AlgHom.{u2, max u3 u2, u1} R (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (CommRing.toCommSemiring.{u2} R _inst_3) (Subalgebra.toSemiring.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))) (Module.End.semiring.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (Subalgebra.algebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))) (Module.instAlgebraEndToSemiringSemiring.{u2, u1} R M (CommRing.toCommSemiring.{u2} R _inst_3) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4)) (AlgHom.algHomClass.{u2, max u3 u2, u1} R (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (CommRing.toCommSemiring.{u2} R _inst_3) (Subalgebra.toSemiring.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))) (Module.End.semiring.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (Subalgebra.algebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))) (Module.instAlgebraEndToSemiringSemiring.{u2, u1} R M (CommRing.toCommSemiring.{u2} R _inst_3) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4)))))) (Matrix.isRepresentation.toEnd.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b hb (fun (a : ι) (b : ι) => _inst_5 a b)))
Case conversion may be inaccurate. Consider using '#align matrix.is_representation.to_End_surjective Matrix.isRepresentation.toEnd_surjectiveₓ'. -/
theorem Matrix.isRepresentation.toEnd_surjective :
Function.Surjective (Matrix.isRepresentation.toEnd R b hb) :=
mathlib commit https://github.com/leanprover-community/mathlib/commit/33c67ae661dd8988516ff7f247b0be3018cdd952
@@ -36,17 +36,31 @@ open BigOperators
open Polynomial
+#print PiToModule.fromMatrix /-
/-- The composition of a matrix (as an endomporphism of `ι → R`) with the projection
`(ι → R) →ₗ[R] M`. -/
def PiToModule.fromMatrix [DecidableEq ι] : Matrix ι ι R →ₗ[R] (ι → R) →ₗ[R] M :=
(LinearMap.llcomp R _ _ _ (Fintype.total R R b)).comp algEquivMatrix'.symm.toLinearMap
#align pi_to_module.from_matrix PiToModule.fromMatrix
+-/
+/- warning: pi_to_module.from_matrix_apply -> PiToModule.fromMatrix_apply is a dubious translation:
+lean 3 declaration is
+ forall {ι : Type.{u1}} [_inst_1 : Fintype.{u1} ι] {M : Type.{u2}} [_inst_2 : AddCommGroup.{u2} M] (R : Type.{u3}) [_inst_3 : CommRing.{u3} R] [_inst_4 : Module.{u3, u2} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2)] (b : ι -> M) [_inst_5 : DecidableEq.{succ u1} ι] (A : Matrix.{u1, u1, u3} ι ι R) (w : ι -> R), Eq.{succ u2} M (coeFn.{max (succ (max u1 u3)) (succ u2), max (succ (max u1 u3)) (succ u2)} (LinearMap.{u3, u3, max u1 u3, u2} R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) (ι -> R) M (Pi.addCommMonoid.{u1, u3} ι (fun (ᾰ : ι) => R) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} R (NonUnitalNonAssocRing.toAddCommGroup.{u3} R (NonAssocRing.toNonUnitalNonAssocRing.{u3} R (Ring.toNonAssocRing.{u3} R (CommRing.toRing.{u3} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (Pi.Function.module.{u1, u3, u3} ι R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u3} R (NonUnitalNonAssocRing.toAddCommGroup.{u3} R (NonAssocRing.toNonUnitalNonAssocRing.{u3} R (Ring.toNonAssocRing.{u3} R (CommRing.toRing.{u3} R _inst_3))))) (Semiring.toModule.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) _inst_4) (fun (_x : LinearMap.{u3, u3, max u1 u3, u2} R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) (ι -> R) M (Pi.addCommMonoid.{u1, u3} ι (fun (ᾰ : ι) => R) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} R (NonUnitalNonAssocRing.toAddCommGroup.{u3} R (NonAssocRing.toNonUnitalNonAssocRing.{u3} R (Ring.toNonAssocRing.{u3} R (CommRing.toRing.{u3} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (Pi.Function.module.{u1, u3, u3} ι R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u3} R (NonUnitalNonAssocRing.toAddCommGroup.{u3} R (NonAssocRing.toNonUnitalNonAssocRing.{u3} R (Ring.toNonAssocRing.{u3} R (CommRing.toRing.{u3} R _inst_3))))) (Semiring.toModule.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) _inst_4) => (ι -> R) -> M) (LinearMap.hasCoeToFun.{u3, u3, max u1 u3, u2} R R (ι -> R) M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Pi.addCommMonoid.{u1, u3} ι (fun (ᾰ : ι) => R) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} R (NonUnitalNonAssocRing.toAddCommGroup.{u3} R (NonAssocRing.toNonUnitalNonAssocRing.{u3} R (Ring.toNonAssocRing.{u3} R (CommRing.toRing.{u3} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (Pi.Function.module.{u1, u3, u3} ι R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u3} R (NonUnitalNonAssocRing.toAddCommGroup.{u3} R (NonAssocRing.toNonUnitalNonAssocRing.{u3} R (Ring.toNonAssocRing.{u3} R (CommRing.toRing.{u3} R _inst_3))))) (Semiring.toModule.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) _inst_4 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3))))) (coeFn.{max (succ (max u1 u3)) (succ (max (max u1 u3) u2)), max (succ (max u1 u3)) (succ (max (max u1 u3) u2))} (LinearMap.{u3, u3, max u1 u3, max (max u1 u3) u2} R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) (Matrix.{u1, u1, u3} ι ι R) (LinearMap.{u3, u3, max u1 u3, u2} R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) (ι -> R) M (Pi.addCommMonoid.{u1, u3} ι (fun (ᾰ : ι) => R) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} R (NonUnitalNonAssocRing.toAddCommGroup.{u3} R (NonAssocRing.toNonUnitalNonAssocRing.{u3} R (Ring.toNonAssocRing.{u3} R (CommRing.toRing.{u3} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (Pi.Function.module.{u1, u3, u3} ι R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u3} R (NonUnitalNonAssocRing.toAddCommGroup.{u3} R (NonAssocRing.toNonUnitalNonAssocRing.{u3} R (Ring.toNonAssocRing.{u3} R (CommRing.toRing.{u3} R _inst_3))))) (Semiring.toModule.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) _inst_4) (Matrix.addCommMonoid.{u3, u1, u1} ι ι R (AddCommGroup.toAddCommMonoid.{u3} R (NonUnitalNonAssocRing.toAddCommGroup.{u3} R (NonAssocRing.toNonUnitalNonAssocRing.{u3} R (Ring.toNonAssocRing.{u3} R (CommRing.toRing.{u3} R _inst_3)))))) (LinearMap.addCommMonoid.{u3, u3, max u1 u3, u2} R R (ι -> R) M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Pi.addCommMonoid.{u1, u3} ι (fun (ᾰ : ι) => R) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} R (NonUnitalNonAssocRing.toAddCommGroup.{u3} R (NonAssocRing.toNonUnitalNonAssocRing.{u3} R (Ring.toNonAssocRing.{u3} R (CommRing.toRing.{u3} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (Pi.Function.module.{u1, u3, u3} ι R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u3} R (NonUnitalNonAssocRing.toAddCommGroup.{u3} R (NonAssocRing.toNonUnitalNonAssocRing.{u3} R (Ring.toNonAssocRing.{u3} R (CommRing.toRing.{u3} R _inst_3))))) (Semiring.toModule.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) _inst_4 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3))))) (Matrix.module.{u3, u1, u1, u3} ι ι R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u3} R (NonUnitalNonAssocRing.toAddCommGroup.{u3} R (NonAssocRing.toNonUnitalNonAssocRing.{u3} R (Ring.toNonAssocRing.{u3} R (CommRing.toRing.{u3} R _inst_3))))) (Semiring.toModule.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) (LinearMap.module.{u3, u3, u3, max u1 u3, u2} R R R (ι -> R) M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Pi.addCommMonoid.{u1, u3} ι (fun (ᾰ : ι) => R) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} R (NonUnitalNonAssocRing.toAddCommGroup.{u3} R (NonAssocRing.toNonUnitalNonAssocRing.{u3} R (Ring.toNonAssocRing.{u3} R (CommRing.toRing.{u3} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (Pi.Function.module.{u1, u3, u3} ι R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u3} R (NonUnitalNonAssocRing.toAddCommGroup.{u3} R (NonAssocRing.toNonUnitalNonAssocRing.{u3} R (Ring.toNonAssocRing.{u3} R (CommRing.toRing.{u3} R _inst_3))))) (Semiring.toModule.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) _inst_4 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) _inst_4 (PiToModule.fromMatrix._proof_1.{u2, u3} M _inst_2 R _inst_3 _inst_4))) (fun (_x : LinearMap.{u3, u3, max u1 u3, max (max u1 u3) u2} R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) (Matrix.{u1, u1, u3} ι ι R) (LinearMap.{u3, u3, max u1 u3, u2} R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) (ι -> R) M (Pi.addCommMonoid.{u1, u3} ι (fun (ᾰ : ι) => R) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} R (NonUnitalNonAssocRing.toAddCommGroup.{u3} R (NonAssocRing.toNonUnitalNonAssocRing.{u3} R (Ring.toNonAssocRing.{u3} R (CommRing.toRing.{u3} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (Pi.Function.module.{u1, u3, u3} ι R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u3} R (NonUnitalNonAssocRing.toAddCommGroup.{u3} R (NonAssocRing.toNonUnitalNonAssocRing.{u3} R (Ring.toNonAssocRing.{u3} R (CommRing.toRing.{u3} R _inst_3))))) (Semiring.toModule.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) _inst_4) (Matrix.addCommMonoid.{u3, u1, u1} ι ι R (AddCommGroup.toAddCommMonoid.{u3} R (NonUnitalNonAssocRing.toAddCommGroup.{u3} R (NonAssocRing.toNonUnitalNonAssocRing.{u3} R (Ring.toNonAssocRing.{u3} R (CommRing.toRing.{u3} R _inst_3)))))) (LinearMap.addCommMonoid.{u3, u3, max u1 u3, u2} R R (ι -> R) M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Pi.addCommMonoid.{u1, u3} ι (fun (ᾰ : ι) => R) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} R (NonUnitalNonAssocRing.toAddCommGroup.{u3} R (NonAssocRing.toNonUnitalNonAssocRing.{u3} R (Ring.toNonAssocRing.{u3} R (CommRing.toRing.{u3} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (Pi.Function.module.{u1, u3, u3} ι R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u3} R (NonUnitalNonAssocRing.toAddCommGroup.{u3} R (NonAssocRing.toNonUnitalNonAssocRing.{u3} R (Ring.toNonAssocRing.{u3} R (CommRing.toRing.{u3} R _inst_3))))) (Semiring.toModule.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) _inst_4 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3))))) (Matrix.module.{u3, u1, u1, u3} ι ι R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u3} R (NonUnitalNonAssocRing.toAddCommGroup.{u3} R (NonAssocRing.toNonUnitalNonAssocRing.{u3} R (Ring.toNonAssocRing.{u3} R (CommRing.toRing.{u3} R _inst_3))))) (Semiring.toModule.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) (LinearMap.module.{u3, u3, u3, max u1 u3, u2} R R R (ι -> R) M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Pi.addCommMonoid.{u1, u3} ι (fun (ᾰ : ι) => R) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} R (NonUnitalNonAssocRing.toAddCommGroup.{u3} R (NonAssocRing.toNonUnitalNonAssocRing.{u3} R (Ring.toNonAssocRing.{u3} R (CommRing.toRing.{u3} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (Pi.Function.module.{u1, u3, u3} ι R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u3} R (NonUnitalNonAssocRing.toAddCommGroup.{u3} R (NonAssocRing.toNonUnitalNonAssocRing.{u3} R (Ring.toNonAssocRing.{u3} R (CommRing.toRing.{u3} R _inst_3))))) (Semiring.toModule.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) _inst_4 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) _inst_4 (PiToModule.fromMatrix._proof_1.{u2, u3} M _inst_2 R _inst_3 _inst_4))) => (Matrix.{u1, u1, u3} ι ι R) -> (LinearMap.{u3, u3, max u1 u3, u2} R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) (ι -> R) M (Pi.addCommMonoid.{u1, u3} ι (fun (ᾰ : ι) => R) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} R (NonUnitalNonAssocRing.toAddCommGroup.{u3} R (NonAssocRing.toNonUnitalNonAssocRing.{u3} R (Ring.toNonAssocRing.{u3} R (CommRing.toRing.{u3} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (Pi.Function.module.{u1, u3, u3} ι R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u3} R (NonUnitalNonAssocRing.toAddCommGroup.{u3} R (NonAssocRing.toNonUnitalNonAssocRing.{u3} R (Ring.toNonAssocRing.{u3} R (CommRing.toRing.{u3} R _inst_3))))) (Semiring.toModule.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) _inst_4)) (LinearMap.hasCoeToFun.{u3, u3, max u1 u3, max (max u1 u3) u2} R R (Matrix.{u1, u1, u3} ι ι R) (LinearMap.{u3, u3, max u1 u3, u2} R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) (ι -> R) M (Pi.addCommMonoid.{u1, u3} ι (fun (ᾰ : ι) => R) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} R (NonUnitalNonAssocRing.toAddCommGroup.{u3} R (NonAssocRing.toNonUnitalNonAssocRing.{u3} R (Ring.toNonAssocRing.{u3} R (CommRing.toRing.{u3} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (Pi.Function.module.{u1, u3, u3} ι R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u3} R (NonUnitalNonAssocRing.toAddCommGroup.{u3} R (NonAssocRing.toNonUnitalNonAssocRing.{u3} R (Ring.toNonAssocRing.{u3} R (CommRing.toRing.{u3} R _inst_3))))) (Semiring.toModule.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) _inst_4) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Matrix.addCommMonoid.{u3, u1, u1} ι ι R (AddCommGroup.toAddCommMonoid.{u3} R (NonUnitalNonAssocRing.toAddCommGroup.{u3} R (NonAssocRing.toNonUnitalNonAssocRing.{u3} R (Ring.toNonAssocRing.{u3} R (CommRing.toRing.{u3} R _inst_3)))))) (LinearMap.addCommMonoid.{u3, u3, max u1 u3, u2} R R (ι -> R) M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Pi.addCommMonoid.{u1, u3} ι (fun (ᾰ : ι) => R) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} R (NonUnitalNonAssocRing.toAddCommGroup.{u3} R (NonAssocRing.toNonUnitalNonAssocRing.{u3} R (Ring.toNonAssocRing.{u3} R (CommRing.toRing.{u3} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (Pi.Function.module.{u1, u3, u3} ι R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u3} R (NonUnitalNonAssocRing.toAddCommGroup.{u3} R (NonAssocRing.toNonUnitalNonAssocRing.{u3} R (Ring.toNonAssocRing.{u3} R (CommRing.toRing.{u3} R _inst_3))))) (Semiring.toModule.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) _inst_4 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3))))) (Matrix.module.{u3, u1, u1, u3} ι ι R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u3} R (NonUnitalNonAssocRing.toAddCommGroup.{u3} R (NonAssocRing.toNonUnitalNonAssocRing.{u3} R (Ring.toNonAssocRing.{u3} R (CommRing.toRing.{u3} R _inst_3))))) (Semiring.toModule.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) (LinearMap.module.{u3, u3, u3, max u1 u3, u2} R R R (ι -> R) M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Pi.addCommMonoid.{u1, u3} ι (fun (ᾰ : ι) => R) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} R (NonUnitalNonAssocRing.toAddCommGroup.{u3} R (NonAssocRing.toNonUnitalNonAssocRing.{u3} R (Ring.toNonAssocRing.{u3} R (CommRing.toRing.{u3} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (Pi.Function.module.{u1, u3, u3} ι R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u3} R (NonUnitalNonAssocRing.toAddCommGroup.{u3} R (NonAssocRing.toNonUnitalNonAssocRing.{u3} R (Ring.toNonAssocRing.{u3} R (CommRing.toRing.{u3} R _inst_3))))) (Semiring.toModule.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) _inst_4 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) _inst_4 (PiToModule.fromMatrix._proof_1.{u2, u3} M _inst_2 R _inst_3 _inst_4)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3))))) (PiToModule.fromMatrix.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)) A) w) (coeFn.{max (succ (max u1 u3)) (succ u2), max (succ (max u1 u3)) (succ u2)} (LinearMap.{u3, u3, max u1 u3, u2} R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) (ι -> R) M (Pi.addCommMonoid.{u1, u3} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (Pi.Function.module.{u1, u3, u3} ι R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3))))) (Semiring.toModule.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) _inst_4) (fun (_x : LinearMap.{u3, u3, max u1 u3, u2} R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) (ι -> R) M (Pi.addCommMonoid.{u1, u3} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (Pi.Function.module.{u1, u3, u3} ι R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3))))) (Semiring.toModule.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) _inst_4) => (ι -> R) -> M) (LinearMap.hasCoeToFun.{u3, u3, max u1 u3, u2} R R (ι -> R) M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Pi.addCommMonoid.{u1, u3} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (Pi.Function.module.{u1, u3, u3} ι R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3))))) (Semiring.toModule.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) _inst_4 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3))))) (coeFn.{max (succ (max u1 u2)) (succ (max (max u1 u3) u2)), max (succ (max u1 u2)) (succ (max (max u1 u3) u2))} (LinearMap.{u3, u3, max u1 u2, max (max u1 u3) u2} R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) (ι -> M) (LinearMap.{u3, u3, max u1 u3, u2} R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) (ι -> R) M (Pi.addCommMonoid.{u1, u3} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (Pi.Function.module.{u1, u3, u3} ι R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3))))) (Semiring.toModule.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) _inst_4) (Pi.addCommMonoid.{u1, u2} ι (fun (ᾰ : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u2} M _inst_2)) (LinearMap.addCommMonoid.{u3, u3, max u1 u3, u2} R R (ι -> R) M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Pi.addCommMonoid.{u1, u3} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (Pi.Function.module.{u1, u3, u3} ι R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3))))) (Semiring.toModule.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) _inst_4 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3))))) (Pi.Function.module.{u1, u3, u2} ι R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (LinearMap.module.{u3, u3, u3, max u1 u3, u2} R R R (ι -> R) M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Pi.addCommMonoid.{u1, u3} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (Pi.Function.module.{u1, u3, u3} ι R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3))))) (Semiring.toModule.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) _inst_4 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) _inst_4 (smulCommClass_self.{u3, u2} R M (CommRing.toCommMonoid.{u3} R _inst_3) (MulActionWithZero.toMulAction.{u3, u2} R M (Semiring.toMonoidWithZero.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3))) (AddZeroClass.toHasZero.{u2} M (AddMonoid.toAddZeroClass.{u2} M (AddCommMonoid.toAddMonoid.{u2} M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2)))) (Module.toMulActionWithZero.{u3, u2} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4))))) (fun (_x : LinearMap.{u3, u3, max u1 u2, max (max u1 u3) u2} R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) (ι -> M) (LinearMap.{u3, u3, max u1 u3, u2} R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) (ι -> R) M (Pi.addCommMonoid.{u1, u3} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (Pi.Function.module.{u1, u3, u3} ι R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3))))) (Semiring.toModule.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) _inst_4) (Pi.addCommMonoid.{u1, u2} ι (fun (ᾰ : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u2} M _inst_2)) (LinearMap.addCommMonoid.{u3, u3, max u1 u3, u2} R R (ι -> R) M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Pi.addCommMonoid.{u1, u3} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (Pi.Function.module.{u1, u3, u3} ι R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3))))) (Semiring.toModule.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) _inst_4 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3))))) (Pi.Function.module.{u1, u3, u2} ι R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (LinearMap.module.{u3, u3, u3, max u1 u3, u2} R R R (ι -> R) M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Pi.addCommMonoid.{u1, u3} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (Pi.Function.module.{u1, u3, u3} ι R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3))))) (Semiring.toModule.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) _inst_4 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) _inst_4 (smulCommClass_self.{u3, u2} R M (CommRing.toCommMonoid.{u3} R _inst_3) (MulActionWithZero.toMulAction.{u3, u2} R M (Semiring.toMonoidWithZero.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3))) (AddZeroClass.toHasZero.{u2} M (AddMonoid.toAddZeroClass.{u2} M (AddCommMonoid.toAddMonoid.{u2} M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2)))) (Module.toMulActionWithZero.{u3, u2} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4))))) => (ι -> M) -> (LinearMap.{u3, u3, max u1 u3, u2} R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) (ι -> R) M (Pi.addCommMonoid.{u1, u3} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (Pi.Function.module.{u1, u3, u3} ι R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3))))) (Semiring.toModule.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) _inst_4)) (LinearMap.hasCoeToFun.{u3, u3, max u1 u2, max (max u1 u3) u2} R R (ι -> M) (LinearMap.{u3, u3, max u1 u3, u2} R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) (ι -> R) M (Pi.addCommMonoid.{u1, u3} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (Pi.Function.module.{u1, u3, u3} ι R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3))))) (Semiring.toModule.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) _inst_4) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Pi.addCommMonoid.{u1, u2} ι (fun (ᾰ : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u2} M _inst_2)) (LinearMap.addCommMonoid.{u3, u3, max u1 u3, u2} R R (ι -> R) M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Pi.addCommMonoid.{u1, u3} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (Pi.Function.module.{u1, u3, u3} ι R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3))))) (Semiring.toModule.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) _inst_4 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3))))) (Pi.Function.module.{u1, u3, u2} ι R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (LinearMap.module.{u3, u3, u3, max u1 u3, u2} R R R (ι -> R) M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Pi.addCommMonoid.{u1, u3} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (Pi.Function.module.{u1, u3, u3} ι R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3))))) (Semiring.toModule.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) _inst_4 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) _inst_4 (smulCommClass_self.{u3, u2} R M (CommRing.toCommMonoid.{u3} R _inst_3) (MulActionWithZero.toMulAction.{u3, u2} R M (Semiring.toMonoidWithZero.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3))) (AddZeroClass.toHasZero.{u2} M (AddMonoid.toAddZeroClass.{u2} M (AddCommMonoid.toAddMonoid.{u2} M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2)))) (Module.toMulActionWithZero.{u3, u2} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4)))) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3))))) (Fintype.total.{u1, u2, u3, u3} ι M R _inst_1 (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4 R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) _inst_4 (smulCommClass_self.{u3, u2} R M (CommRing.toCommMonoid.{u3} R _inst_3) (MulActionWithZero.toMulAction.{u3, u2} R M (Semiring.toMonoidWithZero.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3))) (AddZeroClass.toHasZero.{u2} M (AddMonoid.toAddZeroClass.{u2} M (AddCommMonoid.toAddMonoid.{u2} M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2)))) (Module.toMulActionWithZero.{u3, u2} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4)))) b) (Matrix.mulVec.{u3, u1, u1} ι ι R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u3} R (NonAssocRing.toNonUnitalNonAssocRing.{u3} R (Ring.toNonAssocRing.{u3} R (CommRing.toRing.{u3} R _inst_3)))) _inst_1 A w))
+but is expected to have type
+ forall {ι : Type.{u3}} [_inst_1 : Fintype.{u3} ι] {M : Type.{u1}} [_inst_2 : AddCommGroup.{u1} M] (R : Type.{u2}) [_inst_3 : CommRing.{u2} R] [_inst_4 : Module.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2)] (b : ι -> M) [_inst_5 : DecidableEq.{succ u3} ι] (A : Matrix.{u3, u3, u2} ι ι R) (w : ι -> R), Eq.{succ u1} ((fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6191 : ι -> R) => M) w) (FunLike.coe.{max (max (succ u3) (succ u1)) (succ u2), max (succ u3) (succ u2), succ u1} ((fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6191 : Matrix.{u3, u3, u2} ι ι R) => LinearMap.{u2, u2, max u3 u2, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (ι -> R) M (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.Charpoly.LinearMap._hyg.130 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.Charpoly.LinearMap._hyg.130 : ι) => R) R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_3))))) (fun (i : ι) => Semiring.toModule.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) _inst_4) A) (ι -> R) (fun (_x : ι -> R) => (fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6191 : ι -> R) => M) _x) (LinearMap.instFunLikeLinearMap.{u2, u2, max u3 u2, u1} R R (ι -> R) M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Pi.addCommMonoid.{u3, u2} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.Charpoly.LinearMap._hyg.130 : ι) => R) R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_3))))) (fun (i : ι) => Semiring.toModule.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) _inst_4 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) (FunLike.coe.{max (max (succ u3) (succ u1)) (succ u2), max (succ u3) (succ u2), max (max (succ u3) (succ u1)) (succ u2)} (LinearMap.{u2, u2, max u2 u3, max u1 u3 u2} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (LinearMap.{u2, u2, max u3 u2, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (ι -> R) M (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.Charpoly.LinearMap._hyg.130 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.Charpoly.LinearMap._hyg.130 : ι) => R) R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_3))))) (fun (i : ι) => Semiring.toModule.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) _inst_4) (Matrix.addCommMonoid.{u2, u3, u3} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_3)))))) (LinearMap.addCommMonoid.{u2, u2, max u3 u2, u1} R R (ι -> R) M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.Charpoly.LinearMap._hyg.130 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.Charpoly.LinearMap._hyg.130 : ι) => R) R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_3))))) (fun (i : ι) => Semiring.toModule.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) _inst_4 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) (Matrix.module.{u2, u3, u3, u2} ι ι R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_3))))) (Semiring.toModule.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (LinearMap.instModuleLinearMapAddCommMonoid.{u2, u2, u2, max u3 u2, u1} R R R (ι -> R) M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.Charpoly.LinearMap._hyg.130 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.Charpoly.LinearMap._hyg.130 : ι) => R) R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_3))))) (fun (i : ι) => Semiring.toModule.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) _inst_4 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_4 (smulCommClass_self.{u2, u1} R M (CommRing.toCommMonoid.{u2} R _inst_3) (MulActionWithZero.toMulAction.{u2, u1} R M (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (NegZeroClass.toZero.{u1} M (SubNegZeroMonoid.toNegZeroClass.{u1} M (SubtractionMonoid.toSubNegZeroMonoid.{u1} M (SubtractionCommMonoid.toSubtractionMonoid.{u1} M (AddCommGroup.toDivisionAddCommMonoid.{u1} M _inst_2))))) (Module.toMulActionWithZero.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4))))) (Matrix.{u3, u3, u2} ι ι R) (fun (_x : Matrix.{u3, u3, u2} ι ι R) => (fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6191 : Matrix.{u3, u3, u2} ι ι R) => LinearMap.{u2, u2, max u3 u2, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (ι -> R) M (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.Charpoly.LinearMap._hyg.130 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.Charpoly.LinearMap._hyg.130 : ι) => R) R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_3))))) (fun (i : ι) => Semiring.toModule.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) _inst_4) _x) (LinearMap.instFunLikeLinearMap.{u2, u2, max u3 u2, max (max u3 u1) u2} R R (Matrix.{u3, u3, u2} ι ι R) (LinearMap.{u2, u2, max u3 u2, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (ι -> R) M (Pi.addCommMonoid.{u3, u2} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.Charpoly.LinearMap._hyg.130 : ι) => R) R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_3))))) (fun (i : ι) => Semiring.toModule.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) _inst_4) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Matrix.addCommMonoid.{u2, u3, u3} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_3)))))) (LinearMap.addCommMonoid.{u2, u2, max u3 u2, u1} R R (ι -> R) M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Pi.addCommMonoid.{u3, u2} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.Charpoly.LinearMap._hyg.130 : ι) => R) R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_3))))) (fun (i : ι) => Semiring.toModule.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) _inst_4 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) (Matrix.module.{u2, u3, u3, u2} ι ι R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_3))))) (Semiring.toModule.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (LinearMap.instModuleLinearMapAddCommMonoid.{u2, u2, u2, max u3 u2, u1} R R R (ι -> R) M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Pi.addCommMonoid.{u3, u2} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.Charpoly.LinearMap._hyg.130 : ι) => R) R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_3))))) (fun (i : ι) => Semiring.toModule.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) _inst_4 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_4 (smulCommClass_self.{u2, u1} R M (CommRing.toCommMonoid.{u2} R _inst_3) (MulActionWithZero.toMulAction.{u2, u1} R M (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (NegZeroClass.toZero.{u1} M (SubNegZeroMonoid.toNegZeroClass.{u1} M (SubtractionMonoid.toSubNegZeroMonoid.{u1} M (SubtractionCommMonoid.toSubtractionMonoid.{u1} M (AddCommGroup.toDivisionAddCommMonoid.{u1} M _inst_2))))) (Module.toMulActionWithZero.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) (PiToModule.fromMatrix.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)) A) w) (FunLike.coe.{max (max (succ u3) (succ u1)) (succ u2), max (succ u3) (succ u2), succ u1} ((fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6191 : ι -> M) => LinearMap.{u2, u2, max u3 u2, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (ι -> R) M (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Finsupp._hyg.14570 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Finsupp._hyg.14570 : ι) => R) R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) (fun (i : ι) => Semiring.toModule.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) _inst_4) b) (ι -> R) (fun (_x : ι -> R) => (fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6191 : ι -> R) => M) _x) (LinearMap.instFunLikeLinearMap.{u2, u2, max u3 u2, u1} R R (ι -> R) M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Pi.addCommMonoid.{u3, u2} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Finsupp._hyg.14570 : ι) => R) R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) (fun (i : ι) => Semiring.toModule.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) _inst_4 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), max (succ u1) (succ u3), max (max (succ u2) (succ u1)) (succ u3)} (LinearMap.{u2, u2, max u3 u1, max u1 u3 u2} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (ι -> M) (LinearMap.{u2, u2, max u3 u2, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (ι -> R) M (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Finsupp._hyg.14570 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Finsupp._hyg.14570 : ι) => R) R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) (fun (i : ι) => Semiring.toModule.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) _inst_4) (Pi.addCommMonoid.{u3, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Finsupp._hyg.14558 : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u1} M _inst_2)) (LinearMap.addCommMonoid.{u2, u2, max u3 u2, u1} R R (ι -> R) M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Finsupp._hyg.14570 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Finsupp._hyg.14570 : ι) => R) R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) (fun (i : ι) => Semiring.toModule.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) _inst_4 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) (Pi.module.{u3, u1, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Finsupp._hyg.14558 : ι) => M) R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (fun (i : ι) => _inst_4)) (LinearMap.instModuleLinearMapAddCommMonoid.{u2, u2, u2, max u3 u2, u1} R R R (ι -> R) M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Finsupp._hyg.14570 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Finsupp._hyg.14570 : ι) => R) R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) (fun (i : ι) => Semiring.toModule.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) _inst_4 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_4 (smulCommClass_self.{u2, u1} R M (CommRing.toCommMonoid.{u2} R _inst_3) (MulActionWithZero.toMulAction.{u2, u1} R M (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (NegZeroClass.toZero.{u1} M (SubNegZeroMonoid.toNegZeroClass.{u1} M (SubtractionMonoid.toSubNegZeroMonoid.{u1} M (SubtractionCommMonoid.toSubtractionMonoid.{u1} M (AddCommGroup.toDivisionAddCommMonoid.{u1} M _inst_2))))) (Module.toMulActionWithZero.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4))))) (ι -> M) (fun (_x : ι -> M) => (fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6191 : ι -> M) => LinearMap.{u2, u2, max u3 u2, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (ι -> R) M (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Finsupp._hyg.14570 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Finsupp._hyg.14570 : ι) => R) R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) (fun (i : ι) => Semiring.toModule.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) _inst_4) _x) (LinearMap.instFunLikeLinearMap.{u2, u2, max u1 u3, max (max u2 u1) u3} R R (ι -> M) (LinearMap.{u2, u2, max u3 u2, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (ι -> R) M (Pi.addCommMonoid.{u3, u2} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Finsupp._hyg.14570 : ι) => R) R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) (fun (i : ι) => Semiring.toModule.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) _inst_4) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Pi.addCommMonoid.{u3, u1} ι (fun (ᾰ : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u1} M _inst_2)) (LinearMap.addCommMonoid.{u2, u2, max u3 u2, u1} R R (ι -> R) M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Pi.addCommMonoid.{u3, u2} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Finsupp._hyg.14570 : ι) => R) R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) (fun (i : ι) => Semiring.toModule.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) _inst_4 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) (Pi.module.{u3, u1, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Finsupp._hyg.14558 : ι) => M) R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (fun (i : ι) => _inst_4)) (LinearMap.instModuleLinearMapAddCommMonoid.{u2, u2, u2, max u3 u2, u1} R R R (ι -> R) M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Pi.addCommMonoid.{u3, u2} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Finsupp._hyg.14570 : ι) => R) R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) (fun (i : ι) => Semiring.toModule.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) _inst_4 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_4 (smulCommClass_self.{u2, u1} R M (CommRing.toCommMonoid.{u2} R _inst_3) (MulActionWithZero.toMulAction.{u2, u1} R M (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (NegZeroClass.toZero.{u1} M (SubNegZeroMonoid.toNegZeroClass.{u1} M (SubtractionMonoid.toSubNegZeroMonoid.{u1} M (SubtractionCommMonoid.toSubtractionMonoid.{u1} M (AddCommGroup.toDivisionAddCommMonoid.{u1} M _inst_2))))) (Module.toMulActionWithZero.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) (Fintype.total.{u3, u1, u2, u2} ι M R _inst_1 (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4 R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_4 (smulCommClass_self.{u2, u1} R M (CommRing.toCommMonoid.{u2} R _inst_3) (MulActionWithZero.toMulAction.{u2, u1} R M (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (NegZeroClass.toZero.{u1} M (SubNegZeroMonoid.toNegZeroClass.{u1} M (SubtractionMonoid.toSubNegZeroMonoid.{u1} M (SubtractionCommMonoid.toSubtractionMonoid.{u1} M (AddCommGroup.toDivisionAddCommMonoid.{u1} M _inst_2))))) (Module.toMulActionWithZero.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4)))) b) (Matrix.mulVec.{u2, u3, u3} ι ι R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_3)))) _inst_1 A w))
+Case conversion may be inaccurate. Consider using '#align pi_to_module.from_matrix_apply PiToModule.fromMatrix_applyₓ'. -/
theorem PiToModule.fromMatrix_apply [DecidableEq ι] (A : Matrix ι ι R) (w : ι → R) :
PiToModule.fromMatrix R b A w = Fintype.total R R b (A.mulVec w) :=
rfl
#align pi_to_module.from_matrix_apply PiToModule.fromMatrix_apply
+/- warning: pi_to_module.from_matrix_apply_single_one -> PiToModule.fromMatrix_apply_single_one is a dubious translation:
+lean 3 declaration is
+ forall {ι : Type.{u1}} [_inst_1 : Fintype.{u1} ι] {M : Type.{u2}} [_inst_2 : AddCommGroup.{u2} M] (R : Type.{u3}) [_inst_3 : CommRing.{u3} R] [_inst_4 : Module.{u3, u2} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2)] (b : ι -> M) [_inst_5 : DecidableEq.{succ u1} ι] (A : Matrix.{u1, u1, u3} ι ι R) (j : ι), Eq.{succ u2} M (coeFn.{max (succ (max u1 u3)) (succ u2), max (succ (max u1 u3)) (succ u2)} (LinearMap.{u3, u3, max u1 u3, u2} R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) (ι -> R) M (Pi.addCommMonoid.{u1, u3} ι (fun (ᾰ : ι) => R) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} R (NonUnitalNonAssocRing.toAddCommGroup.{u3} R (NonAssocRing.toNonUnitalNonAssocRing.{u3} R (Ring.toNonAssocRing.{u3} R (CommRing.toRing.{u3} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (Pi.Function.module.{u1, u3, u3} ι R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u3} R (NonUnitalNonAssocRing.toAddCommGroup.{u3} R (NonAssocRing.toNonUnitalNonAssocRing.{u3} R (Ring.toNonAssocRing.{u3} R (CommRing.toRing.{u3} R _inst_3))))) (Semiring.toModule.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) _inst_4) (fun (_x : LinearMap.{u3, u3, max u1 u3, u2} R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) (ι -> R) M (Pi.addCommMonoid.{u1, u3} ι (fun (ᾰ : ι) => R) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} R (NonUnitalNonAssocRing.toAddCommGroup.{u3} R (NonAssocRing.toNonUnitalNonAssocRing.{u3} R (Ring.toNonAssocRing.{u3} R (CommRing.toRing.{u3} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (Pi.Function.module.{u1, u3, u3} ι R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u3} R (NonUnitalNonAssocRing.toAddCommGroup.{u3} R (NonAssocRing.toNonUnitalNonAssocRing.{u3} R (Ring.toNonAssocRing.{u3} R (CommRing.toRing.{u3} R _inst_3))))) (Semiring.toModule.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) _inst_4) => (ι -> R) -> M) (LinearMap.hasCoeToFun.{u3, u3, max u1 u3, u2} R R (ι -> R) M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Pi.addCommMonoid.{u1, u3} ι (fun (ᾰ : ι) => R) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} R (NonUnitalNonAssocRing.toAddCommGroup.{u3} R (NonAssocRing.toNonUnitalNonAssocRing.{u3} R (Ring.toNonAssocRing.{u3} R (CommRing.toRing.{u3} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (Pi.Function.module.{u1, u3, u3} ι R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u3} R (NonUnitalNonAssocRing.toAddCommGroup.{u3} R (NonAssocRing.toNonUnitalNonAssocRing.{u3} R (Ring.toNonAssocRing.{u3} R (CommRing.toRing.{u3} R _inst_3))))) (Semiring.toModule.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) _inst_4 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3))))) (coeFn.{max (succ (max u1 u3)) (succ (max (max u1 u3) u2)), max (succ (max u1 u3)) (succ (max (max u1 u3) u2))} (LinearMap.{u3, u3, max u1 u3, max (max u1 u3) u2} R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) (Matrix.{u1, u1, u3} ι ι R) (LinearMap.{u3, u3, max u1 u3, u2} R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) (ι -> R) M (Pi.addCommMonoid.{u1, u3} ι (fun (ᾰ : ι) => R) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} R (NonUnitalNonAssocRing.toAddCommGroup.{u3} R (NonAssocRing.toNonUnitalNonAssocRing.{u3} R (Ring.toNonAssocRing.{u3} R (CommRing.toRing.{u3} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (Pi.Function.module.{u1, u3, u3} ι R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u3} R (NonUnitalNonAssocRing.toAddCommGroup.{u3} R (NonAssocRing.toNonUnitalNonAssocRing.{u3} R (Ring.toNonAssocRing.{u3} R (CommRing.toRing.{u3} R _inst_3))))) (Semiring.toModule.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) _inst_4) (Matrix.addCommMonoid.{u3, u1, u1} ι ι R (AddCommGroup.toAddCommMonoid.{u3} R (NonUnitalNonAssocRing.toAddCommGroup.{u3} R (NonAssocRing.toNonUnitalNonAssocRing.{u3} R (Ring.toNonAssocRing.{u3} R (CommRing.toRing.{u3} R _inst_3)))))) (LinearMap.addCommMonoid.{u3, u3, max u1 u3, u2} R R (ι -> R) M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Pi.addCommMonoid.{u1, u3} ι (fun (ᾰ : ι) => R) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} R (NonUnitalNonAssocRing.toAddCommGroup.{u3} R (NonAssocRing.toNonUnitalNonAssocRing.{u3} R (Ring.toNonAssocRing.{u3} R (CommRing.toRing.{u3} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (Pi.Function.module.{u1, u3, u3} ι R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u3} R (NonUnitalNonAssocRing.toAddCommGroup.{u3} R (NonAssocRing.toNonUnitalNonAssocRing.{u3} R (Ring.toNonAssocRing.{u3} R (CommRing.toRing.{u3} R _inst_3))))) (Semiring.toModule.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) _inst_4 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3))))) (Matrix.module.{u3, u1, u1, u3} ι ι R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u3} R (NonUnitalNonAssocRing.toAddCommGroup.{u3} R (NonAssocRing.toNonUnitalNonAssocRing.{u3} R (Ring.toNonAssocRing.{u3} R (CommRing.toRing.{u3} R _inst_3))))) (Semiring.toModule.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) (LinearMap.module.{u3, u3, u3, max u1 u3, u2} R R R (ι -> R) M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Pi.addCommMonoid.{u1, u3} ι (fun (ᾰ : ι) => R) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} R (NonUnitalNonAssocRing.toAddCommGroup.{u3} R (NonAssocRing.toNonUnitalNonAssocRing.{u3} R (Ring.toNonAssocRing.{u3} R (CommRing.toRing.{u3} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (Pi.Function.module.{u1, u3, u3} ι R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u3} R (NonUnitalNonAssocRing.toAddCommGroup.{u3} R (NonAssocRing.toNonUnitalNonAssocRing.{u3} R (Ring.toNonAssocRing.{u3} R (CommRing.toRing.{u3} R _inst_3))))) (Semiring.toModule.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) _inst_4 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) _inst_4 (PiToModule.fromMatrix._proof_1.{u2, u3} M _inst_2 R _inst_3 _inst_4))) (fun (_x : LinearMap.{u3, u3, max u1 u3, max (max u1 u3) u2} R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) (Matrix.{u1, u1, u3} ι ι R) (LinearMap.{u3, u3, max u1 u3, u2} R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) (ι -> R) M (Pi.addCommMonoid.{u1, u3} ι (fun (ᾰ : ι) => R) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} R (NonUnitalNonAssocRing.toAddCommGroup.{u3} R (NonAssocRing.toNonUnitalNonAssocRing.{u3} R (Ring.toNonAssocRing.{u3} R (CommRing.toRing.{u3} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (Pi.Function.module.{u1, u3, u3} ι R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u3} R (NonUnitalNonAssocRing.toAddCommGroup.{u3} R (NonAssocRing.toNonUnitalNonAssocRing.{u3} R (Ring.toNonAssocRing.{u3} R (CommRing.toRing.{u3} R _inst_3))))) (Semiring.toModule.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) _inst_4) (Matrix.addCommMonoid.{u3, u1, u1} ι ι R (AddCommGroup.toAddCommMonoid.{u3} R (NonUnitalNonAssocRing.toAddCommGroup.{u3} R (NonAssocRing.toNonUnitalNonAssocRing.{u3} R (Ring.toNonAssocRing.{u3} R (CommRing.toRing.{u3} R _inst_3)))))) (LinearMap.addCommMonoid.{u3, u3, max u1 u3, u2} R R (ι -> R) M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Pi.addCommMonoid.{u1, u3} ι (fun (ᾰ : ι) => R) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} R (NonUnitalNonAssocRing.toAddCommGroup.{u3} R (NonAssocRing.toNonUnitalNonAssocRing.{u3} R (Ring.toNonAssocRing.{u3} R (CommRing.toRing.{u3} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (Pi.Function.module.{u1, u3, u3} ι R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u3} R (NonUnitalNonAssocRing.toAddCommGroup.{u3} R (NonAssocRing.toNonUnitalNonAssocRing.{u3} R (Ring.toNonAssocRing.{u3} R (CommRing.toRing.{u3} R _inst_3))))) (Semiring.toModule.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) _inst_4 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3))))) (Matrix.module.{u3, u1, u1, u3} ι ι R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u3} R (NonUnitalNonAssocRing.toAddCommGroup.{u3} R (NonAssocRing.toNonUnitalNonAssocRing.{u3} R (Ring.toNonAssocRing.{u3} R (CommRing.toRing.{u3} R _inst_3))))) (Semiring.toModule.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) (LinearMap.module.{u3, u3, u3, max u1 u3, u2} R R R (ι -> R) M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Pi.addCommMonoid.{u1, u3} ι (fun (ᾰ : ι) => R) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} R (NonUnitalNonAssocRing.toAddCommGroup.{u3} R (NonAssocRing.toNonUnitalNonAssocRing.{u3} R (Ring.toNonAssocRing.{u3} R (CommRing.toRing.{u3} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (Pi.Function.module.{u1, u3, u3} ι R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u3} R (NonUnitalNonAssocRing.toAddCommGroup.{u3} R (NonAssocRing.toNonUnitalNonAssocRing.{u3} R (Ring.toNonAssocRing.{u3} R (CommRing.toRing.{u3} R _inst_3))))) (Semiring.toModule.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) _inst_4 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) _inst_4 (PiToModule.fromMatrix._proof_1.{u2, u3} M _inst_2 R _inst_3 _inst_4))) => (Matrix.{u1, u1, u3} ι ι R) -> (LinearMap.{u3, u3, max u1 u3, u2} R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) (ι -> R) M (Pi.addCommMonoid.{u1, u3} ι (fun (ᾰ : ι) => R) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} R (NonUnitalNonAssocRing.toAddCommGroup.{u3} R (NonAssocRing.toNonUnitalNonAssocRing.{u3} R (Ring.toNonAssocRing.{u3} R (CommRing.toRing.{u3} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (Pi.Function.module.{u1, u3, u3} ι R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u3} R (NonUnitalNonAssocRing.toAddCommGroup.{u3} R (NonAssocRing.toNonUnitalNonAssocRing.{u3} R (Ring.toNonAssocRing.{u3} R (CommRing.toRing.{u3} R _inst_3))))) (Semiring.toModule.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) _inst_4)) (LinearMap.hasCoeToFun.{u3, u3, max u1 u3, max (max u1 u3) u2} R R (Matrix.{u1, u1, u3} ι ι R) (LinearMap.{u3, u3, max u1 u3, u2} R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) (ι -> R) M (Pi.addCommMonoid.{u1, u3} ι (fun (ᾰ : ι) => R) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} R (NonUnitalNonAssocRing.toAddCommGroup.{u3} R (NonAssocRing.toNonUnitalNonAssocRing.{u3} R (Ring.toNonAssocRing.{u3} R (CommRing.toRing.{u3} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (Pi.Function.module.{u1, u3, u3} ι R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u3} R (NonUnitalNonAssocRing.toAddCommGroup.{u3} R (NonAssocRing.toNonUnitalNonAssocRing.{u3} R (Ring.toNonAssocRing.{u3} R (CommRing.toRing.{u3} R _inst_3))))) (Semiring.toModule.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) _inst_4) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Matrix.addCommMonoid.{u3, u1, u1} ι ι R (AddCommGroup.toAddCommMonoid.{u3} R (NonUnitalNonAssocRing.toAddCommGroup.{u3} R (NonAssocRing.toNonUnitalNonAssocRing.{u3} R (Ring.toNonAssocRing.{u3} R (CommRing.toRing.{u3} R _inst_3)))))) (LinearMap.addCommMonoid.{u3, u3, max u1 u3, u2} R R (ι -> R) M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Pi.addCommMonoid.{u1, u3} ι (fun (ᾰ : ι) => R) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} R (NonUnitalNonAssocRing.toAddCommGroup.{u3} R (NonAssocRing.toNonUnitalNonAssocRing.{u3} R (Ring.toNonAssocRing.{u3} R (CommRing.toRing.{u3} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (Pi.Function.module.{u1, u3, u3} ι R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u3} R (NonUnitalNonAssocRing.toAddCommGroup.{u3} R (NonAssocRing.toNonUnitalNonAssocRing.{u3} R (Ring.toNonAssocRing.{u3} R (CommRing.toRing.{u3} R _inst_3))))) (Semiring.toModule.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) _inst_4 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3))))) (Matrix.module.{u3, u1, u1, u3} ι ι R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u3} R (NonUnitalNonAssocRing.toAddCommGroup.{u3} R (NonAssocRing.toNonUnitalNonAssocRing.{u3} R (Ring.toNonAssocRing.{u3} R (CommRing.toRing.{u3} R _inst_3))))) (Semiring.toModule.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) (LinearMap.module.{u3, u3, u3, max u1 u3, u2} R R R (ι -> R) M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Pi.addCommMonoid.{u1, u3} ι (fun (ᾰ : ι) => R) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} R (NonUnitalNonAssocRing.toAddCommGroup.{u3} R (NonAssocRing.toNonUnitalNonAssocRing.{u3} R (Ring.toNonAssocRing.{u3} R (CommRing.toRing.{u3} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (Pi.Function.module.{u1, u3, u3} ι R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u3} R (NonUnitalNonAssocRing.toAddCommGroup.{u3} R (NonAssocRing.toNonUnitalNonAssocRing.{u3} R (Ring.toNonAssocRing.{u3} R (CommRing.toRing.{u3} R _inst_3))))) (Semiring.toModule.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) _inst_4 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) _inst_4 (PiToModule.fromMatrix._proof_1.{u2, u3} M _inst_2 R _inst_3 _inst_4)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3))))) (PiToModule.fromMatrix.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)) A) (Pi.single.{u1, u3} ι (fun (ᾰ : ι) => R) (fun (a : ι) (b : ι) => _inst_5 a b) (fun (i : ι) => MulZeroClass.toHasZero.{u3} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u3} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u3} R (NonAssocRing.toNonUnitalNonAssocRing.{u3} R (Ring.toNonAssocRing.{u3} R (CommRing.toRing.{u3} R _inst_3)))))) j (OfNat.ofNat.{u3} R 1 (OfNat.mk.{u3} R 1 (One.one.{u3} R (AddMonoidWithOne.toOne.{u3} R (AddGroupWithOne.toAddMonoidWithOne.{u3} R (AddCommGroupWithOne.toAddGroupWithOne.{u3} R (Ring.toAddCommGroupWithOne.{u3} R (CommRing.toRing.{u3} R _inst_3)))))))))) (Finset.sum.{u2, u1} M ι (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (Finset.univ.{u1} ι _inst_1) (fun (i : ι) => SMul.smul.{u3, u2} R M (SMulZeroClass.toHasSmul.{u3, u2} R M (AddZeroClass.toHasZero.{u2} M (AddMonoid.toAddZeroClass.{u2} M (AddCommMonoid.toAddMonoid.{u2} M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2)))) (SMulWithZero.toSmulZeroClass.{u3, u2} R M (MulZeroClass.toHasZero.{u3} R (MulZeroOneClass.toMulZeroClass.{u3} R (MonoidWithZero.toMulZeroOneClass.{u3} R (Semiring.toMonoidWithZero.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))))) (AddZeroClass.toHasZero.{u2} M (AddMonoid.toAddZeroClass.{u2} M (AddCommMonoid.toAddMonoid.{u2} M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2)))) (MulActionWithZero.toSMulWithZero.{u3, u2} R M (Semiring.toMonoidWithZero.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3))) (AddZeroClass.toHasZero.{u2} M (AddMonoid.toAddZeroClass.{u2} M (AddCommMonoid.toAddMonoid.{u2} M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2)))) (Module.toMulActionWithZero.{u3, u2} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4)))) (A i j) (b i)))
+but is expected to have type
+ forall {ι : Type.{u3}} [_inst_1 : Fintype.{u3} ι] {M : Type.{u1}} [_inst_2 : AddCommGroup.{u1} M] (R : Type.{u2}) [_inst_3 : CommRing.{u2} R] [_inst_4 : Module.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2)] (b : ι -> M) [_inst_5 : DecidableEq.{succ u3} ι] (A : Matrix.{u3, u3, u2} ι ι R) (j : ι), Eq.{succ u1} ((fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6191 : ι -> R) => M) (Pi.single.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.Charpoly.LinearMap._hyg.130 : ι) => R) (fun (a : ι) (b : ι) => _inst_5 a b) (fun (i : ι) => CommMonoidWithZero.toZero.{u2} R (CommSemiring.toCommMonoidWithZero.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) j (OfNat.ofNat.{u2} R 1 (One.toOfNat1.{u2} R (Semiring.toOne.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))))) (FunLike.coe.{max (max (succ u3) (succ u1)) (succ u2), max (succ u3) (succ u2), succ u1} ((fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6191 : Matrix.{u3, u3, u2} ι ι R) => LinearMap.{u2, u2, max u3 u2, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (ι -> R) M (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.Charpoly.LinearMap._hyg.130 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.Charpoly.LinearMap._hyg.130 : ι) => R) R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_3))))) (fun (i : ι) => Semiring.toModule.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) _inst_4) A) (ι -> R) (fun (_x : ι -> R) => (fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6191 : ι -> R) => M) _x) (LinearMap.instFunLikeLinearMap.{u2, u2, max u3 u2, u1} R R (ι -> R) M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Pi.addCommMonoid.{u3, u2} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.Charpoly.LinearMap._hyg.130 : ι) => R) R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_3))))) (fun (i : ι) => Semiring.toModule.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) _inst_4 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) (FunLike.coe.{max (max (succ u3) (succ u1)) (succ u2), max (succ u3) (succ u2), max (max (succ u3) (succ u1)) (succ u2)} (LinearMap.{u2, u2, max u2 u3, max u1 u3 u2} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (LinearMap.{u2, u2, max u3 u2, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (ι -> R) M (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.Charpoly.LinearMap._hyg.130 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.Charpoly.LinearMap._hyg.130 : ι) => R) R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_3))))) (fun (i : ι) => Semiring.toModule.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) _inst_4) (Matrix.addCommMonoid.{u2, u3, u3} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_3)))))) (LinearMap.addCommMonoid.{u2, u2, max u3 u2, u1} R R (ι -> R) M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.Charpoly.LinearMap._hyg.130 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.Charpoly.LinearMap._hyg.130 : ι) => R) R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_3))))) (fun (i : ι) => Semiring.toModule.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) _inst_4 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) (Matrix.module.{u2, u3, u3, u2} ι ι R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_3))))) (Semiring.toModule.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (LinearMap.instModuleLinearMapAddCommMonoid.{u2, u2, u2, max u3 u2, u1} R R R (ι -> R) M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.Charpoly.LinearMap._hyg.130 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.Charpoly.LinearMap._hyg.130 : ι) => R) R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_3))))) (fun (i : ι) => Semiring.toModule.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) _inst_4 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_4 (smulCommClass_self.{u2, u1} R M (CommRing.toCommMonoid.{u2} R _inst_3) (MulActionWithZero.toMulAction.{u2, u1} R M (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (NegZeroClass.toZero.{u1} M (SubNegZeroMonoid.toNegZeroClass.{u1} M (SubtractionMonoid.toSubNegZeroMonoid.{u1} M (SubtractionCommMonoid.toSubtractionMonoid.{u1} M (AddCommGroup.toDivisionAddCommMonoid.{u1} M _inst_2))))) (Module.toMulActionWithZero.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4))))) (Matrix.{u3, u3, u2} ι ι R) (fun (_x : Matrix.{u3, u3, u2} ι ι R) => (fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6191 : Matrix.{u3, u3, u2} ι ι R) => LinearMap.{u2, u2, max u3 u2, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (ι -> R) M (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.Charpoly.LinearMap._hyg.130 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.Charpoly.LinearMap._hyg.130 : ι) => R) R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_3))))) (fun (i : ι) => Semiring.toModule.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) _inst_4) _x) (LinearMap.instFunLikeLinearMap.{u2, u2, max u3 u2, max (max u3 u1) u2} R R (Matrix.{u3, u3, u2} ι ι R) (LinearMap.{u2, u2, max u3 u2, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (ι -> R) M (Pi.addCommMonoid.{u3, u2} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.Charpoly.LinearMap._hyg.130 : ι) => R) R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_3))))) (fun (i : ι) => Semiring.toModule.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) _inst_4) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Matrix.addCommMonoid.{u2, u3, u3} ι ι R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_3)))))) (LinearMap.addCommMonoid.{u2, u2, max u3 u2, u1} R R (ι -> R) M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Pi.addCommMonoid.{u3, u2} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.Charpoly.LinearMap._hyg.130 : ι) => R) R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_3))))) (fun (i : ι) => Semiring.toModule.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) _inst_4 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) (Matrix.module.{u2, u3, u3, u2} ι ι R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_3))))) (Semiring.toModule.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (LinearMap.instModuleLinearMapAddCommMonoid.{u2, u2, u2, max u3 u2, u1} R R R (ι -> R) M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Pi.addCommMonoid.{u3, u2} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.Charpoly.LinearMap._hyg.130 : ι) => R) R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_3))))) (fun (i : ι) => Semiring.toModule.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) _inst_4 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_4 (smulCommClass_self.{u2, u1} R M (CommRing.toCommMonoid.{u2} R _inst_3) (MulActionWithZero.toMulAction.{u2, u1} R M (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (NegZeroClass.toZero.{u1} M (SubNegZeroMonoid.toNegZeroClass.{u1} M (SubtractionMonoid.toSubNegZeroMonoid.{u1} M (SubtractionCommMonoid.toSubtractionMonoid.{u1} M (AddCommGroup.toDivisionAddCommMonoid.{u1} M _inst_2))))) (Module.toMulActionWithZero.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) (PiToModule.fromMatrix.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)) A) (Pi.single.{u3, u2} ι (fun (ᾰ : ι) => R) (fun (a : ι) (b : ι) => _inst_5 a b) (fun (i : ι) => CommMonoidWithZero.toZero.{u2} R (CommSemiring.toCommMonoidWithZero.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) j (OfNat.ofNat.{u2} R 1 (One.toOfNat1.{u2} R (Semiring.toOne.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))))) (Finset.sum.{u1, u3} M ι (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (Finset.univ.{u3} ι _inst_1) (fun (i : ι) => HSMul.hSMul.{u2, u1, u1} R M M (instHSMul.{u2, u1} R M (SMulZeroClass.toSMul.{u2, u1} R M (NegZeroClass.toZero.{u1} M (SubNegZeroMonoid.toNegZeroClass.{u1} M (SubtractionMonoid.toSubNegZeroMonoid.{u1} M (SubtractionCommMonoid.toSubtractionMonoid.{u1} M (AddCommGroup.toDivisionAddCommMonoid.{u1} M _inst_2))))) (SMulWithZero.toSMulZeroClass.{u2, u1} R M (CommMonoidWithZero.toZero.{u2} R (CommSemiring.toCommMonoidWithZero.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (NegZeroClass.toZero.{u1} M (SubNegZeroMonoid.toNegZeroClass.{u1} M (SubtractionMonoid.toSubNegZeroMonoid.{u1} M (SubtractionCommMonoid.toSubtractionMonoid.{u1} M (AddCommGroup.toDivisionAddCommMonoid.{u1} M _inst_2))))) (MulActionWithZero.toSMulWithZero.{u2, u1} R M (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (NegZeroClass.toZero.{u1} M (SubNegZeroMonoid.toNegZeroClass.{u1} M (SubtractionMonoid.toSubNegZeroMonoid.{u1} M (SubtractionCommMonoid.toSubtractionMonoid.{u1} M (AddCommGroup.toDivisionAddCommMonoid.{u1} M _inst_2))))) (Module.toMulActionWithZero.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4))))) (A i j) (b i)))
+Case conversion may be inaccurate. Consider using '#align pi_to_module.from_matrix_apply_single_one PiToModule.fromMatrix_apply_single_oneₓ'. -/
theorem PiToModule.fromMatrix_apply_single_one [DecidableEq ι] (A : Matrix ι ι R) (j : ι) :
PiToModule.fromMatrix R b A (Pi.single j 1) = ∑ i : ι, A i j • b i :=
by
@@ -54,17 +68,31 @@ theorem PiToModule.fromMatrix_apply_single_one [DecidableEq ι] (A : Matrix ι
simp_rw [mul_one]
#align pi_to_module.from_matrix_apply_single_one PiToModule.fromMatrix_apply_single_one
+#print PiToModule.fromEnd /-
/-- The endomorphisms of `M` acts on `(ι → R) →ₗ[R] M`, and takes the projection
to a `(ι → R) →ₗ[R] M`. -/
def PiToModule.fromEnd : Module.End R M →ₗ[R] (ι → R) →ₗ[R] M :=
LinearMap.lcomp _ _ (Fintype.total R R b)
#align pi_to_module.from_End PiToModule.fromEnd
+-/
+/- warning: pi_to_module.from_End_apply -> PiToModule.fromEnd_apply is a dubious translation:
+lean 3 declaration is
+ forall {ι : Type.{u1}} [_inst_1 : Fintype.{u1} ι] {M : Type.{u2}} [_inst_2 : AddCommGroup.{u2} M] (R : Type.{u3}) [_inst_3 : CommRing.{u3} R] [_inst_4 : Module.{u3, u2} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2)] (b : ι -> M) (f : Module.End.{u3, u2} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (w : ι -> R), Eq.{succ u2} M (coeFn.{max (succ (max u1 u3)) (succ u2), max (succ (max u1 u3)) (succ u2)} (LinearMap.{u3, u3, max u1 u3, u2} R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) (ι -> R) M (Pi.addCommMonoid.{u1, u3} ι (fun (ᾰ : ι) => R) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} R (NonUnitalNonAssocRing.toAddCommGroup.{u3} R (NonAssocRing.toNonUnitalNonAssocRing.{u3} R (Ring.toNonAssocRing.{u3} R (CommRing.toRing.{u3} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (Pi.Function.module.{u1, u3, u3} ι R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u3} R (NonUnitalNonAssocRing.toAddCommGroup.{u3} R (NonAssocRing.toNonUnitalNonAssocRing.{u3} R (Ring.toNonAssocRing.{u3} R (CommRing.toRing.{u3} R _inst_3))))) (Semiring.toModule.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) _inst_4) (fun (_x : LinearMap.{u3, u3, max u1 u3, u2} R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) (ι -> R) M (Pi.addCommMonoid.{u1, u3} ι (fun (ᾰ : ι) => R) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} R (NonUnitalNonAssocRing.toAddCommGroup.{u3} R (NonAssocRing.toNonUnitalNonAssocRing.{u3} R (Ring.toNonAssocRing.{u3} R (CommRing.toRing.{u3} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (Pi.Function.module.{u1, u3, u3} ι R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u3} R (NonUnitalNonAssocRing.toAddCommGroup.{u3} R (NonAssocRing.toNonUnitalNonAssocRing.{u3} R (Ring.toNonAssocRing.{u3} R (CommRing.toRing.{u3} R _inst_3))))) (Semiring.toModule.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) _inst_4) => (ι -> R) -> M) (LinearMap.hasCoeToFun.{u3, u3, max u1 u3, u2} R R (ι -> R) M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Pi.addCommMonoid.{u1, u3} ι (fun (ᾰ : ι) => R) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} R (NonUnitalNonAssocRing.toAddCommGroup.{u3} R (NonAssocRing.toNonUnitalNonAssocRing.{u3} R (Ring.toNonAssocRing.{u3} R (CommRing.toRing.{u3} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (Pi.Function.module.{u1, u3, u3} ι R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u3} R (NonUnitalNonAssocRing.toAddCommGroup.{u3} R (NonAssocRing.toNonUnitalNonAssocRing.{u3} R (Ring.toNonAssocRing.{u3} R (CommRing.toRing.{u3} R _inst_3))))) (Semiring.toModule.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) _inst_4 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3))))) (coeFn.{max (succ u2) (succ (max (max u1 u3) u2)), max (succ u2) (succ (max (max u1 u3) u2))} (LinearMap.{u3, u3, u2, max (max u1 u3) u2} R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) (Module.End.{u3, u2} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (LinearMap.{u3, u3, max u1 u3, u2} R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) (ι -> R) M (Pi.addCommMonoid.{u1, u3} ι (fun (ᾰ : ι) => R) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} R (NonUnitalNonAssocRing.toAddCommGroup.{u3} R (NonAssocRing.toNonUnitalNonAssocRing.{u3} R (Ring.toNonAssocRing.{u3} R (CommRing.toRing.{u3} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (Pi.Function.module.{u1, u3, u3} ι R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u3} R (NonUnitalNonAssocRing.toAddCommGroup.{u3} R (NonAssocRing.toNonUnitalNonAssocRing.{u3} R (Ring.toNonAssocRing.{u3} R (CommRing.toRing.{u3} R _inst_3))))) (Semiring.toModule.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) _inst_4) (LinearMap.addCommMonoid.{u3, u3, u2, u2} R R M M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4 _inst_4 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3))))) (LinearMap.addCommMonoid.{u3, u3, max u1 u3, u2} R R (ι -> R) M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Pi.addCommMonoid.{u1, u3} ι (fun (ᾰ : ι) => R) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} R (NonUnitalNonAssocRing.toAddCommGroup.{u3} R (NonAssocRing.toNonUnitalNonAssocRing.{u3} R (Ring.toNonAssocRing.{u3} R (CommRing.toRing.{u3} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (Pi.Function.module.{u1, u3, u3} ι R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u3} R (NonUnitalNonAssocRing.toAddCommGroup.{u3} R (NonAssocRing.toNonUnitalNonAssocRing.{u3} R (Ring.toNonAssocRing.{u3} R (CommRing.toRing.{u3} R _inst_3))))) (Semiring.toModule.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) _inst_4 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3))))) (LinearMap.module.{u3, u3, u3, u2, u2} R R R M M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4 _inst_4 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) _inst_4 (PiToModule.fromEnd._proof_1.{u2, u3} M _inst_2 R _inst_3 _inst_4)) (LinearMap.module.{u3, u3, u3, max u1 u3, u2} R R R (ι -> R) M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Pi.addCommMonoid.{u1, u3} ι (fun (ᾰ : ι) => R) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} R (NonUnitalNonAssocRing.toAddCommGroup.{u3} R (NonAssocRing.toNonUnitalNonAssocRing.{u3} R (Ring.toNonAssocRing.{u3} R (CommRing.toRing.{u3} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (Pi.Function.module.{u1, u3, u3} ι R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u3} R (NonUnitalNonAssocRing.toAddCommGroup.{u3} R (NonAssocRing.toNonUnitalNonAssocRing.{u3} R (Ring.toNonAssocRing.{u3} R (CommRing.toRing.{u3} R _inst_3))))) (Semiring.toModule.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) _inst_4 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) _inst_4 (PiToModule.fromEnd._proof_2.{u2, u3} M _inst_2 R _inst_3 _inst_4))) (fun (_x : LinearMap.{u3, u3, u2, max (max u1 u3) u2} R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) (Module.End.{u3, u2} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (LinearMap.{u3, u3, max u1 u3, u2} R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) (ι -> R) M (Pi.addCommMonoid.{u1, u3} ι (fun (ᾰ : ι) => R) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} R (NonUnitalNonAssocRing.toAddCommGroup.{u3} R (NonAssocRing.toNonUnitalNonAssocRing.{u3} R (Ring.toNonAssocRing.{u3} R (CommRing.toRing.{u3} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (Pi.Function.module.{u1, u3, u3} ι R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u3} R (NonUnitalNonAssocRing.toAddCommGroup.{u3} R (NonAssocRing.toNonUnitalNonAssocRing.{u3} R (Ring.toNonAssocRing.{u3} R (CommRing.toRing.{u3} R _inst_3))))) (Semiring.toModule.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) _inst_4) (LinearMap.addCommMonoid.{u3, u3, u2, u2} R R M M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4 _inst_4 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3))))) (LinearMap.addCommMonoid.{u3, u3, max u1 u3, u2} R R (ι -> R) M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Pi.addCommMonoid.{u1, u3} ι (fun (ᾰ : ι) => R) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} R (NonUnitalNonAssocRing.toAddCommGroup.{u3} R (NonAssocRing.toNonUnitalNonAssocRing.{u3} R (Ring.toNonAssocRing.{u3} R (CommRing.toRing.{u3} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (Pi.Function.module.{u1, u3, u3} ι R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u3} R (NonUnitalNonAssocRing.toAddCommGroup.{u3} R (NonAssocRing.toNonUnitalNonAssocRing.{u3} R (Ring.toNonAssocRing.{u3} R (CommRing.toRing.{u3} R _inst_3))))) (Semiring.toModule.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) _inst_4 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3))))) (LinearMap.module.{u3, u3, u3, u2, u2} R R R M M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4 _inst_4 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) _inst_4 (PiToModule.fromEnd._proof_1.{u2, u3} M _inst_2 R _inst_3 _inst_4)) (LinearMap.module.{u3, u3, u3, max u1 u3, u2} R R R (ι -> R) M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Pi.addCommMonoid.{u1, u3} ι (fun (ᾰ : ι) => R) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} R (NonUnitalNonAssocRing.toAddCommGroup.{u3} R (NonAssocRing.toNonUnitalNonAssocRing.{u3} R (Ring.toNonAssocRing.{u3} R (CommRing.toRing.{u3} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (Pi.Function.module.{u1, u3, u3} ι R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u3} R (NonUnitalNonAssocRing.toAddCommGroup.{u3} R (NonAssocRing.toNonUnitalNonAssocRing.{u3} R (Ring.toNonAssocRing.{u3} R (CommRing.toRing.{u3} R _inst_3))))) (Semiring.toModule.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) _inst_4 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) _inst_4 (PiToModule.fromEnd._proof_2.{u2, u3} M _inst_2 R _inst_3 _inst_4))) => (Module.End.{u3, u2} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) -> (LinearMap.{u3, u3, max u1 u3, u2} R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) (ι -> R) M (Pi.addCommMonoid.{u1, u3} ι (fun (ᾰ : ι) => R) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} R (NonUnitalNonAssocRing.toAddCommGroup.{u3} R (NonAssocRing.toNonUnitalNonAssocRing.{u3} R (Ring.toNonAssocRing.{u3} R (CommRing.toRing.{u3} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (Pi.Function.module.{u1, u3, u3} ι R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u3} R (NonUnitalNonAssocRing.toAddCommGroup.{u3} R (NonAssocRing.toNonUnitalNonAssocRing.{u3} R (Ring.toNonAssocRing.{u3} R (CommRing.toRing.{u3} R _inst_3))))) (Semiring.toModule.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) _inst_4)) (LinearMap.hasCoeToFun.{u3, u3, u2, max (max u1 u3) u2} R R (Module.End.{u3, u2} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (LinearMap.{u3, u3, max u1 u3, u2} R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) (ι -> R) M (Pi.addCommMonoid.{u1, u3} ι (fun (ᾰ : ι) => R) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} R (NonUnitalNonAssocRing.toAddCommGroup.{u3} R (NonAssocRing.toNonUnitalNonAssocRing.{u3} R (Ring.toNonAssocRing.{u3} R (CommRing.toRing.{u3} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (Pi.Function.module.{u1, u3, u3} ι R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u3} R (NonUnitalNonAssocRing.toAddCommGroup.{u3} R (NonAssocRing.toNonUnitalNonAssocRing.{u3} R (Ring.toNonAssocRing.{u3} R (CommRing.toRing.{u3} R _inst_3))))) (Semiring.toModule.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) _inst_4) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (LinearMap.addCommMonoid.{u3, u3, u2, u2} R R M M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4 _inst_4 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3))))) (LinearMap.addCommMonoid.{u3, u3, max u1 u3, u2} R R (ι -> R) M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Pi.addCommMonoid.{u1, u3} ι (fun (ᾰ : ι) => R) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} R (NonUnitalNonAssocRing.toAddCommGroup.{u3} R (NonAssocRing.toNonUnitalNonAssocRing.{u3} R (Ring.toNonAssocRing.{u3} R (CommRing.toRing.{u3} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (Pi.Function.module.{u1, u3, u3} ι R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u3} R (NonUnitalNonAssocRing.toAddCommGroup.{u3} R (NonAssocRing.toNonUnitalNonAssocRing.{u3} R (Ring.toNonAssocRing.{u3} R (CommRing.toRing.{u3} R _inst_3))))) (Semiring.toModule.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) _inst_4 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3))))) (LinearMap.module.{u3, u3, u3, u2, u2} R R R M M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4 _inst_4 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) _inst_4 (PiToModule.fromEnd._proof_1.{u2, u3} M _inst_2 R _inst_3 _inst_4)) (LinearMap.module.{u3, u3, u3, max u1 u3, u2} R R R (ι -> R) M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Pi.addCommMonoid.{u1, u3} ι (fun (ᾰ : ι) => R) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} R (NonUnitalNonAssocRing.toAddCommGroup.{u3} R (NonAssocRing.toNonUnitalNonAssocRing.{u3} R (Ring.toNonAssocRing.{u3} R (CommRing.toRing.{u3} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (Pi.Function.module.{u1, u3, u3} ι R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u3} R (NonUnitalNonAssocRing.toAddCommGroup.{u3} R (NonAssocRing.toNonUnitalNonAssocRing.{u3} R (Ring.toNonAssocRing.{u3} R (CommRing.toRing.{u3} R _inst_3))))) (Semiring.toModule.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) _inst_4 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) _inst_4 (PiToModule.fromEnd._proof_2.{u2, u3} M _inst_2 R _inst_3 _inst_4)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3))))) (PiToModule.fromEnd.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b) f) w) (coeFn.{succ u2, succ u2} (Module.End.{u3, u2} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (fun (_x : LinearMap.{u3, u3, u2, u2} R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4 _inst_4) => M -> M) (LinearMap.hasCoeToFun.{u3, u3, u2, u2} R R M M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4 _inst_4 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3))))) f (coeFn.{max (succ (max u1 u3)) (succ u2), max (succ (max u1 u3)) (succ u2)} (LinearMap.{u3, u3, max u1 u3, u2} R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) (ι -> R) M (Pi.addCommMonoid.{u1, u3} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (Pi.Function.module.{u1, u3, u3} ι R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3))))) (Semiring.toModule.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) _inst_4) (fun (_x : LinearMap.{u3, u3, max u1 u3, u2} R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) (ι -> R) M (Pi.addCommMonoid.{u1, u3} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (Pi.Function.module.{u1, u3, u3} ι R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3))))) (Semiring.toModule.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) _inst_4) => (ι -> R) -> M) (LinearMap.hasCoeToFun.{u3, u3, max u1 u3, u2} R R (ι -> R) M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Pi.addCommMonoid.{u1, u3} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (Pi.Function.module.{u1, u3, u3} ι R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3))))) (Semiring.toModule.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) _inst_4 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3))))) (coeFn.{max (succ (max u1 u2)) (succ (max (max u1 u3) u2)), max (succ (max u1 u2)) (succ (max (max u1 u3) u2))} (LinearMap.{u3, u3, max u1 u2, max (max u1 u3) u2} R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) (ι -> M) (LinearMap.{u3, u3, max u1 u3, u2} R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) (ι -> R) M (Pi.addCommMonoid.{u1, u3} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (Pi.Function.module.{u1, u3, u3} ι R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3))))) (Semiring.toModule.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) _inst_4) (Pi.addCommMonoid.{u1, u2} ι (fun (ᾰ : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u2} M _inst_2)) (LinearMap.addCommMonoid.{u3, u3, max u1 u3, u2} R R (ι -> R) M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Pi.addCommMonoid.{u1, u3} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (Pi.Function.module.{u1, u3, u3} ι R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3))))) (Semiring.toModule.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) _inst_4 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3))))) (Pi.Function.module.{u1, u3, u2} ι R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (LinearMap.module.{u3, u3, u3, max u1 u3, u2} R R R (ι -> R) M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Pi.addCommMonoid.{u1, u3} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (Pi.Function.module.{u1, u3, u3} ι R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3))))) (Semiring.toModule.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) _inst_4 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) _inst_4 (smulCommClass_self.{u3, u2} R M (CommRing.toCommMonoid.{u3} R _inst_3) (MulActionWithZero.toMulAction.{u3, u2} R M (Semiring.toMonoidWithZero.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3))) (AddZeroClass.toHasZero.{u2} M (AddMonoid.toAddZeroClass.{u2} M (AddCommMonoid.toAddMonoid.{u2} M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2)))) (Module.toMulActionWithZero.{u3, u2} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4))))) (fun (_x : LinearMap.{u3, u3, max u1 u2, max (max u1 u3) u2} R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) (ι -> M) (LinearMap.{u3, u3, max u1 u3, u2} R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) (ι -> R) M (Pi.addCommMonoid.{u1, u3} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (Pi.Function.module.{u1, u3, u3} ι R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3))))) (Semiring.toModule.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) _inst_4) (Pi.addCommMonoid.{u1, u2} ι (fun (ᾰ : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u2} M _inst_2)) (LinearMap.addCommMonoid.{u3, u3, max u1 u3, u2} R R (ι -> R) M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Pi.addCommMonoid.{u1, u3} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (Pi.Function.module.{u1, u3, u3} ι R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3))))) (Semiring.toModule.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) _inst_4 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3))))) (Pi.Function.module.{u1, u3, u2} ι R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (LinearMap.module.{u3, u3, u3, max u1 u3, u2} R R R (ι -> R) M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Pi.addCommMonoid.{u1, u3} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (Pi.Function.module.{u1, u3, u3} ι R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3))))) (Semiring.toModule.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) _inst_4 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) _inst_4 (smulCommClass_self.{u3, u2} R M (CommRing.toCommMonoid.{u3} R _inst_3) (MulActionWithZero.toMulAction.{u3, u2} R M (Semiring.toMonoidWithZero.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3))) (AddZeroClass.toHasZero.{u2} M (AddMonoid.toAddZeroClass.{u2} M (AddCommMonoid.toAddMonoid.{u2} M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2)))) (Module.toMulActionWithZero.{u3, u2} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4))))) => (ι -> M) -> (LinearMap.{u3, u3, max u1 u3, u2} R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) (ι -> R) M (Pi.addCommMonoid.{u1, u3} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (Pi.Function.module.{u1, u3, u3} ι R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3))))) (Semiring.toModule.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) _inst_4)) (LinearMap.hasCoeToFun.{u3, u3, max u1 u2, max (max u1 u3) u2} R R (ι -> M) (LinearMap.{u3, u3, max u1 u3, u2} R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) (ι -> R) M (Pi.addCommMonoid.{u1, u3} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (Pi.Function.module.{u1, u3, u3} ι R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3))))) (Semiring.toModule.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) _inst_4) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Pi.addCommMonoid.{u1, u2} ι (fun (ᾰ : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u2} M _inst_2)) (LinearMap.addCommMonoid.{u3, u3, max u1 u3, u2} R R (ι -> R) M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Pi.addCommMonoid.{u1, u3} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (Pi.Function.module.{u1, u3, u3} ι R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3))))) (Semiring.toModule.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) _inst_4 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3))))) (Pi.Function.module.{u1, u3, u2} ι R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (LinearMap.module.{u3, u3, u3, max u1 u3, u2} R R R (ι -> R) M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Pi.addCommMonoid.{u1, u3} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (Pi.Function.module.{u1, u3, u3} ι R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3))))) (Semiring.toModule.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) _inst_4 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) _inst_4 (smulCommClass_self.{u3, u2} R M (CommRing.toCommMonoid.{u3} R _inst_3) (MulActionWithZero.toMulAction.{u3, u2} R M (Semiring.toMonoidWithZero.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3))) (AddZeroClass.toHasZero.{u2} M (AddMonoid.toAddZeroClass.{u2} M (AddCommMonoid.toAddMonoid.{u2} M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2)))) (Module.toMulActionWithZero.{u3, u2} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4)))) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3))))) (Fintype.total.{u1, u2, u3, u3} ι M R _inst_1 (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4 R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) _inst_4 (smulCommClass_self.{u3, u2} R M (CommRing.toCommMonoid.{u3} R _inst_3) (MulActionWithZero.toMulAction.{u3, u2} R M (Semiring.toMonoidWithZero.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3))) (AddZeroClass.toHasZero.{u2} M (AddMonoid.toAddZeroClass.{u2} M (AddCommMonoid.toAddMonoid.{u2} M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2)))) (Module.toMulActionWithZero.{u3, u2} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4)))) b) w))
+but is expected to have type
+ forall {ι : Type.{u1}} [_inst_1 : Fintype.{u1} ι] {M : Type.{u2}} [_inst_2 : AddCommGroup.{u2} M] (R : Type.{u3}) [_inst_3 : CommRing.{u3} R] [_inst_4 : Module.{u3, u2} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2)] (b : ι -> M) (f : Module.End.{u3, u2} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (w : ι -> R), Eq.{succ u2} ((fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6191 : ι -> R) => M) w) (FunLike.coe.{max (max (succ u1) (succ u2)) (succ u3), max (succ u1) (succ u3), succ u2} ((fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6191 : Module.End.{u3, u2} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) => LinearMap.{u3, u3, max u1 u3, u2} R R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (ι -> R) M (Pi.addCommMonoid.{u1, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.Charpoly.LinearMap._hyg.392 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u3} R (NonAssocRing.toNonUnitalNonAssocRing.{u3} R (Ring.toNonAssocRing.{u3} R (CommRing.toRing.{u3} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (Pi.module.{u1, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.Charpoly.LinearMap._hyg.392 : ι) => R) R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u3} R (NonAssocRing.toNonUnitalNonAssocRing.{u3} R (Ring.toNonAssocRing.{u3} R (CommRing.toRing.{u3} R _inst_3))))) (fun (i : ι) => Semiring.toModule.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) _inst_4) f) (ι -> R) (fun (_x : ι -> R) => (fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6191 : ι -> R) => M) _x) (LinearMap.instFunLikeLinearMap.{u3, u3, max u1 u3, u2} R R (ι -> R) M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Pi.addCommMonoid.{u1, u3} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u3} R (NonAssocRing.toNonUnitalNonAssocRing.{u3} R (Ring.toNonAssocRing.{u3} R (CommRing.toRing.{u3} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (Pi.module.{u1, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.Charpoly.LinearMap._hyg.392 : ι) => R) R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u3} R (NonAssocRing.toNonUnitalNonAssocRing.{u3} R (Ring.toNonAssocRing.{u3} R (CommRing.toRing.{u3} R _inst_3))))) (fun (i : ι) => Semiring.toModule.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) _inst_4 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))))) (FunLike.coe.{max (max (succ u1) (succ u2)) (succ u3), succ u2, max (max (succ u1) (succ u2)) (succ u3)} (LinearMap.{u3, u3, u2, max u2 u1 u3} R R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (Module.End.{u3, u2} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (LinearMap.{u3, u3, max u1 u3, u2} R R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (ι -> R) M (Pi.addCommMonoid.{u1, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.Charpoly.LinearMap._hyg.392 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u3} R (NonAssocRing.toNonUnitalNonAssocRing.{u3} R (Ring.toNonAssocRing.{u3} R (CommRing.toRing.{u3} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (Pi.module.{u1, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.Charpoly.LinearMap._hyg.392 : ι) => R) R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u3} R (NonAssocRing.toNonUnitalNonAssocRing.{u3} R (Ring.toNonAssocRing.{u3} R (CommRing.toRing.{u3} R _inst_3))))) (fun (i : ι) => Semiring.toModule.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) _inst_4) (LinearMap.addCommMonoid.{u3, u3, u2, u2} R R M M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4 _inst_4 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))))) (LinearMap.addCommMonoid.{u3, u3, max u1 u3, u2} R R (ι -> R) M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Pi.addCommMonoid.{u1, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.Charpoly.LinearMap._hyg.392 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u3} R (NonAssocRing.toNonUnitalNonAssocRing.{u3} R (Ring.toNonAssocRing.{u3} R (CommRing.toRing.{u3} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (Pi.module.{u1, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.Charpoly.LinearMap._hyg.392 : ι) => R) R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u3} R (NonAssocRing.toNonUnitalNonAssocRing.{u3} R (Ring.toNonAssocRing.{u3} R (CommRing.toRing.{u3} R _inst_3))))) (fun (i : ι) => Semiring.toModule.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) _inst_4 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u3, u3, u3, u2, u2} R R R M M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4 _inst_4 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_4 (smulCommClass_self.{u3, u2} R M (CommRing.toCommMonoid.{u3} R _inst_3) (MulActionWithZero.toMulAction.{u3, u2} R M (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))) (NegZeroClass.toZero.{u2} M (SubNegZeroMonoid.toNegZeroClass.{u2} M (SubtractionMonoid.toSubNegZeroMonoid.{u2} M (SubtractionCommMonoid.toSubtractionMonoid.{u2} M (AddCommGroup.toDivisionAddCommMonoid.{u2} M _inst_2))))) (Module.toMulActionWithZero.{u3, u2} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4)))) (LinearMap.instModuleLinearMapAddCommMonoid.{u3, u3, u3, max u1 u3, u2} R R R (ι -> R) M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Pi.addCommMonoid.{u1, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.Charpoly.LinearMap._hyg.392 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u3} R (NonAssocRing.toNonUnitalNonAssocRing.{u3} R (Ring.toNonAssocRing.{u3} R (CommRing.toRing.{u3} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (Pi.module.{u1, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.Charpoly.LinearMap._hyg.392 : ι) => R) R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u3} R (NonAssocRing.toNonUnitalNonAssocRing.{u3} R (Ring.toNonAssocRing.{u3} R (CommRing.toRing.{u3} R _inst_3))))) (fun (i : ι) => Semiring.toModule.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) _inst_4 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_4 (smulCommClass_self.{u3, u2} R M (CommRing.toCommMonoid.{u3} R _inst_3) (MulActionWithZero.toMulAction.{u3, u2} R M (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))) (NegZeroClass.toZero.{u2} M (SubNegZeroMonoid.toNegZeroClass.{u2} M (SubtractionMonoid.toSubNegZeroMonoid.{u2} M (SubtractionCommMonoid.toSubtractionMonoid.{u2} M (AddCommGroup.toDivisionAddCommMonoid.{u2} M _inst_2))))) (Module.toMulActionWithZero.{u3, u2} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4))))) (Module.End.{u3, u2} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (fun (_x : Module.End.{u3, u2} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) => (fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6191 : Module.End.{u3, u2} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) => LinearMap.{u3, u3, max u1 u3, u2} R R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (ι -> R) M (Pi.addCommMonoid.{u1, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.Charpoly.LinearMap._hyg.392 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u3} R (NonAssocRing.toNonUnitalNonAssocRing.{u3} R (Ring.toNonAssocRing.{u3} R (CommRing.toRing.{u3} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (Pi.module.{u1, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.Charpoly.LinearMap._hyg.392 : ι) => R) R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u3} R (NonAssocRing.toNonUnitalNonAssocRing.{u3} R (Ring.toNonAssocRing.{u3} R (CommRing.toRing.{u3} R _inst_3))))) (fun (i : ι) => Semiring.toModule.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) _inst_4) _x) (LinearMap.instFunLikeLinearMap.{u3, u3, u2, max (max u1 u2) u3} R R (Module.End.{u3, u2} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (LinearMap.{u3, u3, max u1 u3, u2} R R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (ι -> R) M (Pi.addCommMonoid.{u1, u3} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u3} R (NonAssocRing.toNonUnitalNonAssocRing.{u3} R (Ring.toNonAssocRing.{u3} R (CommRing.toRing.{u3} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (Pi.module.{u1, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.Charpoly.LinearMap._hyg.392 : ι) => R) R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u3} R (NonAssocRing.toNonUnitalNonAssocRing.{u3} R (Ring.toNonAssocRing.{u3} R (CommRing.toRing.{u3} R _inst_3))))) (fun (i : ι) => Semiring.toModule.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) _inst_4) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (LinearMap.addCommMonoid.{u3, u3, u2, u2} R R M M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4 _inst_4 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))))) (LinearMap.addCommMonoid.{u3, u3, max u1 u3, u2} R R (ι -> R) M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Pi.addCommMonoid.{u1, u3} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u3} R (NonAssocRing.toNonUnitalNonAssocRing.{u3} R (Ring.toNonAssocRing.{u3} R (CommRing.toRing.{u3} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (Pi.module.{u1, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.Charpoly.LinearMap._hyg.392 : ι) => R) R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u3} R (NonAssocRing.toNonUnitalNonAssocRing.{u3} R (Ring.toNonAssocRing.{u3} R (CommRing.toRing.{u3} R _inst_3))))) (fun (i : ι) => Semiring.toModule.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) _inst_4 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u3, u3, u3, u2, u2} R R R M M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4 _inst_4 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_4 (smulCommClass_self.{u3, u2} R M (CommRing.toCommMonoid.{u3} R _inst_3) (MulActionWithZero.toMulAction.{u3, u2} R M (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))) (NegZeroClass.toZero.{u2} M (SubNegZeroMonoid.toNegZeroClass.{u2} M (SubtractionMonoid.toSubNegZeroMonoid.{u2} M (SubtractionCommMonoid.toSubtractionMonoid.{u2} M (AddCommGroup.toDivisionAddCommMonoid.{u2} M _inst_2))))) (Module.toMulActionWithZero.{u3, u2} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4)))) (LinearMap.instModuleLinearMapAddCommMonoid.{u3, u3, u3, max u1 u3, u2} R R R (ι -> R) M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Pi.addCommMonoid.{u1, u3} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u3} R (NonAssocRing.toNonUnitalNonAssocRing.{u3} R (Ring.toNonAssocRing.{u3} R (CommRing.toRing.{u3} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (Pi.module.{u1, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.Charpoly.LinearMap._hyg.392 : ι) => R) R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u3} R (NonAssocRing.toNonUnitalNonAssocRing.{u3} R (Ring.toNonAssocRing.{u3} R (CommRing.toRing.{u3} R _inst_3))))) (fun (i : ι) => Semiring.toModule.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) _inst_4 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_4 (smulCommClass_self.{u3, u2} R M (CommRing.toCommMonoid.{u3} R _inst_3) (MulActionWithZero.toMulAction.{u3, u2} R M (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))) (NegZeroClass.toZero.{u2} M (SubNegZeroMonoid.toNegZeroClass.{u2} M (SubtractionMonoid.toSubNegZeroMonoid.{u2} M (SubtractionCommMonoid.toSubtractionMonoid.{u2} M (AddCommGroup.toDivisionAddCommMonoid.{u2} M _inst_2))))) (Module.toMulActionWithZero.{u3, u2} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4)))) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))))) (PiToModule.fromEnd.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b) f) w) (FunLike.coe.{succ u2, succ u2, succ u2} (Module.End.{u3, u2} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6191 : M) => M) _x) (LinearMap.instFunLikeLinearMap.{u3, u3, u2, u2} R R M M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4 _inst_4 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))))) f (FunLike.coe.{max (max (succ u1) (succ u2)) (succ u3), max (succ u1) (succ u3), succ u2} ((fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6191 : ι -> M) => LinearMap.{u3, u3, max u1 u3, u2} R R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (ι -> R) M (Pi.addCommMonoid.{u1, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Finsupp._hyg.14570 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (Pi.module.{u1, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Finsupp._hyg.14570 : ι) => R) R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))))) (fun (i : ι) => Semiring.toModule.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) _inst_4) b) (ι -> R) (fun (_x : ι -> R) => (fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6191 : ι -> R) => M) _x) (LinearMap.instFunLikeLinearMap.{u3, u3, max u1 u3, u2} R R (ι -> R) M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Pi.addCommMonoid.{u1, u3} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (Pi.module.{u1, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Finsupp._hyg.14570 : ι) => R) R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))))) (fun (i : ι) => Semiring.toModule.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) _inst_4 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))))) (FunLike.coe.{max (max (succ u3) (succ u2)) (succ u1), max (succ u2) (succ u1), max (max (succ u3) (succ u2)) (succ u1)} (LinearMap.{u3, u3, max u1 u2, max u2 u1 u3} R R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (ι -> M) (LinearMap.{u3, u3, max u1 u3, u2} R R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (ι -> R) M (Pi.addCommMonoid.{u1, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Finsupp._hyg.14570 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (Pi.module.{u1, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Finsupp._hyg.14570 : ι) => R) R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))))) (fun (i : ι) => Semiring.toModule.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) _inst_4) (Pi.addCommMonoid.{u1, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Finsupp._hyg.14558 : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u2} M _inst_2)) (LinearMap.addCommMonoid.{u3, u3, max u1 u3, u2} R R (ι -> R) M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Pi.addCommMonoid.{u1, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Finsupp._hyg.14570 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (Pi.module.{u1, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Finsupp._hyg.14570 : ι) => R) R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))))) (fun (i : ι) => Semiring.toModule.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) _inst_4 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))))) (Pi.module.{u1, u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Finsupp._hyg.14558 : ι) => M) R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (fun (i : ι) => _inst_4)) (LinearMap.instModuleLinearMapAddCommMonoid.{u3, u3, u3, max u1 u3, u2} R R R (ι -> R) M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Pi.addCommMonoid.{u1, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Finsupp._hyg.14570 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (Pi.module.{u1, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Finsupp._hyg.14570 : ι) => R) R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))))) (fun (i : ι) => Semiring.toModule.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) _inst_4 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_4 (smulCommClass_self.{u3, u2} R M (CommRing.toCommMonoid.{u3} R _inst_3) (MulActionWithZero.toMulAction.{u3, u2} R M (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))) (NegZeroClass.toZero.{u2} M (SubNegZeroMonoid.toNegZeroClass.{u2} M (SubtractionMonoid.toSubNegZeroMonoid.{u2} M (SubtractionCommMonoid.toSubtractionMonoid.{u2} M (AddCommGroup.toDivisionAddCommMonoid.{u2} M _inst_2))))) (Module.toMulActionWithZero.{u3, u2} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4))))) (ι -> M) (fun (_x : ι -> M) => (fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6191 : ι -> M) => LinearMap.{u3, u3, max u1 u3, u2} R R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (ι -> R) M (Pi.addCommMonoid.{u1, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Finsupp._hyg.14570 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (Pi.module.{u1, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Finsupp._hyg.14570 : ι) => R) R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))))) (fun (i : ι) => Semiring.toModule.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) _inst_4) _x) (LinearMap.instFunLikeLinearMap.{u3, u3, max u2 u1, max (max u3 u2) u1} R R (ι -> M) (LinearMap.{u3, u3, max u1 u3, u2} R R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (ι -> R) M (Pi.addCommMonoid.{u1, u3} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (Pi.module.{u1, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Finsupp._hyg.14570 : ι) => R) R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))))) (fun (i : ι) => Semiring.toModule.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) _inst_4) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Pi.addCommMonoid.{u1, u2} ι (fun (ᾰ : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u2} M _inst_2)) (LinearMap.addCommMonoid.{u3, u3, max u1 u3, u2} R R (ι -> R) M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Pi.addCommMonoid.{u1, u3} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (Pi.module.{u1, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Finsupp._hyg.14570 : ι) => R) R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))))) (fun (i : ι) => Semiring.toModule.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) _inst_4 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))))) (Pi.module.{u1, u2, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Finsupp._hyg.14558 : ι) => M) R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (fun (i : ι) => _inst_4)) (LinearMap.instModuleLinearMapAddCommMonoid.{u3, u3, u3, max u1 u3, u2} R R R (ι -> R) M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Pi.addCommMonoid.{u1, u3} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (Pi.module.{u1, u3, u3} ι (fun (a._@.Mathlib.LinearAlgebra.Finsupp._hyg.14570 : ι) => R) R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))))) (fun (i : ι) => Semiring.toModule.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) _inst_4 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_4 (smulCommClass_self.{u3, u2} R M (CommRing.toCommMonoid.{u3} R _inst_3) (MulActionWithZero.toMulAction.{u3, u2} R M (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))) (NegZeroClass.toZero.{u2} M (SubNegZeroMonoid.toNegZeroClass.{u2} M (SubtractionMonoid.toSubNegZeroMonoid.{u2} M (SubtractionCommMonoid.toSubtractionMonoid.{u2} M (AddCommGroup.toDivisionAddCommMonoid.{u2} M _inst_2))))) (Module.toMulActionWithZero.{u3, u2} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4)))) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))))) (Fintype.total.{u1, u2, u3, u3} ι M R _inst_1 (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4 R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_4 (smulCommClass_self.{u3, u2} R M (CommRing.toCommMonoid.{u3} R _inst_3) (MulActionWithZero.toMulAction.{u3, u2} R M (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))) (NegZeroClass.toZero.{u2} M (SubNegZeroMonoid.toNegZeroClass.{u2} M (SubtractionMonoid.toSubNegZeroMonoid.{u2} M (SubtractionCommMonoid.toSubtractionMonoid.{u2} M (AddCommGroup.toDivisionAddCommMonoid.{u2} M _inst_2))))) (Module.toMulActionWithZero.{u3, u2} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4)))) b) w))
+Case conversion may be inaccurate. Consider using '#align pi_to_module.from_End_apply PiToModule.fromEnd_applyₓ'. -/
theorem PiToModule.fromEnd_apply (f : Module.End R M) (w : ι → R) :
PiToModule.fromEnd R b f w = f (Fintype.total R R b w) :=
rfl
#align pi_to_module.from_End_apply PiToModule.fromEnd_apply
+/- warning: pi_to_module.from_End_apply_single_one -> PiToModule.fromEnd_apply_single_one is a dubious translation:
+lean 3 declaration is
+ forall {ι : Type.{u1}} [_inst_1 : Fintype.{u1} ι] {M : Type.{u2}} [_inst_2 : AddCommGroup.{u2} M] (R : Type.{u3}) [_inst_3 : CommRing.{u3} R] [_inst_4 : Module.{u3, u2} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2)] (b : ι -> M) [_inst_5 : DecidableEq.{succ u1} ι] (f : Module.End.{u3, u2} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (i : ι), Eq.{succ u2} M (coeFn.{max (succ (max u1 u3)) (succ u2), max (succ (max u1 u3)) (succ u2)} (LinearMap.{u3, u3, max u1 u3, u2} R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) (ι -> R) M (Pi.addCommMonoid.{u1, u3} ι (fun (ᾰ : ι) => R) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} R (NonUnitalNonAssocRing.toAddCommGroup.{u3} R (NonAssocRing.toNonUnitalNonAssocRing.{u3} R (Ring.toNonAssocRing.{u3} R (CommRing.toRing.{u3} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (Pi.Function.module.{u1, u3, u3} ι R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u3} R (NonUnitalNonAssocRing.toAddCommGroup.{u3} R (NonAssocRing.toNonUnitalNonAssocRing.{u3} R (Ring.toNonAssocRing.{u3} R (CommRing.toRing.{u3} R _inst_3))))) (Semiring.toModule.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) _inst_4) (fun (_x : LinearMap.{u3, u3, max u1 u3, u2} R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) (ι -> R) M (Pi.addCommMonoid.{u1, u3} ι (fun (ᾰ : ι) => R) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} R (NonUnitalNonAssocRing.toAddCommGroup.{u3} R (NonAssocRing.toNonUnitalNonAssocRing.{u3} R (Ring.toNonAssocRing.{u3} R (CommRing.toRing.{u3} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (Pi.Function.module.{u1, u3, u3} ι R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u3} R (NonUnitalNonAssocRing.toAddCommGroup.{u3} R (NonAssocRing.toNonUnitalNonAssocRing.{u3} R (Ring.toNonAssocRing.{u3} R (CommRing.toRing.{u3} R _inst_3))))) (Semiring.toModule.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) _inst_4) => (ι -> R) -> M) (LinearMap.hasCoeToFun.{u3, u3, max u1 u3, u2} R R (ι -> R) M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Pi.addCommMonoid.{u1, u3} ι (fun (ᾰ : ι) => R) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} R (NonUnitalNonAssocRing.toAddCommGroup.{u3} R (NonAssocRing.toNonUnitalNonAssocRing.{u3} R (Ring.toNonAssocRing.{u3} R (CommRing.toRing.{u3} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (Pi.Function.module.{u1, u3, u3} ι R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u3} R (NonUnitalNonAssocRing.toAddCommGroup.{u3} R (NonAssocRing.toNonUnitalNonAssocRing.{u3} R (Ring.toNonAssocRing.{u3} R (CommRing.toRing.{u3} R _inst_3))))) (Semiring.toModule.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) _inst_4 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3))))) (coeFn.{max (succ u2) (succ (max (max u1 u3) u2)), max (succ u2) (succ (max (max u1 u3) u2))} (LinearMap.{u3, u3, u2, max (max u1 u3) u2} R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) (Module.End.{u3, u2} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (LinearMap.{u3, u3, max u1 u3, u2} R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) (ι -> R) M (Pi.addCommMonoid.{u1, u3} ι (fun (ᾰ : ι) => R) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} R (NonUnitalNonAssocRing.toAddCommGroup.{u3} R (NonAssocRing.toNonUnitalNonAssocRing.{u3} R (Ring.toNonAssocRing.{u3} R (CommRing.toRing.{u3} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (Pi.Function.module.{u1, u3, u3} ι R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u3} R (NonUnitalNonAssocRing.toAddCommGroup.{u3} R (NonAssocRing.toNonUnitalNonAssocRing.{u3} R (Ring.toNonAssocRing.{u3} R (CommRing.toRing.{u3} R _inst_3))))) (Semiring.toModule.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) _inst_4) (LinearMap.addCommMonoid.{u3, u3, u2, u2} R R M M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4 _inst_4 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3))))) (LinearMap.addCommMonoid.{u3, u3, max u1 u3, u2} R R (ι -> R) M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Pi.addCommMonoid.{u1, u3} ι (fun (ᾰ : ι) => R) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} R (NonUnitalNonAssocRing.toAddCommGroup.{u3} R (NonAssocRing.toNonUnitalNonAssocRing.{u3} R (Ring.toNonAssocRing.{u3} R (CommRing.toRing.{u3} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (Pi.Function.module.{u1, u3, u3} ι R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u3} R (NonUnitalNonAssocRing.toAddCommGroup.{u3} R (NonAssocRing.toNonUnitalNonAssocRing.{u3} R (Ring.toNonAssocRing.{u3} R (CommRing.toRing.{u3} R _inst_3))))) (Semiring.toModule.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) _inst_4 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3))))) (LinearMap.module.{u3, u3, u3, u2, u2} R R R M M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4 _inst_4 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) _inst_4 (PiToModule.fromEnd._proof_1.{u2, u3} M _inst_2 R _inst_3 _inst_4)) (LinearMap.module.{u3, u3, u3, max u1 u3, u2} R R R (ι -> R) M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Pi.addCommMonoid.{u1, u3} ι (fun (ᾰ : ι) => R) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} R (NonUnitalNonAssocRing.toAddCommGroup.{u3} R (NonAssocRing.toNonUnitalNonAssocRing.{u3} R (Ring.toNonAssocRing.{u3} R (CommRing.toRing.{u3} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (Pi.Function.module.{u1, u3, u3} ι R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u3} R (NonUnitalNonAssocRing.toAddCommGroup.{u3} R (NonAssocRing.toNonUnitalNonAssocRing.{u3} R (Ring.toNonAssocRing.{u3} R (CommRing.toRing.{u3} R _inst_3))))) (Semiring.toModule.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) _inst_4 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) _inst_4 (PiToModule.fromEnd._proof_2.{u2, u3} M _inst_2 R _inst_3 _inst_4))) (fun (_x : LinearMap.{u3, u3, u2, max (max u1 u3) u2} R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) (Module.End.{u3, u2} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (LinearMap.{u3, u3, max u1 u3, u2} R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) (ι -> R) M (Pi.addCommMonoid.{u1, u3} ι (fun (ᾰ : ι) => R) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} R (NonUnitalNonAssocRing.toAddCommGroup.{u3} R (NonAssocRing.toNonUnitalNonAssocRing.{u3} R (Ring.toNonAssocRing.{u3} R (CommRing.toRing.{u3} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (Pi.Function.module.{u1, u3, u3} ι R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u3} R (NonUnitalNonAssocRing.toAddCommGroup.{u3} R (NonAssocRing.toNonUnitalNonAssocRing.{u3} R (Ring.toNonAssocRing.{u3} R (CommRing.toRing.{u3} R _inst_3))))) (Semiring.toModule.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) _inst_4) (LinearMap.addCommMonoid.{u3, u3, u2, u2} R R M M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4 _inst_4 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3))))) (LinearMap.addCommMonoid.{u3, u3, max u1 u3, u2} R R (ι -> R) M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Pi.addCommMonoid.{u1, u3} ι (fun (ᾰ : ι) => R) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} R (NonUnitalNonAssocRing.toAddCommGroup.{u3} R (NonAssocRing.toNonUnitalNonAssocRing.{u3} R (Ring.toNonAssocRing.{u3} R (CommRing.toRing.{u3} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (Pi.Function.module.{u1, u3, u3} ι R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u3} R (NonUnitalNonAssocRing.toAddCommGroup.{u3} R (NonAssocRing.toNonUnitalNonAssocRing.{u3} R (Ring.toNonAssocRing.{u3} R (CommRing.toRing.{u3} R _inst_3))))) (Semiring.toModule.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) _inst_4 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3))))) (LinearMap.module.{u3, u3, u3, u2, u2} R R R M M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4 _inst_4 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) _inst_4 (PiToModule.fromEnd._proof_1.{u2, u3} M _inst_2 R _inst_3 _inst_4)) (LinearMap.module.{u3, u3, u3, max u1 u3, u2} R R R (ι -> R) M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Pi.addCommMonoid.{u1, u3} ι (fun (ᾰ : ι) => R) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} R (NonUnitalNonAssocRing.toAddCommGroup.{u3} R (NonAssocRing.toNonUnitalNonAssocRing.{u3} R (Ring.toNonAssocRing.{u3} R (CommRing.toRing.{u3} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (Pi.Function.module.{u1, u3, u3} ι R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u3} R (NonUnitalNonAssocRing.toAddCommGroup.{u3} R (NonAssocRing.toNonUnitalNonAssocRing.{u3} R (Ring.toNonAssocRing.{u3} R (CommRing.toRing.{u3} R _inst_3))))) (Semiring.toModule.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) _inst_4 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) _inst_4 (PiToModule.fromEnd._proof_2.{u2, u3} M _inst_2 R _inst_3 _inst_4))) => (Module.End.{u3, u2} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) -> (LinearMap.{u3, u3, max u1 u3, u2} R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) (ι -> R) M (Pi.addCommMonoid.{u1, u3} ι (fun (ᾰ : ι) => R) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} R (NonUnitalNonAssocRing.toAddCommGroup.{u3} R (NonAssocRing.toNonUnitalNonAssocRing.{u3} R (Ring.toNonAssocRing.{u3} R (CommRing.toRing.{u3} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (Pi.Function.module.{u1, u3, u3} ι R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u3} R (NonUnitalNonAssocRing.toAddCommGroup.{u3} R (NonAssocRing.toNonUnitalNonAssocRing.{u3} R (Ring.toNonAssocRing.{u3} R (CommRing.toRing.{u3} R _inst_3))))) (Semiring.toModule.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) _inst_4)) (LinearMap.hasCoeToFun.{u3, u3, u2, max (max u1 u3) u2} R R (Module.End.{u3, u2} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (LinearMap.{u3, u3, max u1 u3, u2} R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) (ι -> R) M (Pi.addCommMonoid.{u1, u3} ι (fun (ᾰ : ι) => R) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} R (NonUnitalNonAssocRing.toAddCommGroup.{u3} R (NonAssocRing.toNonUnitalNonAssocRing.{u3} R (Ring.toNonAssocRing.{u3} R (CommRing.toRing.{u3} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (Pi.Function.module.{u1, u3, u3} ι R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u3} R (NonUnitalNonAssocRing.toAddCommGroup.{u3} R (NonAssocRing.toNonUnitalNonAssocRing.{u3} R (Ring.toNonAssocRing.{u3} R (CommRing.toRing.{u3} R _inst_3))))) (Semiring.toModule.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) _inst_4) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (LinearMap.addCommMonoid.{u3, u3, u2, u2} R R M M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4 _inst_4 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3))))) (LinearMap.addCommMonoid.{u3, u3, max u1 u3, u2} R R (ι -> R) M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Pi.addCommMonoid.{u1, u3} ι (fun (ᾰ : ι) => R) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} R (NonUnitalNonAssocRing.toAddCommGroup.{u3} R (NonAssocRing.toNonUnitalNonAssocRing.{u3} R (Ring.toNonAssocRing.{u3} R (CommRing.toRing.{u3} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (Pi.Function.module.{u1, u3, u3} ι R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u3} R (NonUnitalNonAssocRing.toAddCommGroup.{u3} R (NonAssocRing.toNonUnitalNonAssocRing.{u3} R (Ring.toNonAssocRing.{u3} R (CommRing.toRing.{u3} R _inst_3))))) (Semiring.toModule.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) _inst_4 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3))))) (LinearMap.module.{u3, u3, u3, u2, u2} R R R M M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4 _inst_4 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) _inst_4 (PiToModule.fromEnd._proof_1.{u2, u3} M _inst_2 R _inst_3 _inst_4)) (LinearMap.module.{u3, u3, u3, max u1 u3, u2} R R R (ι -> R) M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Pi.addCommMonoid.{u1, u3} ι (fun (ᾰ : ι) => R) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} R (NonUnitalNonAssocRing.toAddCommGroup.{u3} R (NonAssocRing.toNonUnitalNonAssocRing.{u3} R (Ring.toNonAssocRing.{u3} R (CommRing.toRing.{u3} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (Pi.Function.module.{u1, u3, u3} ι R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u3} R (NonUnitalNonAssocRing.toAddCommGroup.{u3} R (NonAssocRing.toNonUnitalNonAssocRing.{u3} R (Ring.toNonAssocRing.{u3} R (CommRing.toRing.{u3} R _inst_3))))) (Semiring.toModule.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) _inst_4 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) _inst_4 (PiToModule.fromEnd._proof_2.{u2, u3} M _inst_2 R _inst_3 _inst_4)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3))))) (PiToModule.fromEnd.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b) f) (Pi.single.{u1, u3} ι (fun (ᾰ : ι) => R) (fun (a : ι) (b : ι) => _inst_5 a b) (fun (i : ι) => MulZeroClass.toHasZero.{u3} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u3} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u3} R (NonAssocRing.toNonUnitalNonAssocRing.{u3} R (Ring.toNonAssocRing.{u3} R (CommRing.toRing.{u3} R _inst_3)))))) i (OfNat.ofNat.{u3} R 1 (OfNat.mk.{u3} R 1 (One.one.{u3} R (AddMonoidWithOne.toOne.{u3} R (AddGroupWithOne.toAddMonoidWithOne.{u3} R (AddCommGroupWithOne.toAddGroupWithOne.{u3} R (Ring.toAddCommGroupWithOne.{u3} R (CommRing.toRing.{u3} R _inst_3)))))))))) (coeFn.{succ u2, succ u2} (Module.End.{u3, u2} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (fun (_x : LinearMap.{u3, u3, u2, u2} R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4 _inst_4) => M -> M) (LinearMap.hasCoeToFun.{u3, u3, u2, u2} R R M M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4 _inst_4 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3))))) f (b i))
+but is expected to have type
+ forall {ι : Type.{u3}} [_inst_1 : Fintype.{u3} ι] {M : Type.{u1}} [_inst_2 : AddCommGroup.{u1} M] (R : Type.{u2}) [_inst_3 : CommRing.{u2} R] [_inst_4 : Module.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2)] (b : ι -> M) [_inst_5 : DecidableEq.{succ u3} ι] (f : Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (i : ι), Eq.{succ u1} ((fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6191 : ι -> R) => M) (Pi.single.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.Charpoly.LinearMap._hyg.392 : ι) => R) (fun (a : ι) (b : ι) => _inst_5 a b) (fun (i : ι) => CommMonoidWithZero.toZero.{u2} R (CommSemiring.toCommMonoidWithZero.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) i (OfNat.ofNat.{u2} R 1 (One.toOfNat1.{u2} R (Semiring.toOne.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))))) (FunLike.coe.{max (max (succ u3) (succ u1)) (succ u2), max (succ u3) (succ u2), succ u1} ((fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6191 : Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) => LinearMap.{u2, u2, max u3 u2, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (ι -> R) M (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.Charpoly.LinearMap._hyg.392 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.Charpoly.LinearMap._hyg.392 : ι) => R) R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_3))))) (fun (i : ι) => Semiring.toModule.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) _inst_4) f) (ι -> R) (fun (_x : ι -> R) => (fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6191 : ι -> R) => M) _x) (LinearMap.instFunLikeLinearMap.{u2, u2, max u3 u2, u1} R R (ι -> R) M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Pi.addCommMonoid.{u3, u2} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.Charpoly.LinearMap._hyg.392 : ι) => R) R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_3))))) (fun (i : ι) => Semiring.toModule.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) _inst_4 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) (FunLike.coe.{max (max (succ u3) (succ u1)) (succ u2), succ u1, max (max (succ u3) (succ u1)) (succ u2)} (LinearMap.{u2, u2, u1, max u1 u3 u2} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (LinearMap.{u2, u2, max u3 u2, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (ι -> R) M (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.Charpoly.LinearMap._hyg.392 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.Charpoly.LinearMap._hyg.392 : ι) => R) R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_3))))) (fun (i : ι) => Semiring.toModule.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) _inst_4) (LinearMap.addCommMonoid.{u2, u2, u1, u1} R R M M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4 _inst_4 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) (LinearMap.addCommMonoid.{u2, u2, max u3 u2, u1} R R (ι -> R) M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.Charpoly.LinearMap._hyg.392 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.Charpoly.LinearMap._hyg.392 : ι) => R) R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_3))))) (fun (i : ι) => Semiring.toModule.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) _inst_4 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u2, u2, u2, u1, u1} R R R M M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4 _inst_4 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_4 (smulCommClass_self.{u2, u1} R M (CommRing.toCommMonoid.{u2} R _inst_3) (MulActionWithZero.toMulAction.{u2, u1} R M (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (NegZeroClass.toZero.{u1} M (SubNegZeroMonoid.toNegZeroClass.{u1} M (SubtractionMonoid.toSubNegZeroMonoid.{u1} M (SubtractionCommMonoid.toSubtractionMonoid.{u1} M (AddCommGroup.toDivisionAddCommMonoid.{u1} M _inst_2))))) (Module.toMulActionWithZero.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4)))) (LinearMap.instModuleLinearMapAddCommMonoid.{u2, u2, u2, max u3 u2, u1} R R R (ι -> R) M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.Charpoly.LinearMap._hyg.392 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.Charpoly.LinearMap._hyg.392 : ι) => R) R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_3))))) (fun (i : ι) => Semiring.toModule.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) _inst_4 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_4 (smulCommClass_self.{u2, u1} R M (CommRing.toCommMonoid.{u2} R _inst_3) (MulActionWithZero.toMulAction.{u2, u1} R M (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (NegZeroClass.toZero.{u1} M (SubNegZeroMonoid.toNegZeroClass.{u1} M (SubtractionMonoid.toSubNegZeroMonoid.{u1} M (SubtractionCommMonoid.toSubtractionMonoid.{u1} M (AddCommGroup.toDivisionAddCommMonoid.{u1} M _inst_2))))) (Module.toMulActionWithZero.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4))))) (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (fun (_x : Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) => (fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6191 : Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) => LinearMap.{u2, u2, max u3 u2, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (ι -> R) M (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.Charpoly.LinearMap._hyg.392 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.Charpoly.LinearMap._hyg.392 : ι) => R) R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_3))))) (fun (i : ι) => Semiring.toModule.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) _inst_4) _x) (LinearMap.instFunLikeLinearMap.{u2, u2, u1, max (max u3 u1) u2} R R (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (LinearMap.{u2, u2, max u3 u2, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (ι -> R) M (Pi.addCommMonoid.{u3, u2} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.Charpoly.LinearMap._hyg.392 : ι) => R) R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_3))))) (fun (i : ι) => Semiring.toModule.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) _inst_4) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (LinearMap.addCommMonoid.{u2, u2, u1, u1} R R M M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4 _inst_4 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) (LinearMap.addCommMonoid.{u2, u2, max u3 u2, u1} R R (ι -> R) M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Pi.addCommMonoid.{u3, u2} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.Charpoly.LinearMap._hyg.392 : ι) => R) R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_3))))) (fun (i : ι) => Semiring.toModule.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) _inst_4 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u2, u2, u2, u1, u1} R R R M M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4 _inst_4 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_4 (smulCommClass_self.{u2, u1} R M (CommRing.toCommMonoid.{u2} R _inst_3) (MulActionWithZero.toMulAction.{u2, u1} R M (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (NegZeroClass.toZero.{u1} M (SubNegZeroMonoid.toNegZeroClass.{u1} M (SubtractionMonoid.toSubNegZeroMonoid.{u1} M (SubtractionCommMonoid.toSubtractionMonoid.{u1} M (AddCommGroup.toDivisionAddCommMonoid.{u1} M _inst_2))))) (Module.toMulActionWithZero.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4)))) (LinearMap.instModuleLinearMapAddCommMonoid.{u2, u2, u2, max u3 u2, u1} R R R (ι -> R) M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Pi.addCommMonoid.{u3, u2} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.Charpoly.LinearMap._hyg.392 : ι) => R) R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_3))))) (fun (i : ι) => Semiring.toModule.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) _inst_4 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_4 (smulCommClass_self.{u2, u1} R M (CommRing.toCommMonoid.{u2} R _inst_3) (MulActionWithZero.toMulAction.{u2, u1} R M (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (NegZeroClass.toZero.{u1} M (SubNegZeroMonoid.toNegZeroClass.{u1} M (SubtractionMonoid.toSubNegZeroMonoid.{u1} M (SubtractionCommMonoid.toSubtractionMonoid.{u1} M (AddCommGroup.toDivisionAddCommMonoid.{u1} M _inst_2))))) (Module.toMulActionWithZero.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) (PiToModule.fromEnd.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b) f) (Pi.single.{u3, u2} ι (fun (ᾰ : ι) => R) (fun (a : ι) (b : ι) => _inst_5 a b) (fun (i : ι) => CommMonoidWithZero.toZero.{u2} R (CommSemiring.toCommMonoidWithZero.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) i (OfNat.ofNat.{u2} R 1 (One.toOfNat1.{u2} R (Semiring.toOne.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))))) (FunLike.coe.{succ u1, succ u1, succ u1} (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6191 : M) => M) _x) (LinearMap.instFunLikeLinearMap.{u2, u2, u1, u1} R R M M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4 _inst_4 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) f (b i))
+Case conversion may be inaccurate. Consider using '#align pi_to_module.from_End_apply_single_one PiToModule.fromEnd_apply_single_oneₓ'. -/
theorem PiToModule.fromEnd_apply_single_one [DecidableEq ι] (f : Module.End R M) (i : ι) :
PiToModule.fromEnd R b f (Pi.single i 1) = f (b i) :=
by
@@ -74,6 +102,12 @@ theorem PiToModule.fromEnd_apply_single_one [DecidableEq ι] (f : Module.End R M
rw [one_smul]
#align pi_to_module.from_End_apply_single_one PiToModule.fromEnd_apply_single_one
+/- warning: pi_to_module.from_End_injective -> PiToModule.fromEnd_injective is a dubious translation:
+lean 3 declaration is
+ forall {ι : Type.{u1}} [_inst_1 : Fintype.{u1} ι] {M : Type.{u2}} [_inst_2 : AddCommGroup.{u2} M] (R : Type.{u3}) [_inst_3 : CommRing.{u3} R] [_inst_4 : Module.{u3, u2} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2)] (b : ι -> M), (Eq.{succ u2} (Submodule.{u3, u2} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (Submodule.span.{u3, u2} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4 (Set.range.{u2, succ u1} M ι b)) (Top.top.{u2} (Submodule.{u3, u2} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (Submodule.hasTop.{u3, u2} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4))) -> (Function.Injective.{succ u2, max (succ (max u1 u3)) (succ u2)} (Module.End.{u3, u2} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (LinearMap.{u3, u3, max u1 u3, u2} R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) (ι -> R) M (Pi.addCommMonoid.{u1, u3} ι (fun (ᾰ : ι) => R) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} R (NonUnitalNonAssocRing.toAddCommGroup.{u3} R (NonAssocRing.toNonUnitalNonAssocRing.{u3} R (Ring.toNonAssocRing.{u3} R (CommRing.toRing.{u3} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (Pi.Function.module.{u1, u3, u3} ι R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u3} R (NonUnitalNonAssocRing.toAddCommGroup.{u3} R (NonAssocRing.toNonUnitalNonAssocRing.{u3} R (Ring.toNonAssocRing.{u3} R (CommRing.toRing.{u3} R _inst_3))))) (Semiring.toModule.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) _inst_4) (coeFn.{max (succ u2) (succ (max (max u1 u3) u2)), max (succ u2) (succ (max (max u1 u3) u2))} (LinearMap.{u3, u3, u2, max (max u1 u3) u2} R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) (Module.End.{u3, u2} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (LinearMap.{u3, u3, max u1 u3, u2} R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) (ι -> R) M (Pi.addCommMonoid.{u1, u3} ι (fun (ᾰ : ι) => R) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} R (NonUnitalNonAssocRing.toAddCommGroup.{u3} R (NonAssocRing.toNonUnitalNonAssocRing.{u3} R (Ring.toNonAssocRing.{u3} R (CommRing.toRing.{u3} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (Pi.Function.module.{u1, u3, u3} ι R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u3} R (NonUnitalNonAssocRing.toAddCommGroup.{u3} R (NonAssocRing.toNonUnitalNonAssocRing.{u3} R (Ring.toNonAssocRing.{u3} R (CommRing.toRing.{u3} R _inst_3))))) (Semiring.toModule.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) _inst_4) (LinearMap.addCommMonoid.{u3, u3, u2, u2} R R M M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4 _inst_4 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3))))) (LinearMap.addCommMonoid.{u3, u3, max u1 u3, u2} R R (ι -> R) M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Pi.addCommMonoid.{u1, u3} ι (fun (ᾰ : ι) => R) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} R (NonUnitalNonAssocRing.toAddCommGroup.{u3} R (NonAssocRing.toNonUnitalNonAssocRing.{u3} R (Ring.toNonAssocRing.{u3} R (CommRing.toRing.{u3} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (Pi.Function.module.{u1, u3, u3} ι R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u3} R (NonUnitalNonAssocRing.toAddCommGroup.{u3} R (NonAssocRing.toNonUnitalNonAssocRing.{u3} R (Ring.toNonAssocRing.{u3} R (CommRing.toRing.{u3} R _inst_3))))) (Semiring.toModule.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) _inst_4 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3))))) (LinearMap.module.{u3, u3, u3, u2, u2} R R R M M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4 _inst_4 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) _inst_4 (PiToModule.fromEnd._proof_1.{u2, u3} M _inst_2 R _inst_3 _inst_4)) (LinearMap.module.{u3, u3, u3, max u1 u3, u2} R R R (ι -> R) M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Pi.addCommMonoid.{u1, u3} ι (fun (ᾰ : ι) => R) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} R (NonUnitalNonAssocRing.toAddCommGroup.{u3} R (NonAssocRing.toNonUnitalNonAssocRing.{u3} R (Ring.toNonAssocRing.{u3} R (CommRing.toRing.{u3} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (Pi.Function.module.{u1, u3, u3} ι R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u3} R (NonUnitalNonAssocRing.toAddCommGroup.{u3} R (NonAssocRing.toNonUnitalNonAssocRing.{u3} R (Ring.toNonAssocRing.{u3} R (CommRing.toRing.{u3} R _inst_3))))) (Semiring.toModule.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) _inst_4 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) _inst_4 (PiToModule.fromEnd._proof_2.{u2, u3} M _inst_2 R _inst_3 _inst_4))) (fun (_x : LinearMap.{u3, u3, u2, max (max u1 u3) u2} R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) (Module.End.{u3, u2} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (LinearMap.{u3, u3, max u1 u3, u2} R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) (ι -> R) M (Pi.addCommMonoid.{u1, u3} ι (fun (ᾰ : ι) => R) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} R (NonUnitalNonAssocRing.toAddCommGroup.{u3} R (NonAssocRing.toNonUnitalNonAssocRing.{u3} R (Ring.toNonAssocRing.{u3} R (CommRing.toRing.{u3} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (Pi.Function.module.{u1, u3, u3} ι R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u3} R (NonUnitalNonAssocRing.toAddCommGroup.{u3} R (NonAssocRing.toNonUnitalNonAssocRing.{u3} R (Ring.toNonAssocRing.{u3} R (CommRing.toRing.{u3} R _inst_3))))) (Semiring.toModule.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) _inst_4) (LinearMap.addCommMonoid.{u3, u3, u2, u2} R R M M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4 _inst_4 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3))))) (LinearMap.addCommMonoid.{u3, u3, max u1 u3, u2} R R (ι -> R) M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Pi.addCommMonoid.{u1, u3} ι (fun (ᾰ : ι) => R) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} R (NonUnitalNonAssocRing.toAddCommGroup.{u3} R (NonAssocRing.toNonUnitalNonAssocRing.{u3} R (Ring.toNonAssocRing.{u3} R (CommRing.toRing.{u3} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (Pi.Function.module.{u1, u3, u3} ι R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u3} R (NonUnitalNonAssocRing.toAddCommGroup.{u3} R (NonAssocRing.toNonUnitalNonAssocRing.{u3} R (Ring.toNonAssocRing.{u3} R (CommRing.toRing.{u3} R _inst_3))))) (Semiring.toModule.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) _inst_4 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3))))) (LinearMap.module.{u3, u3, u3, u2, u2} R R R M M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4 _inst_4 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) _inst_4 (PiToModule.fromEnd._proof_1.{u2, u3} M _inst_2 R _inst_3 _inst_4)) (LinearMap.module.{u3, u3, u3, max u1 u3, u2} R R R (ι -> R) M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Pi.addCommMonoid.{u1, u3} ι (fun (ᾰ : ι) => R) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} R (NonUnitalNonAssocRing.toAddCommGroup.{u3} R (NonAssocRing.toNonUnitalNonAssocRing.{u3} R (Ring.toNonAssocRing.{u3} R (CommRing.toRing.{u3} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (Pi.Function.module.{u1, u3, u3} ι R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u3} R (NonUnitalNonAssocRing.toAddCommGroup.{u3} R (NonAssocRing.toNonUnitalNonAssocRing.{u3} R (Ring.toNonAssocRing.{u3} R (CommRing.toRing.{u3} R _inst_3))))) (Semiring.toModule.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) _inst_4 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) _inst_4 (PiToModule.fromEnd._proof_2.{u2, u3} M _inst_2 R _inst_3 _inst_4))) => (Module.End.{u3, u2} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) -> (LinearMap.{u3, u3, max u1 u3, u2} R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) (ι -> R) M (Pi.addCommMonoid.{u1, u3} ι (fun (ᾰ : ι) => R) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} R (NonUnitalNonAssocRing.toAddCommGroup.{u3} R (NonAssocRing.toNonUnitalNonAssocRing.{u3} R (Ring.toNonAssocRing.{u3} R (CommRing.toRing.{u3} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (Pi.Function.module.{u1, u3, u3} ι R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u3} R (NonUnitalNonAssocRing.toAddCommGroup.{u3} R (NonAssocRing.toNonUnitalNonAssocRing.{u3} R (Ring.toNonAssocRing.{u3} R (CommRing.toRing.{u3} R _inst_3))))) (Semiring.toModule.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) _inst_4)) (LinearMap.hasCoeToFun.{u3, u3, u2, max (max u1 u3) u2} R R (Module.End.{u3, u2} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (LinearMap.{u3, u3, max u1 u3, u2} R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) (ι -> R) M (Pi.addCommMonoid.{u1, u3} ι (fun (ᾰ : ι) => R) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} R (NonUnitalNonAssocRing.toAddCommGroup.{u3} R (NonAssocRing.toNonUnitalNonAssocRing.{u3} R (Ring.toNonAssocRing.{u3} R (CommRing.toRing.{u3} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (Pi.Function.module.{u1, u3, u3} ι R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u3} R (NonUnitalNonAssocRing.toAddCommGroup.{u3} R (NonAssocRing.toNonUnitalNonAssocRing.{u3} R (Ring.toNonAssocRing.{u3} R (CommRing.toRing.{u3} R _inst_3))))) (Semiring.toModule.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) _inst_4) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (LinearMap.addCommMonoid.{u3, u3, u2, u2} R R M M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4 _inst_4 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3))))) (LinearMap.addCommMonoid.{u3, u3, max u1 u3, u2} R R (ι -> R) M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Pi.addCommMonoid.{u1, u3} ι (fun (ᾰ : ι) => R) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} R (NonUnitalNonAssocRing.toAddCommGroup.{u3} R (NonAssocRing.toNonUnitalNonAssocRing.{u3} R (Ring.toNonAssocRing.{u3} R (CommRing.toRing.{u3} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (Pi.Function.module.{u1, u3, u3} ι R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u3} R (NonUnitalNonAssocRing.toAddCommGroup.{u3} R (NonAssocRing.toNonUnitalNonAssocRing.{u3} R (Ring.toNonAssocRing.{u3} R (CommRing.toRing.{u3} R _inst_3))))) (Semiring.toModule.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) _inst_4 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3))))) (LinearMap.module.{u3, u3, u3, u2, u2} R R R M M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4 _inst_4 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) _inst_4 (PiToModule.fromEnd._proof_1.{u2, u3} M _inst_2 R _inst_3 _inst_4)) (LinearMap.module.{u3, u3, u3, max u1 u3, u2} R R R (ι -> R) M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Pi.addCommMonoid.{u1, u3} ι (fun (ᾰ : ι) => R) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} R (NonUnitalNonAssocRing.toAddCommGroup.{u3} R (NonAssocRing.toNonUnitalNonAssocRing.{u3} R (Ring.toNonAssocRing.{u3} R (CommRing.toRing.{u3} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (Pi.Function.module.{u1, u3, u3} ι R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u3} R (NonUnitalNonAssocRing.toAddCommGroup.{u3} R (NonAssocRing.toNonUnitalNonAssocRing.{u3} R (Ring.toNonAssocRing.{u3} R (CommRing.toRing.{u3} R _inst_3))))) (Semiring.toModule.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) _inst_4 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) _inst_4 (PiToModule.fromEnd._proof_2.{u2, u3} M _inst_2 R _inst_3 _inst_4)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3))))) (PiToModule.fromEnd.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b)))
+but is expected to have type
+ forall {ι : Type.{u1}} [_inst_1 : Fintype.{u1} ι] {M : Type.{u3}} [_inst_2 : AddCommGroup.{u3} M] (R : Type.{u2}) [_inst_3 : CommRing.{u2} R] [_inst_4 : Module.{u2, u3} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2)] (b : ι -> M), (Eq.{succ u3} (Submodule.{u2, u3} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_4) (Submodule.span.{u2, u3} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_4 (Set.range.{u3, succ u1} M ι b)) (Top.top.{u3} (Submodule.{u2, u3} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_4) (Submodule.instTopSubmodule.{u2, u3} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_4))) -> (Function.Injective.{succ u3, max (max (succ u1) (succ u3)) (succ u2)} (Module.End.{u2, u3} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_4) (LinearMap.{u2, u2, max u1 u2, u3} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (ι -> R) M (Pi.addCommMonoid.{u1, u2} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (Pi.module.{u1, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.Charpoly.LinearMap._hyg.392 : ι) => R) R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_3))))) (fun (i : ι) => Semiring.toModule.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) _inst_4) (FunLike.coe.{max (max (succ u1) (succ u3)) (succ u2), succ u3, max (max (succ u1) (succ u3)) (succ u2)} (LinearMap.{u2, u2, u3, max u3 u1 u2} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Module.End.{u2, u3} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_4) (LinearMap.{u2, u2, max u1 u2, u3} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (ι -> R) M (Pi.addCommMonoid.{u1, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.Charpoly.LinearMap._hyg.392 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (Pi.module.{u1, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.Charpoly.LinearMap._hyg.392 : ι) => R) R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_3))))) (fun (i : ι) => Semiring.toModule.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) _inst_4) (LinearMap.addCommMonoid.{u2, u2, u3, u3} R R M M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_4 _inst_4 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) (LinearMap.addCommMonoid.{u2, u2, max u1 u2, u3} R R (ι -> R) M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Pi.addCommMonoid.{u1, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.Charpoly.LinearMap._hyg.392 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (Pi.module.{u1, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.Charpoly.LinearMap._hyg.392 : ι) => R) R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_3))))) (fun (i : ι) => Semiring.toModule.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) _inst_4 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u2, u2, u2, u3, u3} R R R M M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_4 _inst_4 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_4 (smulCommClass_self.{u2, u3} R M (CommRing.toCommMonoid.{u2} R _inst_3) (MulActionWithZero.toMulAction.{u2, u3} R M (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (NegZeroClass.toZero.{u3} M (SubNegZeroMonoid.toNegZeroClass.{u3} M (SubtractionMonoid.toSubNegZeroMonoid.{u3} M (SubtractionCommMonoid.toSubtractionMonoid.{u3} M (AddCommGroup.toDivisionAddCommMonoid.{u3} M _inst_2))))) (Module.toMulActionWithZero.{u2, u3} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_4)))) (LinearMap.instModuleLinearMapAddCommMonoid.{u2, u2, u2, max u1 u2, u3} R R R (ι -> R) M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Pi.addCommMonoid.{u1, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.Charpoly.LinearMap._hyg.392 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (Pi.module.{u1, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.Charpoly.LinearMap._hyg.392 : ι) => R) R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_3))))) (fun (i : ι) => Semiring.toModule.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) _inst_4 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_4 (smulCommClass_self.{u2, u3} R M (CommRing.toCommMonoid.{u2} R _inst_3) (MulActionWithZero.toMulAction.{u2, u3} R M (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (NegZeroClass.toZero.{u3} M (SubNegZeroMonoid.toNegZeroClass.{u3} M (SubtractionMonoid.toSubNegZeroMonoid.{u3} M (SubtractionCommMonoid.toSubtractionMonoid.{u3} M (AddCommGroup.toDivisionAddCommMonoid.{u3} M _inst_2))))) (Module.toMulActionWithZero.{u2, u3} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_4))))) (Module.End.{u2, u3} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_4) (fun (_x : Module.End.{u2, u3} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_4) => (fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6191 : Module.End.{u2, u3} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_4) => LinearMap.{u2, u2, max u1 u2, u3} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (ι -> R) M (Pi.addCommMonoid.{u1, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.Charpoly.LinearMap._hyg.392 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (Pi.module.{u1, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.Charpoly.LinearMap._hyg.392 : ι) => R) R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_3))))) (fun (i : ι) => Semiring.toModule.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) _inst_4) _x) (LinearMap.instFunLikeLinearMap.{u2, u2, u3, max (max u1 u3) u2} R R (Module.End.{u2, u3} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_4) (LinearMap.{u2, u2, max u1 u2, u3} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (ι -> R) M (Pi.addCommMonoid.{u1, u2} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (Pi.module.{u1, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.Charpoly.LinearMap._hyg.392 : ι) => R) R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_3))))) (fun (i : ι) => Semiring.toModule.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) _inst_4) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (LinearMap.addCommMonoid.{u2, u2, u3, u3} R R M M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_4 _inst_4 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) (LinearMap.addCommMonoid.{u2, u2, max u1 u2, u3} R R (ι -> R) M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Pi.addCommMonoid.{u1, u2} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (Pi.module.{u1, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.Charpoly.LinearMap._hyg.392 : ι) => R) R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_3))))) (fun (i : ι) => Semiring.toModule.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) _inst_4 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) (LinearMap.instModuleLinearMapAddCommMonoid.{u2, u2, u2, u3, u3} R R R M M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_4 _inst_4 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_4 (smulCommClass_self.{u2, u3} R M (CommRing.toCommMonoid.{u2} R _inst_3) (MulActionWithZero.toMulAction.{u2, u3} R M (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (NegZeroClass.toZero.{u3} M (SubNegZeroMonoid.toNegZeroClass.{u3} M (SubtractionMonoid.toSubNegZeroMonoid.{u3} M (SubtractionCommMonoid.toSubtractionMonoid.{u3} M (AddCommGroup.toDivisionAddCommMonoid.{u3} M _inst_2))))) (Module.toMulActionWithZero.{u2, u3} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_4)))) (LinearMap.instModuleLinearMapAddCommMonoid.{u2, u2, u2, max u1 u2, u3} R R R (ι -> R) M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Pi.addCommMonoid.{u1, u2} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) (Pi.module.{u1, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Matrix.Charpoly.LinearMap._hyg.392 : ι) => R) R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_3))))) (fun (i : ι) => Semiring.toModule.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) _inst_4 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_4 (smulCommClass_self.{u2, u3} R M (CommRing.toCommMonoid.{u2} R _inst_3) (MulActionWithZero.toMulAction.{u2, u3} R M (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (NegZeroClass.toZero.{u3} M (SubNegZeroMonoid.toNegZeroClass.{u3} M (SubtractionMonoid.toSubNegZeroMonoid.{u3} M (SubtractionCommMonoid.toSubtractionMonoid.{u3} M (AddCommGroup.toDivisionAddCommMonoid.{u3} M _inst_2))))) (Module.toMulActionWithZero.{u2, u3} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_4)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) (PiToModule.fromEnd.{u1, u3, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b)))
+Case conversion may be inaccurate. Consider using '#align pi_to_module.from_End_injective PiToModule.fromEnd_injectiveₓ'. -/
theorem PiToModule.fromEnd_injective (hb : Submodule.span R (Set.range b) = ⊤) :
Function.Injective (PiToModule.fromEnd R b) :=
by
@@ -90,24 +124,44 @@ section
variable {R} [DecidableEq ι]
+#print Matrix.Represents /-
/-- We say that a matrix represents an endomorphism of `M` if the matrix acting on `ι → R` is
equal to `f` via the projection `(ι → R) →ₗ[R] M` given by a fixed (spanning) set. -/
def Matrix.Represents (A : Matrix ι ι R) (f : Module.End R M) : Prop :=
PiToModule.fromMatrix R b A = PiToModule.fromEnd R b f
#align matrix.represents Matrix.Represents
+-/
variable {b}
+/- warning: matrix.represents.congr_fun -> Matrix.Represents.congr_fun is a dubious translation:
+lean 3 declaration is
+ forall {ι : Type.{u1}} [_inst_1 : Fintype.{u1} ι] {M : Type.{u2}} [_inst_2 : AddCommGroup.{u2} M] {R : Type.{u3}} [_inst_3 : CommRing.{u3} R] [_inst_4 : Module.{u3, u2} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2)] {b : ι -> M} [_inst_5 : DecidableEq.{succ u1} ι] {A : Matrix.{u1, u1, u3} ι ι R} {f : Module.End.{u3, u2} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4}, (Matrix.Represents.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b) A f) -> (forall (x : ι -> R), Eq.{succ u2} M (coeFn.{max (succ (max u1 u3)) (succ u2), max (succ (max u1 u3)) (succ u2)} (LinearMap.{u3, u3, max u1 u3, u2} R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) (ι -> R) M (Pi.addCommMonoid.{u1, u3} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (Pi.Function.module.{u1, u3, u3} ι R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3))))) (Semiring.toModule.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) _inst_4) (fun (_x : LinearMap.{u3, u3, max u1 u3, u2} R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) (ι -> R) M (Pi.addCommMonoid.{u1, u3} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (Pi.Function.module.{u1, u3, u3} ι R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3))))) (Semiring.toModule.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) _inst_4) => (ι -> R) -> M) (LinearMap.hasCoeToFun.{u3, u3, max u1 u3, u2} R R (ι -> R) M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Pi.addCommMonoid.{u1, u3} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (Pi.Function.module.{u1, u3, u3} ι R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3))))) (Semiring.toModule.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) _inst_4 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3))))) (coeFn.{max (succ (max u1 u2)) (succ (max (max u1 u3) u2)), max (succ (max u1 u2)) (succ (max (max u1 u3) u2))} (LinearMap.{u3, u3, max u1 u2, max (max u1 u3) u2} R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) (ι -> M) (LinearMap.{u3, u3, max u1 u3, u2} R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) (ι -> R) M (Pi.addCommMonoid.{u1, u3} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (Pi.Function.module.{u1, u3, u3} ι R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3))))) (Semiring.toModule.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) _inst_4) (Pi.addCommMonoid.{u1, u2} ι (fun (ᾰ : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u2} M _inst_2)) (LinearMap.addCommMonoid.{u3, u3, max u1 u3, u2} R R (ι -> R) M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Pi.addCommMonoid.{u1, u3} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (Pi.Function.module.{u1, u3, u3} ι R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3))))) (Semiring.toModule.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) _inst_4 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3))))) (Pi.Function.module.{u1, u3, u2} ι R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (LinearMap.module.{u3, u3, u3, max u1 u3, u2} R R R (ι -> R) M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Pi.addCommMonoid.{u1, u3} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (Pi.Function.module.{u1, u3, u3} ι R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3))))) (Semiring.toModule.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) _inst_4 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) _inst_4 (smulCommClass_self.{u3, u2} R M (CommRing.toCommMonoid.{u3} R _inst_3) (MulActionWithZero.toMulAction.{u3, u2} R M (Semiring.toMonoidWithZero.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3))) (AddZeroClass.toHasZero.{u2} M (AddMonoid.toAddZeroClass.{u2} M (AddCommMonoid.toAddMonoid.{u2} M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2)))) (Module.toMulActionWithZero.{u3, u2} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4))))) (fun (_x : LinearMap.{u3, u3, max u1 u2, max (max u1 u3) u2} R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) (ι -> M) (LinearMap.{u3, u3, max u1 u3, u2} R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) (ι -> R) M (Pi.addCommMonoid.{u1, u3} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (Pi.Function.module.{u1, u3, u3} ι R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3))))) (Semiring.toModule.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) _inst_4) (Pi.addCommMonoid.{u1, u2} ι (fun (ᾰ : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u2} M _inst_2)) (LinearMap.addCommMonoid.{u3, u3, max u1 u3, u2} R R (ι -> R) M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Pi.addCommMonoid.{u1, u3} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (Pi.Function.module.{u1, u3, u3} ι R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3))))) (Semiring.toModule.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) _inst_4 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3))))) (Pi.Function.module.{u1, u3, u2} ι R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (LinearMap.module.{u3, u3, u3, max u1 u3, u2} R R R (ι -> R) M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Pi.addCommMonoid.{u1, u3} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (Pi.Function.module.{u1, u3, u3} ι R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3))))) (Semiring.toModule.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) _inst_4 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) _inst_4 (smulCommClass_self.{u3, u2} R M (CommRing.toCommMonoid.{u3} R _inst_3) (MulActionWithZero.toMulAction.{u3, u2} R M (Semiring.toMonoidWithZero.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3))) (AddZeroClass.toHasZero.{u2} M (AddMonoid.toAddZeroClass.{u2} M (AddCommMonoid.toAddMonoid.{u2} M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2)))) (Module.toMulActionWithZero.{u3, u2} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4))))) => (ι -> M) -> (LinearMap.{u3, u3, max u1 u3, u2} R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) (ι -> R) M (Pi.addCommMonoid.{u1, u3} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (Pi.Function.module.{u1, u3, u3} ι R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3))))) (Semiring.toModule.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) _inst_4)) (LinearMap.hasCoeToFun.{u3, u3, max u1 u2, max (max u1 u3) u2} R R (ι -> M) (LinearMap.{u3, u3, max u1 u3, u2} R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) (ι -> R) M (Pi.addCommMonoid.{u1, u3} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (Pi.Function.module.{u1, u3, u3} ι R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3))))) (Semiring.toModule.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) _inst_4) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Pi.addCommMonoid.{u1, u2} ι (fun (ᾰ : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u2} M _inst_2)) (LinearMap.addCommMonoid.{u3, u3, max u1 u3, u2} R R (ι -> R) M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Pi.addCommMonoid.{u1, u3} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (Pi.Function.module.{u1, u3, u3} ι R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3))))) (Semiring.toModule.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) _inst_4 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3))))) (Pi.Function.module.{u1, u3, u2} ι R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (LinearMap.module.{u3, u3, u3, max u1 u3, u2} R R R (ι -> R) M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Pi.addCommMonoid.{u1, u3} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (Pi.Function.module.{u1, u3, u3} ι R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3))))) (Semiring.toModule.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) _inst_4 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) _inst_4 (smulCommClass_self.{u3, u2} R M (CommRing.toCommMonoid.{u3} R _inst_3) (MulActionWithZero.toMulAction.{u3, u2} R M (Semiring.toMonoidWithZero.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3))) (AddZeroClass.toHasZero.{u2} M (AddMonoid.toAddZeroClass.{u2} M (AddCommMonoid.toAddMonoid.{u2} M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2)))) (Module.toMulActionWithZero.{u3, u2} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4)))) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3))))) (Fintype.total.{u1, u2, u3, u3} ι M R _inst_1 (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4 R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) _inst_4 (smulCommClass_self.{u3, u2} R M (CommRing.toCommMonoid.{u3} R _inst_3) (MulActionWithZero.toMulAction.{u3, u2} R M (Semiring.toMonoidWithZero.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3))) (AddZeroClass.toHasZero.{u2} M (AddMonoid.toAddZeroClass.{u2} M (AddCommMonoid.toAddMonoid.{u2} M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2)))) (Module.toMulActionWithZero.{u3, u2} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4)))) b) (Matrix.mulVec.{u3, u1, u1} ι ι R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u3} R (NonAssocRing.toNonUnitalNonAssocRing.{u3} R (Ring.toNonAssocRing.{u3} R (CommRing.toRing.{u3} R _inst_3)))) _inst_1 A x)) (coeFn.{succ u2, succ u2} (Module.End.{u3, u2} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (fun (_x : LinearMap.{u3, u3, u2, u2} R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4 _inst_4) => M -> M) (LinearMap.hasCoeToFun.{u3, u3, u2, u2} R R M M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4 _inst_4 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3))))) f (coeFn.{max (succ (max u1 u3)) (succ u2), max (succ (max u1 u3)) (succ u2)} (LinearMap.{u3, u3, max u1 u3, u2} R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) (ι -> R) M (Pi.addCommMonoid.{u1, u3} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (Pi.Function.module.{u1, u3, u3} ι R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3))))) (Semiring.toModule.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) _inst_4) (fun (_x : LinearMap.{u3, u3, max u1 u3, u2} R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) (ι -> R) M (Pi.addCommMonoid.{u1, u3} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (Pi.Function.module.{u1, u3, u3} ι R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3))))) (Semiring.toModule.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) _inst_4) => (ι -> R) -> M) (LinearMap.hasCoeToFun.{u3, u3, max u1 u3, u2} R R (ι -> R) M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Pi.addCommMonoid.{u1, u3} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (Pi.Function.module.{u1, u3, u3} ι R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3))))) (Semiring.toModule.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) _inst_4 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3))))) (coeFn.{max (succ (max u1 u2)) (succ (max (max u1 u3) u2)), max (succ (max u1 u2)) (succ (max (max u1 u3) u2))} (LinearMap.{u3, u3, max u1 u2, max (max u1 u3) u2} R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) (ι -> M) (LinearMap.{u3, u3, max u1 u3, u2} R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) (ι -> R) M (Pi.addCommMonoid.{u1, u3} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (Pi.Function.module.{u1, u3, u3} ι R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3))))) (Semiring.toModule.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) _inst_4) (Pi.addCommMonoid.{u1, u2} ι (fun (ᾰ : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u2} M _inst_2)) (LinearMap.addCommMonoid.{u3, u3, max u1 u3, u2} R R (ι -> R) M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Pi.addCommMonoid.{u1, u3} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (Pi.Function.module.{u1, u3, u3} ι R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3))))) (Semiring.toModule.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) _inst_4 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3))))) (Pi.Function.module.{u1, u3, u2} ι R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (LinearMap.module.{u3, u3, u3, max u1 u3, u2} R R R (ι -> R) M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Pi.addCommMonoid.{u1, u3} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (Pi.Function.module.{u1, u3, u3} ι R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3))))) (Semiring.toModule.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) _inst_4 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) _inst_4 (smulCommClass_self.{u3, u2} R M (CommRing.toCommMonoid.{u3} R _inst_3) (MulActionWithZero.toMulAction.{u3, u2} R M (Semiring.toMonoidWithZero.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3))) (AddZeroClass.toHasZero.{u2} M (AddMonoid.toAddZeroClass.{u2} M (AddCommMonoid.toAddMonoid.{u2} M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2)))) (Module.toMulActionWithZero.{u3, u2} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4))))) (fun (_x : LinearMap.{u3, u3, max u1 u2, max (max u1 u3) u2} R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) (ι -> M) (LinearMap.{u3, u3, max u1 u3, u2} R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) (ι -> R) M (Pi.addCommMonoid.{u1, u3} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (Pi.Function.module.{u1, u3, u3} ι R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3))))) (Semiring.toModule.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) _inst_4) (Pi.addCommMonoid.{u1, u2} ι (fun (ᾰ : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u2} M _inst_2)) (LinearMap.addCommMonoid.{u3, u3, max u1 u3, u2} R R (ι -> R) M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Pi.addCommMonoid.{u1, u3} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (Pi.Function.module.{u1, u3, u3} ι R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3))))) (Semiring.toModule.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) _inst_4 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3))))) (Pi.Function.module.{u1, u3, u2} ι R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (LinearMap.module.{u3, u3, u3, max u1 u3, u2} R R R (ι -> R) M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Pi.addCommMonoid.{u1, u3} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (Pi.Function.module.{u1, u3, u3} ι R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3))))) (Semiring.toModule.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) _inst_4 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) _inst_4 (smulCommClass_self.{u3, u2} R M (CommRing.toCommMonoid.{u3} R _inst_3) (MulActionWithZero.toMulAction.{u3, u2} R M (Semiring.toMonoidWithZero.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3))) (AddZeroClass.toHasZero.{u2} M (AddMonoid.toAddZeroClass.{u2} M (AddCommMonoid.toAddMonoid.{u2} M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2)))) (Module.toMulActionWithZero.{u3, u2} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4))))) => (ι -> M) -> (LinearMap.{u3, u3, max u1 u3, u2} R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) (ι -> R) M (Pi.addCommMonoid.{u1, u3} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (Pi.Function.module.{u1, u3, u3} ι R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3))))) (Semiring.toModule.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) _inst_4)) (LinearMap.hasCoeToFun.{u3, u3, max u1 u2, max (max u1 u3) u2} R R (ι -> M) (LinearMap.{u3, u3, max u1 u3, u2} R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) (ι -> R) M (Pi.addCommMonoid.{u1, u3} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (Pi.Function.module.{u1, u3, u3} ι R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3))))) (Semiring.toModule.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) _inst_4) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Pi.addCommMonoid.{u1, u2} ι (fun (ᾰ : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u2} M _inst_2)) (LinearMap.addCommMonoid.{u3, u3, max u1 u3, u2} R R (ι -> R) M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Pi.addCommMonoid.{u1, u3} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (Pi.Function.module.{u1, u3, u3} ι R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3))))) (Semiring.toModule.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) _inst_4 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3))))) (Pi.Function.module.{u1, u3, u2} ι R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (LinearMap.module.{u3, u3, u3, max u1 u3, u2} R R R (ι -> R) M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Pi.addCommMonoid.{u1, u3} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (Pi.Function.module.{u1, u3, u3} ι R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3))))) (Semiring.toModule.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) _inst_4 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) _inst_4 (smulCommClass_self.{u3, u2} R M (CommRing.toCommMonoid.{u3} R _inst_3) (MulActionWithZero.toMulAction.{u3, u2} R M (Semiring.toMonoidWithZero.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3))) (AddZeroClass.toHasZero.{u2} M (AddMonoid.toAddZeroClass.{u2} M (AddCommMonoid.toAddMonoid.{u2} M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2)))) (Module.toMulActionWithZero.{u3, u2} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4)))) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3))))) (Fintype.total.{u1, u2, u3, u3} ι M R _inst_1 (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4 R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) _inst_4 (smulCommClass_self.{u3, u2} R M (CommRing.toCommMonoid.{u3} R _inst_3) (MulActionWithZero.toMulAction.{u3, u2} R M (Semiring.toMonoidWithZero.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3))) (AddZeroClass.toHasZero.{u2} M (AddMonoid.toAddZeroClass.{u2} M (AddCommMonoid.toAddMonoid.{u2} M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2)))) (Module.toMulActionWithZero.{u3, u2} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4)))) b) x)))
+but is expected to have type
+ forall {ι : Type.{u3}} [_inst_1 : Fintype.{u3} ι] {M : Type.{u1}} [_inst_2 : AddCommGroup.{u1} M] {R : Type.{u2}} [_inst_3 : CommRing.{u2} R] [_inst_4 : Module.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2)] {b : ι -> M} [_inst_5 : DecidableEq.{succ u3} ι] {A : Matrix.{u3, u3, u2} ι ι R} {f : Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4}, (Matrix.Represents.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b) A f) -> (forall (x : ι -> R), Eq.{succ u1} ((fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6191 : ι -> R) => M) (Matrix.mulVec.{u2, u3, u3} ι ι R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_3)))) _inst_1 A x)) (FunLike.coe.{max (max (succ u3) (succ u1)) (succ u2), max (succ u3) (succ u2), succ u1} ((fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6191 : ι -> M) => LinearMap.{u2, u2, max u3 u2, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (ι -> R) M (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Finsupp._hyg.14570 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Finsupp._hyg.14570 : ι) => R) R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) (fun (i : ι) => Semiring.toModule.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) _inst_4) b) (ι -> R) (fun (_x : ι -> R) => (fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6191 : ι -> R) => M) _x) (LinearMap.instFunLikeLinearMap.{u2, u2, max u3 u2, u1} R R (ι -> R) M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Pi.addCommMonoid.{u3, u2} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Finsupp._hyg.14570 : ι) => R) R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) (fun (i : ι) => Semiring.toModule.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) _inst_4 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), max (succ u1) (succ u3), max (max (succ u2) (succ u1)) (succ u3)} (LinearMap.{u2, u2, max u3 u1, max u1 u3 u2} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (ι -> M) (LinearMap.{u2, u2, max u3 u2, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (ι -> R) M (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Finsupp._hyg.14570 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Finsupp._hyg.14570 : ι) => R) R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) (fun (i : ι) => Semiring.toModule.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) _inst_4) (Pi.addCommMonoid.{u3, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Finsupp._hyg.14558 : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u1} M _inst_2)) (LinearMap.addCommMonoid.{u2, u2, max u3 u2, u1} R R (ι -> R) M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Finsupp._hyg.14570 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Finsupp._hyg.14570 : ι) => R) R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) (fun (i : ι) => Semiring.toModule.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) _inst_4 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) (Pi.module.{u3, u1, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Finsupp._hyg.14558 : ι) => M) R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (fun (i : ι) => _inst_4)) (LinearMap.instModuleLinearMapAddCommMonoid.{u2, u2, u2, max u3 u2, u1} R R R (ι -> R) M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Finsupp._hyg.14570 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Finsupp._hyg.14570 : ι) => R) R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) (fun (i : ι) => Semiring.toModule.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) _inst_4 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_4 (smulCommClass_self.{u2, u1} R M (CommRing.toCommMonoid.{u2} R _inst_3) (MulActionWithZero.toMulAction.{u2, u1} R M (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (NegZeroClass.toZero.{u1} M (SubNegZeroMonoid.toNegZeroClass.{u1} M (SubtractionMonoid.toSubNegZeroMonoid.{u1} M (SubtractionCommMonoid.toSubtractionMonoid.{u1} M (AddCommGroup.toDivisionAddCommMonoid.{u1} M _inst_2))))) (Module.toMulActionWithZero.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4))))) (ι -> M) (fun (_x : ι -> M) => (fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6191 : ι -> M) => LinearMap.{u2, u2, max u3 u2, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (ι -> R) M (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Finsupp._hyg.14570 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Finsupp._hyg.14570 : ι) => R) R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) (fun (i : ι) => Semiring.toModule.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) _inst_4) _x) (LinearMap.instFunLikeLinearMap.{u2, u2, max u1 u3, max (max u2 u1) u3} R R (ι -> M) (LinearMap.{u2, u2, max u3 u2, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (ι -> R) M (Pi.addCommMonoid.{u3, u2} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Finsupp._hyg.14570 : ι) => R) R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) (fun (i : ι) => Semiring.toModule.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) _inst_4) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Pi.addCommMonoid.{u3, u1} ι (fun (ᾰ : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u1} M _inst_2)) (LinearMap.addCommMonoid.{u2, u2, max u3 u2, u1} R R (ι -> R) M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Pi.addCommMonoid.{u3, u2} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Finsupp._hyg.14570 : ι) => R) R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) (fun (i : ι) => Semiring.toModule.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) _inst_4 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) (Pi.module.{u3, u1, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Finsupp._hyg.14558 : ι) => M) R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (fun (i : ι) => _inst_4)) (LinearMap.instModuleLinearMapAddCommMonoid.{u2, u2, u2, max u3 u2, u1} R R R (ι -> R) M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Pi.addCommMonoid.{u3, u2} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Finsupp._hyg.14570 : ι) => R) R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) (fun (i : ι) => Semiring.toModule.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) _inst_4 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_4 (smulCommClass_self.{u2, u1} R M (CommRing.toCommMonoid.{u2} R _inst_3) (MulActionWithZero.toMulAction.{u2, u1} R M (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (NegZeroClass.toZero.{u1} M (SubNegZeroMonoid.toNegZeroClass.{u1} M (SubtractionMonoid.toSubNegZeroMonoid.{u1} M (SubtractionCommMonoid.toSubtractionMonoid.{u1} M (AddCommGroup.toDivisionAddCommMonoid.{u1} M _inst_2))))) (Module.toMulActionWithZero.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) (Fintype.total.{u3, u1, u2, u2} ι M R _inst_1 (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4 R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_4 (smulCommClass_self.{u2, u1} R M (CommRing.toCommMonoid.{u2} R _inst_3) (MulActionWithZero.toMulAction.{u2, u1} R M (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (NegZeroClass.toZero.{u1} M (SubNegZeroMonoid.toNegZeroClass.{u1} M (SubtractionMonoid.toSubNegZeroMonoid.{u1} M (SubtractionCommMonoid.toSubtractionMonoid.{u1} M (AddCommGroup.toDivisionAddCommMonoid.{u1} M _inst_2))))) (Module.toMulActionWithZero.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4)))) b) (Matrix.mulVec.{u2, u3, u3} ι ι R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_3)))) _inst_1 A x)) (FunLike.coe.{succ u1, succ u1, succ u1} (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6191 : M) => M) _x) (LinearMap.instFunLikeLinearMap.{u2, u2, u1, u1} R R M M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4 _inst_4 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) f (FunLike.coe.{max (max (succ u3) (succ u1)) (succ u2), max (succ u3) (succ u2), succ u1} ((fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6191 : ι -> M) => LinearMap.{u2, u2, max u3 u2, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (ι -> R) M (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Finsupp._hyg.14570 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Finsupp._hyg.14570 : ι) => R) R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) (fun (i : ι) => Semiring.toModule.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) _inst_4) b) (ι -> R) (fun (_x : ι -> R) => (fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6191 : ι -> R) => M) _x) (LinearMap.instFunLikeLinearMap.{u2, u2, max u3 u2, u1} R R (ι -> R) M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Pi.addCommMonoid.{u3, u2} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Finsupp._hyg.14570 : ι) => R) R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) (fun (i : ι) => Semiring.toModule.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) _inst_4 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), max (succ u1) (succ u3), max (max (succ u2) (succ u1)) (succ u3)} (LinearMap.{u2, u2, max u3 u1, max u1 u3 u2} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (ι -> M) (LinearMap.{u2, u2, max u3 u2, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (ι -> R) M (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Finsupp._hyg.14570 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Finsupp._hyg.14570 : ι) => R) R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) (fun (i : ι) => Semiring.toModule.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) _inst_4) (Pi.addCommMonoid.{u3, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Finsupp._hyg.14558 : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u1} M _inst_2)) (LinearMap.addCommMonoid.{u2, u2, max u3 u2, u1} R R (ι -> R) M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Finsupp._hyg.14570 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Finsupp._hyg.14570 : ι) => R) R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) (fun (i : ι) => Semiring.toModule.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) _inst_4 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) (Pi.module.{u3, u1, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Finsupp._hyg.14558 : ι) => M) R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (fun (i : ι) => _inst_4)) (LinearMap.instModuleLinearMapAddCommMonoid.{u2, u2, u2, max u3 u2, u1} R R R (ι -> R) M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Finsupp._hyg.14570 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Finsupp._hyg.14570 : ι) => R) R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) (fun (i : ι) => Semiring.toModule.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) _inst_4 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_4 (smulCommClass_self.{u2, u1} R M (CommRing.toCommMonoid.{u2} R _inst_3) (MulActionWithZero.toMulAction.{u2, u1} R M (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (NegZeroClass.toZero.{u1} M (SubNegZeroMonoid.toNegZeroClass.{u1} M (SubtractionMonoid.toSubNegZeroMonoid.{u1} M (SubtractionCommMonoid.toSubtractionMonoid.{u1} M (AddCommGroup.toDivisionAddCommMonoid.{u1} M _inst_2))))) (Module.toMulActionWithZero.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4))))) (ι -> M) (fun (_x : ι -> M) => (fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6191 : ι -> M) => LinearMap.{u2, u2, max u3 u2, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (ι -> R) M (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Finsupp._hyg.14570 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Finsupp._hyg.14570 : ι) => R) R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) (fun (i : ι) => Semiring.toModule.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) _inst_4) _x) (LinearMap.instFunLikeLinearMap.{u2, u2, max u1 u3, max (max u2 u1) u3} R R (ι -> M) (LinearMap.{u2, u2, max u3 u2, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (ι -> R) M (Pi.addCommMonoid.{u3, u2} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Finsupp._hyg.14570 : ι) => R) R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) (fun (i : ι) => Semiring.toModule.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) _inst_4) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Pi.addCommMonoid.{u3, u1} ι (fun (ᾰ : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u1} M _inst_2)) (LinearMap.addCommMonoid.{u2, u2, max u3 u2, u1} R R (ι -> R) M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Pi.addCommMonoid.{u3, u2} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Finsupp._hyg.14570 : ι) => R) R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) (fun (i : ι) => Semiring.toModule.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) _inst_4 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) (Pi.module.{u3, u1, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Finsupp._hyg.14558 : ι) => M) R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (fun (i : ι) => _inst_4)) (LinearMap.instModuleLinearMapAddCommMonoid.{u2, u2, u2, max u3 u2, u1} R R R (ι -> R) M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Pi.addCommMonoid.{u3, u2} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Finsupp._hyg.14570 : ι) => R) R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) (fun (i : ι) => Semiring.toModule.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) _inst_4 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_4 (smulCommClass_self.{u2, u1} R M (CommRing.toCommMonoid.{u2} R _inst_3) (MulActionWithZero.toMulAction.{u2, u1} R M (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (NegZeroClass.toZero.{u1} M (SubNegZeroMonoid.toNegZeroClass.{u1} M (SubtractionMonoid.toSubNegZeroMonoid.{u1} M (SubtractionCommMonoid.toSubtractionMonoid.{u1} M (AddCommGroup.toDivisionAddCommMonoid.{u1} M _inst_2))))) (Module.toMulActionWithZero.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) (Fintype.total.{u3, u1, u2, u2} ι M R _inst_1 (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4 R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_4 (smulCommClass_self.{u2, u1} R M (CommRing.toCommMonoid.{u2} R _inst_3) (MulActionWithZero.toMulAction.{u2, u1} R M (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (NegZeroClass.toZero.{u1} M (SubNegZeroMonoid.toNegZeroClass.{u1} M (SubtractionMonoid.toSubNegZeroMonoid.{u1} M (SubtractionCommMonoid.toSubtractionMonoid.{u1} M (AddCommGroup.toDivisionAddCommMonoid.{u1} M _inst_2))))) (Module.toMulActionWithZero.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4)))) b) x)))
+Case conversion may be inaccurate. Consider using '#align matrix.represents.congr_fun Matrix.Represents.congr_funₓ'. -/
theorem Matrix.Represents.congr_fun {A : Matrix ι ι R} {f : Module.End R M} (h : A.Represents b f)
(x) : Fintype.total R R b (A.mulVec x) = f (Fintype.total R R b x) :=
LinearMap.congr_fun h x
#align matrix.represents.congr_fun Matrix.Represents.congr_fun
+/- warning: matrix.represents_iff -> Matrix.represents_iff is a dubious translation:
+lean 3 declaration is
+ forall {ι : Type.{u1}} [_inst_1 : Fintype.{u1} ι] {M : Type.{u2}} [_inst_2 : AddCommGroup.{u2} M] {R : Type.{u3}} [_inst_3 : CommRing.{u3} R] [_inst_4 : Module.{u3, u2} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2)] {b : ι -> M} [_inst_5 : DecidableEq.{succ u1} ι] {A : Matrix.{u1, u1, u3} ι ι R} {f : Module.End.{u3, u2} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4}, Iff (Matrix.Represents.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b) A f) (forall (x : ι -> R), Eq.{succ u2} M (coeFn.{max (succ (max u1 u3)) (succ u2), max (succ (max u1 u3)) (succ u2)} (LinearMap.{u3, u3, max u1 u3, u2} R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) (ι -> R) M (Pi.addCommMonoid.{u1, u3} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (Pi.Function.module.{u1, u3, u3} ι R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3))))) (Semiring.toModule.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) _inst_4) (fun (_x : LinearMap.{u3, u3, max u1 u3, u2} R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) (ι -> R) M (Pi.addCommMonoid.{u1, u3} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (Pi.Function.module.{u1, u3, u3} ι R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3))))) (Semiring.toModule.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) _inst_4) => (ι -> R) -> M) (LinearMap.hasCoeToFun.{u3, u3, max u1 u3, u2} R R (ι -> R) M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Pi.addCommMonoid.{u1, u3} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (Pi.Function.module.{u1, u3, u3} ι R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3))))) (Semiring.toModule.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) _inst_4 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3))))) (coeFn.{max (succ (max u1 u2)) (succ (max (max u1 u3) u2)), max (succ (max u1 u2)) (succ (max (max u1 u3) u2))} (LinearMap.{u3, u3, max u1 u2, max (max u1 u3) u2} R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) (ι -> M) (LinearMap.{u3, u3, max u1 u3, u2} R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) (ι -> R) M (Pi.addCommMonoid.{u1, u3} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (Pi.Function.module.{u1, u3, u3} ι R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3))))) (Semiring.toModule.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) _inst_4) (Pi.addCommMonoid.{u1, u2} ι (fun (ᾰ : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u2} M _inst_2)) (LinearMap.addCommMonoid.{u3, u3, max u1 u3, u2} R R (ι -> R) M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Pi.addCommMonoid.{u1, u3} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (Pi.Function.module.{u1, u3, u3} ι R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3))))) (Semiring.toModule.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) _inst_4 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3))))) (Pi.Function.module.{u1, u3, u2} ι R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (LinearMap.module.{u3, u3, u3, max u1 u3, u2} R R R (ι -> R) M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Pi.addCommMonoid.{u1, u3} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (Pi.Function.module.{u1, u3, u3} ι R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3))))) (Semiring.toModule.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) _inst_4 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) _inst_4 (smulCommClass_self.{u3, u2} R M (CommRing.toCommMonoid.{u3} R _inst_3) (MulActionWithZero.toMulAction.{u3, u2} R M (Semiring.toMonoidWithZero.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3))) (AddZeroClass.toHasZero.{u2} M (AddMonoid.toAddZeroClass.{u2} M (AddCommMonoid.toAddMonoid.{u2} M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2)))) (Module.toMulActionWithZero.{u3, u2} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4))))) (fun (_x : LinearMap.{u3, u3, max u1 u2, max (max u1 u3) u2} R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) (ι -> M) (LinearMap.{u3, u3, max u1 u3, u2} R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) (ι -> R) M (Pi.addCommMonoid.{u1, u3} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (Pi.Function.module.{u1, u3, u3} ι R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3))))) (Semiring.toModule.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) _inst_4) (Pi.addCommMonoid.{u1, u2} ι (fun (ᾰ : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u2} M _inst_2)) (LinearMap.addCommMonoid.{u3, u3, max u1 u3, u2} R R (ι -> R) M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Pi.addCommMonoid.{u1, u3} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (Pi.Function.module.{u1, u3, u3} ι R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3))))) (Semiring.toModule.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) _inst_4 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3))))) (Pi.Function.module.{u1, u3, u2} ι R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (LinearMap.module.{u3, u3, u3, max u1 u3, u2} R R R (ι -> R) M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Pi.addCommMonoid.{u1, u3} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (Pi.Function.module.{u1, u3, u3} ι R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3))))) (Semiring.toModule.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) _inst_4 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) _inst_4 (smulCommClass_self.{u3, u2} R M (CommRing.toCommMonoid.{u3} R _inst_3) (MulActionWithZero.toMulAction.{u3, u2} R M (Semiring.toMonoidWithZero.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3))) (AddZeroClass.toHasZero.{u2} M (AddMonoid.toAddZeroClass.{u2} M (AddCommMonoid.toAddMonoid.{u2} M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2)))) (Module.toMulActionWithZero.{u3, u2} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4))))) => (ι -> M) -> (LinearMap.{u3, u3, max u1 u3, u2} R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) (ι -> R) M (Pi.addCommMonoid.{u1, u3} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (Pi.Function.module.{u1, u3, u3} ι R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3))))) (Semiring.toModule.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) _inst_4)) (LinearMap.hasCoeToFun.{u3, u3, max u1 u2, max (max u1 u3) u2} R R (ι -> M) (LinearMap.{u3, u3, max u1 u3, u2} R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) (ι -> R) M (Pi.addCommMonoid.{u1, u3} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (Pi.Function.module.{u1, u3, u3} ι R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3))))) (Semiring.toModule.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) _inst_4) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Pi.addCommMonoid.{u1, u2} ι (fun (ᾰ : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u2} M _inst_2)) (LinearMap.addCommMonoid.{u3, u3, max u1 u3, u2} R R (ι -> R) M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Pi.addCommMonoid.{u1, u3} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (Pi.Function.module.{u1, u3, u3} ι R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3))))) (Semiring.toModule.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) _inst_4 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3))))) (Pi.Function.module.{u1, u3, u2} ι R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (LinearMap.module.{u3, u3, u3, max u1 u3, u2} R R R (ι -> R) M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Pi.addCommMonoid.{u1, u3} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (Pi.Function.module.{u1, u3, u3} ι R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3))))) (Semiring.toModule.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) _inst_4 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) _inst_4 (smulCommClass_self.{u3, u2} R M (CommRing.toCommMonoid.{u3} R _inst_3) (MulActionWithZero.toMulAction.{u3, u2} R M (Semiring.toMonoidWithZero.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3))) (AddZeroClass.toHasZero.{u2} M (AddMonoid.toAddZeroClass.{u2} M (AddCommMonoid.toAddMonoid.{u2} M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2)))) (Module.toMulActionWithZero.{u3, u2} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4)))) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3))))) (Fintype.total.{u1, u2, u3, u3} ι M R _inst_1 (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4 R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) _inst_4 (smulCommClass_self.{u3, u2} R M (CommRing.toCommMonoid.{u3} R _inst_3) (MulActionWithZero.toMulAction.{u3, u2} R M (Semiring.toMonoidWithZero.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3))) (AddZeroClass.toHasZero.{u2} M (AddMonoid.toAddZeroClass.{u2} M (AddCommMonoid.toAddMonoid.{u2} M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2)))) (Module.toMulActionWithZero.{u3, u2} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4)))) b) (Matrix.mulVec.{u3, u1, u1} ι ι R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u3} R (NonAssocRing.toNonUnitalNonAssocRing.{u3} R (Ring.toNonAssocRing.{u3} R (CommRing.toRing.{u3} R _inst_3)))) _inst_1 A x)) (coeFn.{succ u2, succ u2} (Module.End.{u3, u2} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (fun (_x : LinearMap.{u3, u3, u2, u2} R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4 _inst_4) => M -> M) (LinearMap.hasCoeToFun.{u3, u3, u2, u2} R R M M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4 _inst_4 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3))))) f (coeFn.{max (succ (max u1 u3)) (succ u2), max (succ (max u1 u3)) (succ u2)} (LinearMap.{u3, u3, max u1 u3, u2} R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) (ι -> R) M (Pi.addCommMonoid.{u1, u3} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (Pi.Function.module.{u1, u3, u3} ι R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3))))) (Semiring.toModule.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) _inst_4) (fun (_x : LinearMap.{u3, u3, max u1 u3, u2} R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) (ι -> R) M (Pi.addCommMonoid.{u1, u3} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (Pi.Function.module.{u1, u3, u3} ι R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3))))) (Semiring.toModule.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) _inst_4) => (ι -> R) -> M) (LinearMap.hasCoeToFun.{u3, u3, max u1 u3, u2} R R (ι -> R) M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Pi.addCommMonoid.{u1, u3} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (Pi.Function.module.{u1, u3, u3} ι R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3))))) (Semiring.toModule.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) _inst_4 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3))))) (coeFn.{max (succ (max u1 u2)) (succ (max (max u1 u3) u2)), max (succ (max u1 u2)) (succ (max (max u1 u3) u2))} (LinearMap.{u3, u3, max u1 u2, max (max u1 u3) u2} R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) (ι -> M) (LinearMap.{u3, u3, max u1 u3, u2} R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) (ι -> R) M (Pi.addCommMonoid.{u1, u3} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (Pi.Function.module.{u1, u3, u3} ι R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3))))) (Semiring.toModule.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) _inst_4) (Pi.addCommMonoid.{u1, u2} ι (fun (ᾰ : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u2} M _inst_2)) (LinearMap.addCommMonoid.{u3, u3, max u1 u3, u2} R R (ι -> R) M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Pi.addCommMonoid.{u1, u3} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (Pi.Function.module.{u1, u3, u3} ι R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3))))) (Semiring.toModule.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) _inst_4 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3))))) (Pi.Function.module.{u1, u3, u2} ι R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (LinearMap.module.{u3, u3, u3, max u1 u3, u2} R R R (ι -> R) M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Pi.addCommMonoid.{u1, u3} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (Pi.Function.module.{u1, u3, u3} ι R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3))))) (Semiring.toModule.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) _inst_4 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) _inst_4 (smulCommClass_self.{u3, u2} R M (CommRing.toCommMonoid.{u3} R _inst_3) (MulActionWithZero.toMulAction.{u3, u2} R M (Semiring.toMonoidWithZero.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3))) (AddZeroClass.toHasZero.{u2} M (AddMonoid.toAddZeroClass.{u2} M (AddCommMonoid.toAddMonoid.{u2} M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2)))) (Module.toMulActionWithZero.{u3, u2} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4))))) (fun (_x : LinearMap.{u3, u3, max u1 u2, max (max u1 u3) u2} R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) (ι -> M) (LinearMap.{u3, u3, max u1 u3, u2} R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) (ι -> R) M (Pi.addCommMonoid.{u1, u3} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (Pi.Function.module.{u1, u3, u3} ι R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3))))) (Semiring.toModule.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) _inst_4) (Pi.addCommMonoid.{u1, u2} ι (fun (ᾰ : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u2} M _inst_2)) (LinearMap.addCommMonoid.{u3, u3, max u1 u3, u2} R R (ι -> R) M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Pi.addCommMonoid.{u1, u3} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (Pi.Function.module.{u1, u3, u3} ι R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3))))) (Semiring.toModule.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) _inst_4 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3))))) (Pi.Function.module.{u1, u3, u2} ι R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (LinearMap.module.{u3, u3, u3, max u1 u3, u2} R R R (ι -> R) M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Pi.addCommMonoid.{u1, u3} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (Pi.Function.module.{u1, u3, u3} ι R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3))))) (Semiring.toModule.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) _inst_4 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) _inst_4 (smulCommClass_self.{u3, u2} R M (CommRing.toCommMonoid.{u3} R _inst_3) (MulActionWithZero.toMulAction.{u3, u2} R M (Semiring.toMonoidWithZero.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3))) (AddZeroClass.toHasZero.{u2} M (AddMonoid.toAddZeroClass.{u2} M (AddCommMonoid.toAddMonoid.{u2} M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2)))) (Module.toMulActionWithZero.{u3, u2} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4))))) => (ι -> M) -> (LinearMap.{u3, u3, max u1 u3, u2} R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) (ι -> R) M (Pi.addCommMonoid.{u1, u3} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (Pi.Function.module.{u1, u3, u3} ι R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3))))) (Semiring.toModule.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) _inst_4)) (LinearMap.hasCoeToFun.{u3, u3, max u1 u2, max (max u1 u3) u2} R R (ι -> M) (LinearMap.{u3, u3, max u1 u3, u2} R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) (ι -> R) M (Pi.addCommMonoid.{u1, u3} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (Pi.Function.module.{u1, u3, u3} ι R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3))))) (Semiring.toModule.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) _inst_4) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Pi.addCommMonoid.{u1, u2} ι (fun (ᾰ : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u2} M _inst_2)) (LinearMap.addCommMonoid.{u3, u3, max u1 u3, u2} R R (ι -> R) M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Pi.addCommMonoid.{u1, u3} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (Pi.Function.module.{u1, u3, u3} ι R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3))))) (Semiring.toModule.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) _inst_4 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3))))) (Pi.Function.module.{u1, u3, u2} ι R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (LinearMap.module.{u3, u3, u3, max u1 u3, u2} R R R (ι -> R) M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Pi.addCommMonoid.{u1, u3} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (Pi.Function.module.{u1, u3, u3} ι R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3))))) (Semiring.toModule.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) _inst_4 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) _inst_4 (smulCommClass_self.{u3, u2} R M (CommRing.toCommMonoid.{u3} R _inst_3) (MulActionWithZero.toMulAction.{u3, u2} R M (Semiring.toMonoidWithZero.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3))) (AddZeroClass.toHasZero.{u2} M (AddMonoid.toAddZeroClass.{u2} M (AddCommMonoid.toAddMonoid.{u2} M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2)))) (Module.toMulActionWithZero.{u3, u2} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4)))) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3))))) (Fintype.total.{u1, u2, u3, u3} ι M R _inst_1 (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4 R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) _inst_4 (smulCommClass_self.{u3, u2} R M (CommRing.toCommMonoid.{u3} R _inst_3) (MulActionWithZero.toMulAction.{u3, u2} R M (Semiring.toMonoidWithZero.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3))) (AddZeroClass.toHasZero.{u2} M (AddMonoid.toAddZeroClass.{u2} M (AddCommMonoid.toAddMonoid.{u2} M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2)))) (Module.toMulActionWithZero.{u3, u2} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4)))) b) x)))
+but is expected to have type
+ forall {ι : Type.{u3}} [_inst_1 : Fintype.{u3} ι] {M : Type.{u1}} [_inst_2 : AddCommGroup.{u1} M] {R : Type.{u2}} [_inst_3 : CommRing.{u2} R] [_inst_4 : Module.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2)] {b : ι -> M} [_inst_5 : DecidableEq.{succ u3} ι] {A : Matrix.{u3, u3, u2} ι ι R} {f : Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4}, Iff (Matrix.Represents.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b) A f) (forall (x : ι -> R), Eq.{succ u1} ((fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6191 : ι -> R) => M) (Matrix.mulVec.{u2, u3, u3} ι ι R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_3)))) _inst_1 A x)) (FunLike.coe.{max (max (succ u3) (succ u1)) (succ u2), max (succ u3) (succ u2), succ u1} ((fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6191 : ι -> M) => LinearMap.{u2, u2, max u3 u2, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (ι -> R) M (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Finsupp._hyg.14570 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Finsupp._hyg.14570 : ι) => R) R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) (fun (i : ι) => Semiring.toModule.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) _inst_4) b) (ι -> R) (fun (_x : ι -> R) => (fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6191 : ι -> R) => M) _x) (LinearMap.instFunLikeLinearMap.{u2, u2, max u3 u2, u1} R R (ι -> R) M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Pi.addCommMonoid.{u3, u2} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Finsupp._hyg.14570 : ι) => R) R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) (fun (i : ι) => Semiring.toModule.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) _inst_4 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), max (succ u1) (succ u3), max (max (succ u2) (succ u1)) (succ u3)} (LinearMap.{u2, u2, max u3 u1, max u1 u3 u2} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (ι -> M) (LinearMap.{u2, u2, max u3 u2, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (ι -> R) M (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Finsupp._hyg.14570 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Finsupp._hyg.14570 : ι) => R) R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) (fun (i : ι) => Semiring.toModule.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) _inst_4) (Pi.addCommMonoid.{u3, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Finsupp._hyg.14558 : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u1} M _inst_2)) (LinearMap.addCommMonoid.{u2, u2, max u3 u2, u1} R R (ι -> R) M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Finsupp._hyg.14570 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Finsupp._hyg.14570 : ι) => R) R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) (fun (i : ι) => Semiring.toModule.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) _inst_4 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) (Pi.module.{u3, u1, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Finsupp._hyg.14558 : ι) => M) R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (fun (i : ι) => _inst_4)) (LinearMap.instModuleLinearMapAddCommMonoid.{u2, u2, u2, max u3 u2, u1} R R R (ι -> R) M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Finsupp._hyg.14570 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Finsupp._hyg.14570 : ι) => R) R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) (fun (i : ι) => Semiring.toModule.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) _inst_4 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_4 (smulCommClass_self.{u2, u1} R M (CommRing.toCommMonoid.{u2} R _inst_3) (MulActionWithZero.toMulAction.{u2, u1} R M (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (NegZeroClass.toZero.{u1} M (SubNegZeroMonoid.toNegZeroClass.{u1} M (SubtractionMonoid.toSubNegZeroMonoid.{u1} M (SubtractionCommMonoid.toSubtractionMonoid.{u1} M (AddCommGroup.toDivisionAddCommMonoid.{u1} M _inst_2))))) (Module.toMulActionWithZero.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4))))) (ι -> M) (fun (_x : ι -> M) => (fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6191 : ι -> M) => LinearMap.{u2, u2, max u3 u2, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (ι -> R) M (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Finsupp._hyg.14570 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Finsupp._hyg.14570 : ι) => R) R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) (fun (i : ι) => Semiring.toModule.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) _inst_4) _x) (LinearMap.instFunLikeLinearMap.{u2, u2, max u1 u3, max (max u2 u1) u3} R R (ι -> M) (LinearMap.{u2, u2, max u3 u2, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (ι -> R) M (Pi.addCommMonoid.{u3, u2} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Finsupp._hyg.14570 : ι) => R) R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) (fun (i : ι) => Semiring.toModule.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) _inst_4) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Pi.addCommMonoid.{u3, u1} ι (fun (ᾰ : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u1} M _inst_2)) (LinearMap.addCommMonoid.{u2, u2, max u3 u2, u1} R R (ι -> R) M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Pi.addCommMonoid.{u3, u2} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Finsupp._hyg.14570 : ι) => R) R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) (fun (i : ι) => Semiring.toModule.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) _inst_4 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) (Pi.module.{u3, u1, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Finsupp._hyg.14558 : ι) => M) R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (fun (i : ι) => _inst_4)) (LinearMap.instModuleLinearMapAddCommMonoid.{u2, u2, u2, max u3 u2, u1} R R R (ι -> R) M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Pi.addCommMonoid.{u3, u2} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Finsupp._hyg.14570 : ι) => R) R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) (fun (i : ι) => Semiring.toModule.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) _inst_4 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_4 (smulCommClass_self.{u2, u1} R M (CommRing.toCommMonoid.{u2} R _inst_3) (MulActionWithZero.toMulAction.{u2, u1} R M (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (NegZeroClass.toZero.{u1} M (SubNegZeroMonoid.toNegZeroClass.{u1} M (SubtractionMonoid.toSubNegZeroMonoid.{u1} M (SubtractionCommMonoid.toSubtractionMonoid.{u1} M (AddCommGroup.toDivisionAddCommMonoid.{u1} M _inst_2))))) (Module.toMulActionWithZero.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) (Fintype.total.{u3, u1, u2, u2} ι M R _inst_1 (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4 R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_4 (smulCommClass_self.{u2, u1} R M (CommRing.toCommMonoid.{u2} R _inst_3) (MulActionWithZero.toMulAction.{u2, u1} R M (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (NegZeroClass.toZero.{u1} M (SubNegZeroMonoid.toNegZeroClass.{u1} M (SubtractionMonoid.toSubNegZeroMonoid.{u1} M (SubtractionCommMonoid.toSubtractionMonoid.{u1} M (AddCommGroup.toDivisionAddCommMonoid.{u1} M _inst_2))))) (Module.toMulActionWithZero.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4)))) b) (Matrix.mulVec.{u2, u3, u3} ι ι R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_3)))) _inst_1 A x)) (FunLike.coe.{succ u1, succ u1, succ u1} (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6191 : M) => M) _x) (LinearMap.instFunLikeLinearMap.{u2, u2, u1, u1} R R M M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4 _inst_4 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) f (FunLike.coe.{max (max (succ u3) (succ u1)) (succ u2), max (succ u3) (succ u2), succ u1} ((fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6191 : ι -> M) => LinearMap.{u2, u2, max u3 u2, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (ι -> R) M (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Finsupp._hyg.14570 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Finsupp._hyg.14570 : ι) => R) R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) (fun (i : ι) => Semiring.toModule.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) _inst_4) b) (ι -> R) (fun (_x : ι -> R) => (fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6191 : ι -> R) => M) _x) (LinearMap.instFunLikeLinearMap.{u2, u2, max u3 u2, u1} R R (ι -> R) M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Pi.addCommMonoid.{u3, u2} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Finsupp._hyg.14570 : ι) => R) R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) (fun (i : ι) => Semiring.toModule.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) _inst_4 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u3), max (succ u1) (succ u3), max (max (succ u2) (succ u1)) (succ u3)} (LinearMap.{u2, u2, max u3 u1, max u1 u3 u2} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (ι -> M) (LinearMap.{u2, u2, max u3 u2, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (ι -> R) M (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Finsupp._hyg.14570 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Finsupp._hyg.14570 : ι) => R) R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) (fun (i : ι) => Semiring.toModule.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) _inst_4) (Pi.addCommMonoid.{u3, u1} ι (fun (a._@.Mathlib.LinearAlgebra.Finsupp._hyg.14558 : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u1} M _inst_2)) (LinearMap.addCommMonoid.{u2, u2, max u3 u2, u1} R R (ι -> R) M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Finsupp._hyg.14570 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Finsupp._hyg.14570 : ι) => R) R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) (fun (i : ι) => Semiring.toModule.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) _inst_4 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) (Pi.module.{u3, u1, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Finsupp._hyg.14558 : ι) => M) R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (fun (i : ι) => _inst_4)) (LinearMap.instModuleLinearMapAddCommMonoid.{u2, u2, u2, max u3 u2, u1} R R R (ι -> R) M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Finsupp._hyg.14570 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Finsupp._hyg.14570 : ι) => R) R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) (fun (i : ι) => Semiring.toModule.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) _inst_4 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_4 (smulCommClass_self.{u2, u1} R M (CommRing.toCommMonoid.{u2} R _inst_3) (MulActionWithZero.toMulAction.{u2, u1} R M (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (NegZeroClass.toZero.{u1} M (SubNegZeroMonoid.toNegZeroClass.{u1} M (SubtractionMonoid.toSubNegZeroMonoid.{u1} M (SubtractionCommMonoid.toSubtractionMonoid.{u1} M (AddCommGroup.toDivisionAddCommMonoid.{u1} M _inst_2))))) (Module.toMulActionWithZero.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4))))) (ι -> M) (fun (_x : ι -> M) => (fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6191 : ι -> M) => LinearMap.{u2, u2, max u3 u2, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (ι -> R) M (Pi.addCommMonoid.{u3, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Finsupp._hyg.14570 : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Finsupp._hyg.14570 : ι) => R) R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) (fun (i : ι) => Semiring.toModule.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) _inst_4) _x) (LinearMap.instFunLikeLinearMap.{u2, u2, max u1 u3, max (max u2 u1) u3} R R (ι -> M) (LinearMap.{u2, u2, max u3 u2, u1} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (ι -> R) M (Pi.addCommMonoid.{u3, u2} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Finsupp._hyg.14570 : ι) => R) R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) (fun (i : ι) => Semiring.toModule.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) _inst_4) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Pi.addCommMonoid.{u3, u1} ι (fun (ᾰ : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u1} M _inst_2)) (LinearMap.addCommMonoid.{u2, u2, max u3 u2, u1} R R (ι -> R) M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Pi.addCommMonoid.{u3, u2} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Finsupp._hyg.14570 : ι) => R) R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) (fun (i : ι) => Semiring.toModule.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) _inst_4 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) (Pi.module.{u3, u1, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Finsupp._hyg.14558 : ι) => M) R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (fun (i : ι) => _inst_4)) (LinearMap.instModuleLinearMapAddCommMonoid.{u2, u2, u2, max u3 u2, u1} R R R (ι -> R) M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Pi.addCommMonoid.{u3, u2} ι (fun (ᾰ : ι) => R) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))))) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (Pi.module.{u3, u2, u2} ι (fun (a._@.Mathlib.LinearAlgebra.Finsupp._hyg.14570 : ι) => R) R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (fun (i : ι) => NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) (fun (i : ι) => Semiring.toModule.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) _inst_4 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_4 (smulCommClass_self.{u2, u1} R M (CommRing.toCommMonoid.{u2} R _inst_3) (MulActionWithZero.toMulAction.{u2, u1} R M (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (NegZeroClass.toZero.{u1} M (SubNegZeroMonoid.toNegZeroClass.{u1} M (SubtractionMonoid.toSubNegZeroMonoid.{u1} M (SubtractionCommMonoid.toSubtractionMonoid.{u1} M (AddCommGroup.toDivisionAddCommMonoid.{u1} M _inst_2))))) (Module.toMulActionWithZero.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4)))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) (Fintype.total.{u3, u1, u2, u2} ι M R _inst_1 (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4 R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_4 (smulCommClass_self.{u2, u1} R M (CommRing.toCommMonoid.{u2} R _inst_3) (MulActionWithZero.toMulAction.{u2, u1} R M (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (NegZeroClass.toZero.{u1} M (SubNegZeroMonoid.toNegZeroClass.{u1} M (SubtractionMonoid.toSubNegZeroMonoid.{u1} M (SubtractionCommMonoid.toSubtractionMonoid.{u1} M (AddCommGroup.toDivisionAddCommMonoid.{u1} M _inst_2))))) (Module.toMulActionWithZero.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4)))) b) x)))
+Case conversion may be inaccurate. Consider using '#align matrix.represents_iff Matrix.represents_iffₓ'. -/
theorem Matrix.represents_iff {A : Matrix ι ι R} {f : Module.End R M} :
A.Represents b f ↔ ∀ x, Fintype.total R R b (A.mulVec x) = f (Fintype.total R R b x) :=
⟨fun e x => e.congr_fun x, fun H => LinearMap.ext fun x => H x⟩
#align matrix.represents_iff Matrix.represents_iff
+/- warning: matrix.represents_iff' -> Matrix.represents_iff' is a dubious translation:
+lean 3 declaration is
+ forall {ι : Type.{u1}} [_inst_1 : Fintype.{u1} ι] {M : Type.{u2}} [_inst_2 : AddCommGroup.{u2} M] {R : Type.{u3}} [_inst_3 : CommRing.{u3} R] [_inst_4 : Module.{u3, u2} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2)] {b : ι -> M} [_inst_5 : DecidableEq.{succ u1} ι] {A : Matrix.{u1, u1, u3} ι ι R} {f : Module.End.{u3, u2} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4}, Iff (Matrix.Represents.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b) A f) (forall (j : ι), Eq.{succ u2} M (Finset.sum.{u2, u1} M ι (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (Finset.univ.{u1} ι _inst_1) (fun (i : ι) => SMul.smul.{u3, u2} R M (SMulZeroClass.toHasSmul.{u3, u2} R M (AddZeroClass.toHasZero.{u2} M (AddMonoid.toAddZeroClass.{u2} M (AddCommMonoid.toAddMonoid.{u2} M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2)))) (SMulWithZero.toSmulZeroClass.{u3, u2} R M (MulZeroClass.toHasZero.{u3} R (MulZeroOneClass.toMulZeroClass.{u3} R (MonoidWithZero.toMulZeroOneClass.{u3} R (Semiring.toMonoidWithZero.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))))) (AddZeroClass.toHasZero.{u2} M (AddMonoid.toAddZeroClass.{u2} M (AddCommMonoid.toAddMonoid.{u2} M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2)))) (MulActionWithZero.toSMulWithZero.{u3, u2} R M (Semiring.toMonoidWithZero.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3))) (AddZeroClass.toHasZero.{u2} M (AddMonoid.toAddZeroClass.{u2} M (AddCommMonoid.toAddMonoid.{u2} M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2)))) (Module.toMulActionWithZero.{u3, u2} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4)))) (A i j) (b i))) (coeFn.{succ u2, succ u2} (Module.End.{u3, u2} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (fun (_x : LinearMap.{u3, u3, u2, u2} R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) M M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4 _inst_4) => M -> M) (LinearMap.hasCoeToFun.{u3, u3, u2, u2} R R M M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4 _inst_4 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3))))) f (b j)))
+but is expected to have type
+ forall {ι : Type.{u3}} [_inst_1 : Fintype.{u3} ι] {M : Type.{u1}} [_inst_2 : AddCommGroup.{u1} M] {R : Type.{u2}} [_inst_3 : CommRing.{u2} R] [_inst_4 : Module.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2)] {b : ι -> M} [_inst_5 : DecidableEq.{succ u3} ι] {A : Matrix.{u3, u3, u2} ι ι R} {f : Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4}, Iff (Matrix.Represents.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b) A f) (forall (j : ι), Eq.{succ u1} M (Finset.sum.{u1, u3} M ι (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (Finset.univ.{u3} ι _inst_1) (fun (i : ι) => HSMul.hSMul.{u2, u1, u1} R M M (instHSMul.{u2, u1} R M (SMulZeroClass.toSMul.{u2, u1} R M (NegZeroClass.toZero.{u1} M (SubNegZeroMonoid.toNegZeroClass.{u1} M (SubtractionMonoid.toSubNegZeroMonoid.{u1} M (SubtractionCommMonoid.toSubtractionMonoid.{u1} M (AddCommGroup.toDivisionAddCommMonoid.{u1} M _inst_2))))) (SMulWithZero.toSMulZeroClass.{u2, u1} R M (CommMonoidWithZero.toZero.{u2} R (CommSemiring.toCommMonoidWithZero.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (NegZeroClass.toZero.{u1} M (SubNegZeroMonoid.toNegZeroClass.{u1} M (SubtractionMonoid.toSubNegZeroMonoid.{u1} M (SubtractionCommMonoid.toSubtractionMonoid.{u1} M (AddCommGroup.toDivisionAddCommMonoid.{u1} M _inst_2))))) (MulActionWithZero.toSMulWithZero.{u2, u1} R M (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (NegZeroClass.toZero.{u1} M (SubNegZeroMonoid.toNegZeroClass.{u1} M (SubtractionMonoid.toSubNegZeroMonoid.{u1} M (SubtractionCommMonoid.toSubtractionMonoid.{u1} M (AddCommGroup.toDivisionAddCommMonoid.{u1} M _inst_2))))) (Module.toMulActionWithZero.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4))))) (A i j) (b i))) (FunLike.coe.{succ u1, succ u1, succ u1} (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6191 : M) => M) _x) (LinearMap.instFunLikeLinearMap.{u2, u2, u1, u1} R R M M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4 _inst_4 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) f (b j)))
+Case conversion may be inaccurate. Consider using '#align matrix.represents_iff' Matrix.represents_iff'ₓ'. -/
theorem Matrix.represents_iff' {A : Matrix ι ι R} {f : Module.End R M} :
A.Represents b f ↔ ∀ j, (∑ i : ι, A i j • b i) = f (b j) :=
by
@@ -122,6 +176,12 @@ theorem Matrix.represents_iff' {A : Matrix ι ι R} {f : Module.End R M} :
apply h
#align matrix.represents_iff' Matrix.represents_iff'
+/- warning: matrix.represents.mul -> Matrix.Represents.mul is a dubious translation:
+lean 3 declaration is
+ forall {ι : Type.{u1}} [_inst_1 : Fintype.{u1} ι] {M : Type.{u2}} [_inst_2 : AddCommGroup.{u2} M] {R : Type.{u3}} [_inst_3 : CommRing.{u3} R] [_inst_4 : Module.{u3, u2} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2)] {b : ι -> M} [_inst_5 : DecidableEq.{succ u1} ι] {A : Matrix.{u1, u1, u3} ι ι R} {A' : Matrix.{u1, u1, u3} ι ι R} {f : Module.End.{u3, u2} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4} {f' : Module.End.{u3, u2} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4}, (Matrix.Represents.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b) A f) -> (Matrix.Represents.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b) A' f') -> (Matrix.Represents.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b) (HMul.hMul.{max u1 u3, max u1 u3, max u1 u3} (Matrix.{u1, u1, u3} ι ι R) (Matrix.{u1, u1, u3} ι ι R) (Matrix.{u1, u1, u3} ι ι R) (instHMul.{max u1 u3} (Matrix.{u1, u1, u3} ι ι R) (Matrix.hasMul.{u3, u1} ι R _inst_1 (Distrib.toHasMul.{u3} R (Ring.toDistrib.{u3} R (CommRing.toRing.{u3} R _inst_3))) (AddCommGroup.toAddCommMonoid.{u3} R (NonUnitalNonAssocRing.toAddCommGroup.{u3} R (NonAssocRing.toNonUnitalNonAssocRing.{u3} R (Ring.toNonAssocRing.{u3} R (CommRing.toRing.{u3} R _inst_3))))))) A A') (HMul.hMul.{u2, u2, u2} (Module.End.{u3, u2} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (Module.End.{u3, u2} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (Module.End.{u3, u2} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (instHMul.{u2} (Module.End.{u3, u2} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (LinearMap.module.End.hasMul.{u3, u2} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4)) f f'))
+but is expected to have type
+ forall {ι : Type.{u3}} [_inst_1 : Fintype.{u3} ι] {M : Type.{u1}} [_inst_2 : AddCommGroup.{u1} M] {R : Type.{u2}} [_inst_3 : CommRing.{u2} R] [_inst_4 : Module.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2)] {b : ι -> M} [_inst_5 : DecidableEq.{succ u3} ι] {A : Matrix.{u3, u3, u2} ι ι R} {A' : Matrix.{u3, u3, u2} ι ι R} {f : Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4} {f' : Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4}, (Matrix.Represents.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b) A f) -> (Matrix.Represents.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b) A' f') -> (Matrix.Represents.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b) (HMul.hMul.{max u3 u2, max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Matrix.{u3, u3, u2} ι ι R) (Matrix.{u3, u3, u2} ι ι R) (instHMul.{max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Matrix.instMulMatrix.{u2, u3} ι R _inst_1 (NonUnitalNonAssocRing.toMul.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_3)))) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_3))))))) A A') (HMul.hMul.{u1, u1, u1} (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (instHMul.{u1} (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (LinearMap.instMulEnd.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4)) f f'))
+Case conversion may be inaccurate. Consider using '#align matrix.represents.mul Matrix.Represents.mulₓ'. -/
theorem Matrix.Represents.mul {A A' : Matrix ι ι R} {f f' : Module.End R M} (h : A.Represents b f)
(h' : Matrix.Represents b A' f') : (A * A').Represents b (f * f') :=
by
@@ -133,6 +193,12 @@ theorem Matrix.Represents.mul {A A' : Matrix ι ι R} {f f' : Module.End R M} (h
rfl
#align matrix.represents.mul Matrix.Represents.mul
+/- warning: matrix.represents.one -> Matrix.Represents.one is a dubious translation:
+lean 3 declaration is
+ forall {ι : Type.{u1}} [_inst_1 : Fintype.{u1} ι] {M : Type.{u2}} [_inst_2 : AddCommGroup.{u2} M] {R : Type.{u3}} [_inst_3 : CommRing.{u3} R] [_inst_4 : Module.{u3, u2} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2)] {b : ι -> M} [_inst_5 : DecidableEq.{succ u1} ι], Matrix.Represents.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b) (OfNat.ofNat.{max u1 u3} (Matrix.{u1, u1, u3} ι ι R) 1 (OfNat.mk.{max u1 u3} (Matrix.{u1, u1, u3} ι ι R) 1 (One.one.{max u1 u3} (Matrix.{u1, u1, u3} ι ι R) (Matrix.hasOne.{u3, u1} ι R (fun (a : ι) (b : ι) => _inst_5 a b) (MulZeroClass.toHasZero.{u3} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u3} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u3} R (NonAssocRing.toNonUnitalNonAssocRing.{u3} R (Ring.toNonAssocRing.{u3} R (CommRing.toRing.{u3} R _inst_3)))))) (AddMonoidWithOne.toOne.{u3} R (AddGroupWithOne.toAddMonoidWithOne.{u3} R (AddCommGroupWithOne.toAddGroupWithOne.{u3} R (Ring.toAddCommGroupWithOne.{u3} R (CommRing.toRing.{u3} R _inst_3))))))))) (OfNat.ofNat.{u2} (Module.End.{u3, u2} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) 1 (OfNat.mk.{u2} (Module.End.{u3, u2} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) 1 (One.one.{u2} (Module.End.{u3, u2} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (LinearMap.module.End.hasOne.{u3, u2} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4))))
+but is expected to have type
+ forall {ι : Type.{u3}} [_inst_1 : Fintype.{u3} ι] {M : Type.{u2}} [_inst_2 : AddCommGroup.{u2} M] {R : Type.{u1}} [_inst_3 : CommRing.{u1} R] [_inst_4 : Module.{u1, u2} R M (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2)] {b : ι -> M} [_inst_5 : DecidableEq.{succ u3} ι], Matrix.Represents.{u3, u2, u1} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b) (OfNat.ofNat.{max u3 u1} (Matrix.{u3, u3, u1} ι ι R) 1 (One.toOfNat1.{max u3 u1} (Matrix.{u3, u3, u1} ι ι R) (Matrix.one.{u1, u3} ι R (fun (a : ι) (b : ι) => _inst_5 a b) (CommMonoidWithZero.toZero.{u1} R (CommSemiring.toCommMonoidWithZero.{u1} R (CommRing.toCommSemiring.{u1} R _inst_3))) (Semiring.toOne.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_3)))))) (OfNat.ofNat.{u2} (Module.End.{u1, u2} R M (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) 1 (One.toOfNat1.{u2} (Module.End.{u1, u2} R M (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (LinearMap.instOneEnd.{u1, u2} R M (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4)))
+Case conversion may be inaccurate. Consider using '#align matrix.represents.one Matrix.Represents.oneₓ'. -/
theorem Matrix.Represents.one : (1 : Matrix ι ι R).Represents b 1 :=
by
delta Matrix.Represents PiToModule.fromMatrix
@@ -141,20 +207,44 @@ theorem Matrix.Represents.one : (1 : Matrix ι ι R).Represents b 1 :=
rfl
#align matrix.represents.one Matrix.Represents.one
+/- warning: matrix.represents.add -> Matrix.Represents.add is a dubious translation:
+lean 3 declaration is
+ forall {ι : Type.{u1}} [_inst_1 : Fintype.{u1} ι] {M : Type.{u2}} [_inst_2 : AddCommGroup.{u2} M] {R : Type.{u3}} [_inst_3 : CommRing.{u3} R] [_inst_4 : Module.{u3, u2} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2)] {b : ι -> M} [_inst_5 : DecidableEq.{succ u1} ι] {A : Matrix.{u1, u1, u3} ι ι R} {A' : Matrix.{u1, u1, u3} ι ι R} {f : Module.End.{u3, u2} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4} {f' : Module.End.{u3, u2} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4}, (Matrix.Represents.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b) A f) -> (Matrix.Represents.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b) A' f') -> (Matrix.Represents.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b) (HAdd.hAdd.{max u1 u3, max u1 u3, max u1 u3} (Matrix.{u1, u1, u3} ι ι R) (Matrix.{u1, u1, u3} ι ι R) (Matrix.{u1, u1, u3} ι ι R) (instHAdd.{max u1 u3} (Matrix.{u1, u1, u3} ι ι R) (Matrix.hasAdd.{u3, u1, u1} ι ι R (Distrib.toHasAdd.{u3} R (Ring.toDistrib.{u3} R (CommRing.toRing.{u3} R _inst_3))))) A A') (HAdd.hAdd.{u2, u2, u2} (Module.End.{u3, u2} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (Module.End.{u3, u2} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (Module.End.{u3, u2} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (instHAdd.{u2} (Module.End.{u3, u2} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (LinearMap.hasAdd.{u3, u3, u2, u2} R R M M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4 _inst_4 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))))) f f'))
+but is expected to have type
+ forall {ι : Type.{u3}} [_inst_1 : Fintype.{u3} ι] {M : Type.{u1}} [_inst_2 : AddCommGroup.{u1} M] {R : Type.{u2}} [_inst_3 : CommRing.{u2} R] [_inst_4 : Module.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2)] {b : ι -> M} [_inst_5 : DecidableEq.{succ u3} ι] {A : Matrix.{u3, u3, u2} ι ι R} {A' : Matrix.{u3, u3, u2} ι ι R} {f : Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4} {f' : Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4}, (Matrix.Represents.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b) A f) -> (Matrix.Represents.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b) A' f') -> (Matrix.Represents.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b) (HAdd.hAdd.{max u3 u2, max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Matrix.{u3, u3, u2} ι ι R) (Matrix.{u3, u3, u2} ι ι R) (instHAdd.{max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Matrix.add.{u2, u3, u3} ι ι R (Distrib.toAdd.{u2} R (NonUnitalNonAssocSemiring.toDistrib.{u2} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u2} R (NonAssocRing.toNonUnitalNonAssocRing.{u2} R (Ring.toNonAssocRing.{u2} R (CommRing.toRing.{u2} R _inst_3)))))))) A A') (HAdd.hAdd.{u1, u1, u1} (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (instHAdd.{u1} (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (LinearMap.instAddLinearMap.{u2, u2, u1, u1} R R M M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4 _inst_4 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))))) f f'))
+Case conversion may be inaccurate. Consider using '#align matrix.represents.add Matrix.Represents.addₓ'. -/
theorem Matrix.Represents.add {A A' : Matrix ι ι R} {f f' : Module.End R M} (h : A.Represents b f)
(h' : Matrix.Represents b A' f') : (A + A').Represents b (f + f') := by
delta Matrix.Represents at h h'⊢; rw [map_add, map_add, h, h']
#align matrix.represents.add Matrix.Represents.add
+/- warning: matrix.represents.zero -> Matrix.Represents.zero is a dubious translation:
+lean 3 declaration is
+ forall {ι : Type.{u1}} [_inst_1 : Fintype.{u1} ι] {M : Type.{u2}} [_inst_2 : AddCommGroup.{u2} M] {R : Type.{u3}} [_inst_3 : CommRing.{u3} R] [_inst_4 : Module.{u3, u2} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2)] {b : ι -> M} [_inst_5 : DecidableEq.{succ u1} ι], Matrix.Represents.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b) (OfNat.ofNat.{max u1 u3} (Matrix.{u1, u1, u3} ι ι R) 0 (OfNat.mk.{max u1 u3} (Matrix.{u1, u1, u3} ι ι R) 0 (Zero.zero.{max u1 u3} (Matrix.{u1, u1, u3} ι ι R) (Matrix.hasZero.{u3, u1, u1} ι ι R (MulZeroClass.toHasZero.{u3} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u3} R (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u3} R (NonAssocRing.toNonUnitalNonAssocRing.{u3} R (Ring.toNonAssocRing.{u3} R (CommRing.toRing.{u3} R _inst_3)))))))))) (OfNat.ofNat.{u2} (Module.End.{u3, u2} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) 0 (OfNat.mk.{u2} (Module.End.{u3, u2} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) 0 (Zero.zero.{u2} (Module.End.{u3, u2} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (LinearMap.hasZero.{u3, u3, u2, u2} R R M M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4 _inst_4 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3))))))))
+but is expected to have type
+ forall {ι : Type.{u3}} [_inst_1 : Fintype.{u3} ι] {M : Type.{u2}} [_inst_2 : AddCommGroup.{u2} M] {R : Type.{u1}} [_inst_3 : CommRing.{u1} R] [_inst_4 : Module.{u1, u2} R M (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2)] {b : ι -> M} [_inst_5 : DecidableEq.{succ u3} ι], Matrix.Represents.{u3, u2, u1} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b) (OfNat.ofNat.{max u3 u1} (Matrix.{u3, u3, u1} ι ι R) 0 (Zero.toOfNat0.{max u3 u1} (Matrix.{u3, u3, u1} ι ι R) (Matrix.zero.{u1, u3, u3} ι ι R (CommMonoidWithZero.toZero.{u1} R (CommSemiring.toCommMonoidWithZero.{u1} R (CommRing.toCommSemiring.{u1} R _inst_3)))))) (OfNat.ofNat.{u2} (Module.End.{u1, u2} R M (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) 0 (Zero.toOfNat0.{u2} (Module.End.{u1, u2} R M (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (LinearMap.instZeroLinearMap.{u1, u1, u2, u2} R R M M (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_3)) (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4 _inst_4 (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R (CommRing.toCommSemiring.{u1} R _inst_3)))))))
+Case conversion may be inaccurate. Consider using '#align matrix.represents.zero Matrix.Represents.zeroₓ'. -/
theorem Matrix.Represents.zero : (0 : Matrix ι ι R).Represents b 0 := by delta Matrix.Represents;
rw [map_zero, map_zero]
#align matrix.represents.zero Matrix.Represents.zero
+/- warning: matrix.represents.smul -> Matrix.Represents.smul is a dubious translation:
+lean 3 declaration is
+ forall {ι : Type.{u1}} [_inst_1 : Fintype.{u1} ι] {M : Type.{u2}} [_inst_2 : AddCommGroup.{u2} M] {R : Type.{u3}} [_inst_3 : CommRing.{u3} R] [_inst_4 : Module.{u3, u2} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2)] {b : ι -> M} [_inst_5 : DecidableEq.{succ u1} ι] {A : Matrix.{u1, u1, u3} ι ι R} {f : Module.End.{u3, u2} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4}, (Matrix.Represents.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b) A f) -> (forall (r : R), Matrix.Represents.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b) (SMul.smul.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (Matrix.hasSmul.{u3, u1, u1, u3} ι ι R R (Mul.toSMul.{u3} R (Distrib.toHasMul.{u3} R (Ring.toDistrib.{u3} R (CommRing.toRing.{u3} R _inst_3))))) r A) (SMul.smul.{u3, u2} R (Module.End.{u3, u2} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (LinearMap.hasSmul.{u3, u3, u3, u2, u2} R R R M M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4 _inst_4 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) (Ring.toMonoid.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Module.toDistribMulAction.{u3, u2} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (smulCommClass_self.{u3, u2} R M (CommRing.toCommMonoid.{u3} R _inst_3) (MulActionWithZero.toMulAction.{u3, u2} R M (Semiring.toMonoidWithZero.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3))) (AddZeroClass.toHasZero.{u2} M (AddMonoid.toAddZeroClass.{u2} M (AddCommMonoid.toAddMonoid.{u2} M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2)))) (Module.toMulActionWithZero.{u3, u2} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4)))) r f))
+but is expected to have type
+ forall {ι : Type.{u3}} [_inst_1 : Fintype.{u3} ι] {M : Type.{u1}} [_inst_2 : AddCommGroup.{u1} M] {R : Type.{u2}} [_inst_3 : CommRing.{u2} R] [_inst_4 : Module.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2)] {b : ι -> M} [_inst_5 : DecidableEq.{succ u3} ι] {A : Matrix.{u3, u3, u2} ι ι R} {f : Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4}, (Matrix.Represents.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b) A f) -> (forall (r : R), Matrix.Represents.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b) (HSMul.hSMul.{u2, max u3 u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (Matrix.{u3, u3, u2} ι ι R) (instHSMul.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (Matrix.smul.{u2, u3, u3, u2} ι ι R R (Algebra.toSMul.{u2, u2} R R (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) r A) (HSMul.hSMul.{u2, u1, u1} R (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (instHSMul.{u2, u1} R (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (LinearMap.instSMulLinearMap.{u2, u2, u2, u1, u1} R R R M M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4 _inst_4 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Module.toDistribMulAction.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (smulCommClass_self.{u2, u1} R M (CommRing.toCommMonoid.{u2} R _inst_3) (MulActionWithZero.toMulAction.{u2, u1} R M (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (NegZeroClass.toZero.{u1} M (SubNegZeroMonoid.toNegZeroClass.{u1} M (SubtractionMonoid.toSubNegZeroMonoid.{u1} M (SubtractionCommMonoid.toSubtractionMonoid.{u1} M (AddCommGroup.toDivisionAddCommMonoid.{u1} M _inst_2))))) (Module.toMulActionWithZero.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4))))) r f))
+Case conversion may be inaccurate. Consider using '#align matrix.represents.smul Matrix.Represents.smulₓ'. -/
theorem Matrix.Represents.smul {A : Matrix ι ι R} {f : Module.End R M} (h : A.Represents b f)
(r : R) : (r • A).Represents b (r • f) := by delta Matrix.Represents at h⊢;
rw [map_smul, map_smul, h]
#align matrix.represents.smul Matrix.Represents.smul
+/- warning: matrix.represents.eq -> Matrix.Represents.eq is a dubious translation:
+lean 3 declaration is
+ forall {ι : Type.{u1}} [_inst_1 : Fintype.{u1} ι] {M : Type.{u2}} [_inst_2 : AddCommGroup.{u2} M] {R : Type.{u3}} [_inst_3 : CommRing.{u3} R] [_inst_4 : Module.{u3, u2} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2)] {b : ι -> M}, (Eq.{succ u2} (Submodule.{u3, u2} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (Submodule.span.{u3, u2} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4 (Set.range.{u2, succ u1} M ι b)) (Top.top.{u2} (Submodule.{u3, u2} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (Submodule.hasTop.{u3, u2} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4))) -> (forall [_inst_5 : DecidableEq.{succ u1} ι] {A : Matrix.{u1, u1, u3} ι ι R} {f : Module.End.{u3, u2} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4} {f' : Module.End.{u3, u2} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4}, (Matrix.Represents.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b) A f) -> (Matrix.Represents.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b) A f') -> (Eq.{succ u2} (Module.End.{u3, u2} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) f f'))
+but is expected to have type
+ forall {ι : Type.{u3}} [_inst_1 : Fintype.{u3} ι] {M : Type.{u1}} [_inst_2 : AddCommGroup.{u1} M] {R : Type.{u2}} [_inst_3 : CommRing.{u2} R] [_inst_4 : Module.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2)] {b : ι -> M}, (Eq.{succ u1} (Submodule.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (Submodule.span.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4 (Set.range.{u1, succ u3} M ι b)) (Top.top.{u1} (Submodule.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (Submodule.instTopSubmodule.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4))) -> (forall [_inst_5 : DecidableEq.{succ u3} ι] {A : Matrix.{u3, u3, u2} ι ι R} {f : Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4} {f' : Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4}, (Matrix.Represents.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b) A f) -> (Matrix.Represents.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b) A f') -> (Eq.{succ u1} (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) f f'))
+Case conversion may be inaccurate. Consider using '#align matrix.represents.eq Matrix.Represents.eqₓ'. -/
theorem Matrix.Represents.eq {A : Matrix ι ι R} {f f' : Module.End R M} (h : A.Represents b f)
(h' : A.Represents b f') : f = f' :=
PiToModule.fromEnd_injective R b hb (h.symm.trans h')
@@ -162,6 +252,12 @@ theorem Matrix.Represents.eq {A : Matrix ι ι R} {f f' : Module.End R M} (h : A
variable (b R)
+/- warning: matrix.is_representation -> Matrix.isRepresentation is a dubious translation:
+lean 3 declaration is
+ forall {ι : Type.{u1}} [_inst_1 : Fintype.{u1} ι] {M : Type.{u2}} [_inst_2 : AddCommGroup.{u2} M] (R : Type.{u3}) [_inst_3 : CommRing.{u3} R] [_inst_4 : Module.{u3, u2} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2)], (ι -> M) -> (forall [_inst_5 : DecidableEq.{succ u1} ι], Subalgebra.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.algebra.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))))
+but is expected to have type
+ forall {ι : Type.{u1}} [_inst_1 : Fintype.{u1} ι] {M : Type.{u2}} [_inst_2 : AddCommGroup.{u2} M] (R : Type.{u3}) [_inst_3 : CommRing.{u3} R] [_inst_4 : Module.{u3, u2} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2)], (ι -> M) -> (forall [_inst_5 : DecidableEq.{succ u1} ι], Subalgebra.{u3, max u3 u1} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))))
+Case conversion may be inaccurate. Consider using '#align matrix.is_representation Matrix.isRepresentationₓ'. -/
/-- The subalgebra of `matrix ι ι R` that consists of matrices that actually represent
endomorphisms on `M`. -/
def Matrix.isRepresentation : Subalgebra R (Matrix ι ι R)
@@ -174,6 +270,12 @@ def Matrix.isRepresentation : Subalgebra R (Matrix ι ι R)
algebraMap_mem' r := ⟨r • 1, Matrix.Represents.one.smul r⟩
#align matrix.is_representation Matrix.isRepresentation
+/- warning: matrix.is_representation.to_End -> Matrix.isRepresentation.toEnd is a dubious translation:
+lean 3 declaration is
+ forall {ι : Type.{u1}} [_inst_1 : Fintype.{u1} ι] {M : Type.{u2}} [_inst_2 : AddCommGroup.{u2} M] (R : Type.{u3}) [_inst_3 : CommRing.{u3} R] [_inst_4 : Module.{u3, u2} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2)] (b : ι -> M), (Eq.{succ u2} (Submodule.{u3, u2} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (Submodule.span.{u3, u2} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4 (Set.range.{u2, succ u1} M ι b)) (Top.top.{u2} (Submodule.{u3, u2} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (Submodule.hasTop.{u3, u2} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4))) -> (forall [_inst_5 : DecidableEq.{succ u1} ι], AlgHom.{u3, max u1 u3, u2} R (coeSort.{succ (max u1 u3), succ (succ (max u1 u3))} (Subalgebra.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b)) (Matrix.algebra.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b) (CommRing.toCommSemiring.{u3} R _inst_3) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) Type.{max u1 u3} (SetLike.hasCoeToSort.{max u1 u3, max u1 u3} (Subalgebra.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b)) (Matrix.algebra.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b) (CommRing.toCommSemiring.{u3} R _inst_3) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.setLike.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b)) (Matrix.algebra.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b) (CommRing.toCommSemiring.{u3} R _inst_3) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))))) (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))) (Module.End.{u3, u2} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (CommRing.toCommSemiring.{u3} R _inst_3) (Subalgebra.toSemiring.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b)) (Matrix.algebra.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b) (CommRing.toCommSemiring.{u3} R _inst_3) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))) (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))) (Module.End.semiring.{u3, u2} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (Subalgebra.algebra.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b)) (Matrix.algebra.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b) (CommRing.toCommSemiring.{u3} R _inst_3) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))) (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))) (Module.End.algebra.{u3, u2} R M (CommRing.toCommSemiring.{u3} R _inst_3) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4))
+but is expected to have type
+ forall {ι : Type.{u1}} [_inst_1 : Fintype.{u1} ι] {M : Type.{u2}} [_inst_2 : AddCommGroup.{u2} M] (R : Type.{u3}) [_inst_3 : CommRing.{u3} R] [_inst_4 : Module.{u3, u2} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2)] (b : ι -> M), (Eq.{succ u2} (Submodule.{u3, u2} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (Submodule.span.{u3, u2} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4 (Set.range.{u2, succ u1} M ι b)) (Top.top.{u2} (Submodule.{u3, u2} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (Submodule.instTopSubmodule.{u3, u2} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4))) -> (forall [_inst_5 : DecidableEq.{succ u1} ι], AlgHom.{u3, max u1 u3, u2} R (Subtype.{succ (max u1 u3)} (Matrix.{u1, u1, u3} ι ι R) (fun (x : Matrix.{u1, u1, u3} ι ι R) => Membership.mem.{max u1 u3, max u1 u3} (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.{u3, max u3 u1} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (SetLike.instMembership.{max u1 u3, max u1 u3} (Subalgebra.{u3, max u3 u1} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))))) x (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (Module.End.{u3, u2} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (CommRing.toCommSemiring.{u3} R _inst_3) (Subalgebra.toSemiring.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))) (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))) (Module.End.semiring.{u3, u2} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (Subalgebra.instAlgebraSubtypeMemSubalgebraInstMembershipInstSetLikeSubalgebraToSemiring.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))) (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))) (Module.instAlgebraEndToSemiringSemiring.{u3, u2} R M (CommRing.toCommSemiring.{u3} R _inst_3) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4))
+Case conversion may be inaccurate. Consider using '#align matrix.is_representation.to_End Matrix.isRepresentation.toEndₓ'. -/
/-- The map sending a matrix to the endomorphism it represents. This is an `R`-algebra morphism. -/
noncomputable def Matrix.isRepresentation.toEnd : Matrix.isRepresentation R b →ₐ[R] Module.End R M
where
@@ -186,17 +288,35 @@ noncomputable def Matrix.isRepresentation.toEnd : Matrix.isRepresentation R b
(r • 1 : Matrix.isRepresentation R b).2.choose_spec.Eq hb (Matrix.Represents.one.smul r)
#align matrix.is_representation.to_End Matrix.isRepresentation.toEnd
+/- warning: matrix.is_representation.to_End_represents -> Matrix.isRepresentation.toEnd_represents is a dubious translation:
+lean 3 declaration is
+ forall {ι : Type.{u1}} [_inst_1 : Fintype.{u1} ι] {M : Type.{u2}} [_inst_2 : AddCommGroup.{u2} M] (R : Type.{u3}) [_inst_3 : CommRing.{u3} R] [_inst_4 : Module.{u3, u2} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2)] (b : ι -> M) (hb : Eq.{succ u2} (Submodule.{u3, u2} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (Submodule.span.{u3, u2} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4 (Set.range.{u2, succ u1} M ι b)) (Top.top.{u2} (Submodule.{u3, u2} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (Submodule.hasTop.{u3, u2} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4))) [_inst_5 : DecidableEq.{succ u1} ι] (A : coeSort.{succ (max u1 u3), succ (succ (max u1 u3))} (Subalgebra.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.algebra.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) Type.{max u1 u3} (SetLike.hasCoeToSort.{max u1 u3, max u1 u3} (Subalgebra.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.algebra.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.setLike.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.algebra.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))))) (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))), Matrix.Represents.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b) ((fun (a : Type.{max u1 u3}) (b : Type.{max u1 u3}) [self : HasLiftT.{succ (max u1 u3), succ (max u1 u3)} a b] => self.0) (coeSort.{succ (max u1 u3), succ (succ (max u1 u3))} (Subalgebra.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.algebra.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) Type.{max u1 u3} (SetLike.hasCoeToSort.{max u1 u3, max u1 u3} (Subalgebra.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.algebra.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.setLike.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.algebra.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))))) (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))) (Matrix.{u1, u1, u3} ι ι R) (HasLiftT.mk.{succ (max u1 u3), succ (max u1 u3)} (coeSort.{succ (max u1 u3), succ (succ (max u1 u3))} (Subalgebra.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.algebra.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) Type.{max u1 u3} (SetLike.hasCoeToSort.{max u1 u3, max u1 u3} (Subalgebra.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.algebra.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.setLike.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.algebra.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))))) (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))) (Matrix.{u1, u1, u3} ι ι R) (CoeTCₓ.coe.{succ (max u1 u3), succ (max u1 u3)} (coeSort.{succ (max u1 u3), succ (succ (max u1 u3))} (Subalgebra.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.algebra.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) Type.{max u1 u3} (SetLike.hasCoeToSort.{max u1 u3, max u1 u3} (Subalgebra.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.algebra.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.setLike.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.algebra.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))))) (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))) (Matrix.{u1, u1, u3} ι ι R) (coeBase.{succ (max u1 u3), succ (max u1 u3)} (coeSort.{succ (max u1 u3), succ (succ (max u1 u3))} (Subalgebra.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.algebra.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) Type.{max u1 u3} (SetLike.hasCoeToSort.{max u1 u3, max u1 u3} (Subalgebra.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.algebra.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.setLike.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.algebra.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))))) (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))) (Matrix.{u1, u1, u3} ι ι R) (coeSubtype.{succ (max u1 u3)} (Matrix.{u1, u1, u3} ι ι R) (fun (x : Matrix.{u1, u1, u3} ι ι R) => Membership.Mem.{max u1 u3, max u1 u3} (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.algebra.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (SetLike.hasMem.{max u1 u3, max u1 u3} (Subalgebra.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.algebra.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.setLike.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.algebra.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))))) x (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))))))) A) (coeFn.{max (succ (max u1 u3)) (succ u2), max (succ (max u1 u3)) (succ u2)} (AlgHom.{u3, max u1 u3, u2} R (coeSort.{succ (max u1 u3), succ (succ (max u1 u3))} (Subalgebra.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b)) (Matrix.algebra.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b) (CommRing.toCommSemiring.{u3} R _inst_3) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) Type.{max u1 u3} (SetLike.hasCoeToSort.{max u1 u3, max u1 u3} (Subalgebra.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b)) (Matrix.algebra.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b) (CommRing.toCommSemiring.{u3} R _inst_3) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.setLike.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b)) (Matrix.algebra.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b) (CommRing.toCommSemiring.{u3} R _inst_3) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))))) (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))) (Module.End.{u3, u2} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (CommRing.toCommSemiring.{u3} R _inst_3) (Subalgebra.toSemiring.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b)) (Matrix.algebra.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b) (CommRing.toCommSemiring.{u3} R _inst_3) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))) (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))) (Module.End.semiring.{u3, u2} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (Subalgebra.algebra.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b)) (Matrix.algebra.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b) (CommRing.toCommSemiring.{u3} R _inst_3) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))) (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))) (Module.End.algebra.{u3, u2} R M (CommRing.toCommSemiring.{u3} R _inst_3) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4)) (fun (_x : AlgHom.{u3, max u1 u3, u2} R (coeSort.{succ (max u1 u3), succ (succ (max u1 u3))} (Subalgebra.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b)) (Matrix.algebra.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b) (CommRing.toCommSemiring.{u3} R _inst_3) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) Type.{max u1 u3} (SetLike.hasCoeToSort.{max u1 u3, max u1 u3} (Subalgebra.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b)) (Matrix.algebra.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b) (CommRing.toCommSemiring.{u3} R _inst_3) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.setLike.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b)) (Matrix.algebra.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b) (CommRing.toCommSemiring.{u3} R _inst_3) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))))) (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))) (Module.End.{u3, u2} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (CommRing.toCommSemiring.{u3} R _inst_3) (Subalgebra.toSemiring.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b)) (Matrix.algebra.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b) (CommRing.toCommSemiring.{u3} R _inst_3) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))) (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))) (Module.End.semiring.{u3, u2} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (Subalgebra.algebra.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b)) (Matrix.algebra.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b) (CommRing.toCommSemiring.{u3} R _inst_3) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))) (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))) (Module.End.algebra.{u3, u2} R M (CommRing.toCommSemiring.{u3} R _inst_3) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4)) => (coeSort.{succ (max u1 u3), succ (succ (max u1 u3))} (Subalgebra.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b)) (Matrix.algebra.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b) (CommRing.toCommSemiring.{u3} R _inst_3) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) Type.{max u1 u3} (SetLike.hasCoeToSort.{max u1 u3, max u1 u3} (Subalgebra.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b)) (Matrix.algebra.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b) (CommRing.toCommSemiring.{u3} R _inst_3) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.setLike.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b)) (Matrix.algebra.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b) (CommRing.toCommSemiring.{u3} R _inst_3) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))))) (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))) -> (Module.End.{u3, u2} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4)) ([anonymous].{u3, max u1 u3, u2} R (coeSort.{succ (max u1 u3), succ (succ (max u1 u3))} (Subalgebra.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b)) (Matrix.algebra.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b) (CommRing.toCommSemiring.{u3} R _inst_3) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) Type.{max u1 u3} (SetLike.hasCoeToSort.{max u1 u3, max u1 u3} (Subalgebra.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b)) (Matrix.algebra.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b) (CommRing.toCommSemiring.{u3} R _inst_3) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.setLike.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b)) (Matrix.algebra.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b) (CommRing.toCommSemiring.{u3} R _inst_3) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))))) (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))) (Module.End.{u3, u2} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (CommRing.toCommSemiring.{u3} R _inst_3) (Subalgebra.toSemiring.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b)) (Matrix.algebra.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b) (CommRing.toCommSemiring.{u3} R _inst_3) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))) (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))) (Module.End.semiring.{u3, u2} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (Subalgebra.algebra.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b)) (Matrix.algebra.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b) (CommRing.toCommSemiring.{u3} R _inst_3) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))) (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))) (Module.End.algebra.{u3, u2} R M (CommRing.toCommSemiring.{u3} R _inst_3) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4)) (Matrix.isRepresentation.toEnd.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b hb (fun (a : ι) (b : ι) => _inst_5 a b)) A)
+but is expected to have type
+ forall {ι : Type.{u3}} [_inst_1 : Fintype.{u3} ι] {M : Type.{u1}} [_inst_2 : AddCommGroup.{u1} M] (R : Type.{u2}) [_inst_3 : CommRing.{u2} R] [_inst_4 : Module.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2)] (b : ι -> M) (hb : Eq.{succ u1} (Submodule.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (Submodule.span.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4 (Set.range.{u1, succ u3} M ι b)) (Top.top.{u1} (Submodule.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (Submodule.instTopSubmodule.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4))) [_inst_5 : DecidableEq.{succ u3} ι] (A : Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))), Matrix.Represents.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b) (Subtype.val.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Set.{max u3 u2} (Matrix.{u3, u3, u2} ι ι R)) (Set.instMembershipSet.{max u3 u2} (Matrix.{u3, u3, u2} ι ι R)) x (SetLike.coe.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) A) (FunLike.coe.{max (max (succ u3) (succ u1)) (succ u2), max (succ u3) (succ u2), succ u1} (AlgHom.{u2, max u3 u2, u1} R (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (CommRing.toCommSemiring.{u2} R _inst_3) (Subalgebra.toSemiring.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))) (Module.End.semiring.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (Subalgebra.instAlgebraSubtypeMemSubalgebraInstMembershipInstSetLikeSubalgebraToSemiring.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))) (Module.instAlgebraEndToSemiringSemiring.{u2, u1} R M (CommRing.toCommSemiring.{u2} R _inst_3) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4)) (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (fun (_x : Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) => Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) _x) (SMulHomClass.toFunLike.{max (max u3 u1) u2, u2, max u3 u2, u1} (AlgHom.{u2, max u3 u2, u1} R (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (CommRing.toCommSemiring.{u2} R _inst_3) (Subalgebra.toSemiring.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))) (Module.End.semiring.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (Subalgebra.instAlgebraSubtypeMemSubalgebraInstMembershipInstSetLikeSubalgebraToSemiring.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))) (Module.instAlgebraEndToSemiringSemiring.{u2, u1} R M (CommRing.toCommSemiring.{u2} R _inst_3) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4)) R (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (SMulZeroClass.toSMul.{u2, max u3 u2} R (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (AddMonoid.toZero.{max u3 u2} (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (AddCommMonoid.toAddMonoid.{max u3 u2} (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (NonUnitalNonAssocSemiring.toAddCommMonoid.{max u3 u2} (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{max u3 u2} (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (Semiring.toNonAssocSemiring.{max u3 u2} (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (Subalgebra.toSemiring.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))))))) (DistribSMul.toSMulZeroClass.{u2, max u3 u2} R (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (AddMonoid.toAddZeroClass.{max u3 u2} (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (AddCommMonoid.toAddMonoid.{max u3 u2} (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (NonUnitalNonAssocSemiring.toAddCommMonoid.{max u3 u2} (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{max u3 u2} (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (Semiring.toNonAssocSemiring.{max u3 u2} (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (Subalgebra.toSemiring.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))))))) (DistribMulAction.toDistribSMul.{u2, max u3 u2} R (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (AddCommMonoid.toAddMonoid.{max u3 u2} (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (NonUnitalNonAssocSemiring.toAddCommMonoid.{max u3 u2} (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{max u3 u2} (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (Semiring.toNonAssocSemiring.{max u3 u2} (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (Subalgebra.toSemiring.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))))))) (Module.toDistribMulAction.{u2, max u3 u2} R (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{max u3 u2} (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{max u3 u2} (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (Semiring.toNonAssocSemiring.{max u3 u2} (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (Subalgebra.toSemiring.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))))) (Algebra.toModule.{u2, max u3 u2} R (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (CommRing.toCommSemiring.{u2} R _inst_3) (Subalgebra.toSemiring.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))) (Subalgebra.instAlgebraSubtypeMemSubalgebraInstMembershipInstSetLikeSubalgebraToSemiring.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))))))) (SMulZeroClass.toSMul.{u2, u1} R (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (AddMonoid.toZero.{u1} (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (AddCommMonoid.toAddMonoid.{u1} (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (Semiring.toNonAssocSemiring.{u1} (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (Module.End.semiring.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4)))))) (DistribSMul.toSMulZeroClass.{u2, u1} R (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (AddMonoid.toAddZeroClass.{u1} (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (AddCommMonoid.toAddMonoid.{u1} (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (Semiring.toNonAssocSemiring.{u1} (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (Module.End.semiring.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4)))))) (DistribMulAction.toDistribSMul.{u2, u1} R (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (AddCommMonoid.toAddMonoid.{u1} (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (Semiring.toNonAssocSemiring.{u1} (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (Module.End.semiring.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4))))) (Module.toDistribMulAction.{u2, u1} R (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (Semiring.toNonAssocSemiring.{u1} (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (Module.End.semiring.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4)))) (Algebra.toModule.{u2, u1} R (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (CommRing.toCommSemiring.{u2} R _inst_3) (Module.End.semiring.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (Module.instAlgebraEndToSemiringSemiring.{u2, u1} R M (CommRing.toCommSemiring.{u2} R _inst_3) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4)))))) (DistribMulActionHomClass.toSMulHomClass.{max (max u3 u1) u2, u2, max u3 u2, u1} (AlgHom.{u2, max u3 u2, u1} R (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (CommRing.toCommSemiring.{u2} R _inst_3) (Subalgebra.toSemiring.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))) (Module.End.semiring.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (Subalgebra.instAlgebraSubtypeMemSubalgebraInstMembershipInstSetLikeSubalgebraToSemiring.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))) (Module.instAlgebraEndToSemiringSemiring.{u2, u1} R M (CommRing.toCommSemiring.{u2} R _inst_3) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4)) R (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (AddCommMonoid.toAddMonoid.{max u3 u2} (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (NonUnitalNonAssocSemiring.toAddCommMonoid.{max u3 u2} (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{max u3 u2} (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (Semiring.toNonAssocSemiring.{max u3 u2} (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (Subalgebra.toSemiring.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))))))) (AddCommMonoid.toAddMonoid.{u1} (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (Semiring.toNonAssocSemiring.{u1} (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (Module.End.semiring.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4))))) (Module.toDistribMulAction.{u2, max u3 u2} R (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{max u3 u2} (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{max u3 u2} (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (Semiring.toNonAssocSemiring.{max u3 u2} (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (Subalgebra.toSemiring.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))))) (Algebra.toModule.{u2, max u3 u2} R (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (CommRing.toCommSemiring.{u2} R _inst_3) (Subalgebra.toSemiring.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))) (Subalgebra.instAlgebraSubtypeMemSubalgebraInstMembershipInstSetLikeSubalgebraToSemiring.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))))) (Module.toDistribMulAction.{u2, u1} R (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (Semiring.toNonAssocSemiring.{u1} (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (Module.End.semiring.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4)))) (Algebra.toModule.{u2, u1} R (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (CommRing.toCommSemiring.{u2} R _inst_3) (Module.End.semiring.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (Module.instAlgebraEndToSemiringSemiring.{u2, u1} R M (CommRing.toCommSemiring.{u2} R _inst_3) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4))) (NonUnitalAlgHomClass.toDistribMulActionHomClass.{max (max u3 u1) u2, u2, max u3 u2, u1} (AlgHom.{u2, max u3 u2, u1} R (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (CommRing.toCommSemiring.{u2} R _inst_3) (Subalgebra.toSemiring.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))) (Module.End.semiring.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (Subalgebra.instAlgebraSubtypeMemSubalgebraInstMembershipInstSetLikeSubalgebraToSemiring.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))) (Module.instAlgebraEndToSemiringSemiring.{u2, u1} R M (CommRing.toCommSemiring.{u2} R _inst_3) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4)) R (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{max u3 u2} (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (Semiring.toNonAssocSemiring.{max u3 u2} (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (Subalgebra.toSemiring.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))))) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (Semiring.toNonAssocSemiring.{u1} (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (Module.End.semiring.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4))) (Module.toDistribMulAction.{u2, max u3 u2} R (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{max u3 u2} (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{max u3 u2} (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (Semiring.toNonAssocSemiring.{max u3 u2} (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (Subalgebra.toSemiring.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))))) (Algebra.toModule.{u2, max u3 u2} R (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (CommRing.toCommSemiring.{u2} R _inst_3) (Subalgebra.toSemiring.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))) (Subalgebra.instAlgebraSubtypeMemSubalgebraInstMembershipInstSetLikeSubalgebraToSemiring.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))))) (Module.toDistribMulAction.{u2, u1} R (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (Semiring.toNonAssocSemiring.{u1} (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (Module.End.semiring.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4)))) (Algebra.toModule.{u2, u1} R (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (CommRing.toCommSemiring.{u2} R _inst_3) (Module.End.semiring.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (Module.instAlgebraEndToSemiringSemiring.{u2, u1} R M (CommRing.toCommSemiring.{u2} R _inst_3) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4))) (AlgHom.instNonUnitalAlgHomClassToMonoidToMonoidWithZeroToSemiringToNonUnitalNonAssocSemiringToNonAssocSemiringToNonUnitalNonAssocSemiringToNonAssocSemiringToDistribMulActionToAddCommMonoidToModuleToDistribMulActionToAddCommMonoidToModule.{u2, max u3 u2, u1, max (max u3 u1) u2} R (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (CommRing.toCommSemiring.{u2} R _inst_3) (Subalgebra.toSemiring.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))) (Module.End.semiring.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (Subalgebra.instAlgebraSubtypeMemSubalgebraInstMembershipInstSetLikeSubalgebraToSemiring.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))) (Module.instAlgebraEndToSemiringSemiring.{u2, u1} R M (CommRing.toCommSemiring.{u2} R _inst_3) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (AlgHom.{u2, max u3 u2, u1} R (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (CommRing.toCommSemiring.{u2} R _inst_3) (Subalgebra.toSemiring.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))) (Module.End.semiring.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (Subalgebra.instAlgebraSubtypeMemSubalgebraInstMembershipInstSetLikeSubalgebraToSemiring.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))) (Module.instAlgebraEndToSemiringSemiring.{u2, u1} R M (CommRing.toCommSemiring.{u2} R _inst_3) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4)) (AlgHom.algHomClass.{u2, max u3 u2, u1} R (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (CommRing.toCommSemiring.{u2} R _inst_3) (Subalgebra.toSemiring.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))) (Module.End.semiring.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (Subalgebra.instAlgebraSubtypeMemSubalgebraInstMembershipInstSetLikeSubalgebraToSemiring.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))) (Module.instAlgebraEndToSemiringSemiring.{u2, u1} R M (CommRing.toCommSemiring.{u2} R _inst_3) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4)))))) (Matrix.isRepresentation.toEnd.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b hb (fun (a : ι) (b : ι) => _inst_5 a b)) A)
+Case conversion may be inaccurate. Consider using '#align matrix.is_representation.to_End_represents Matrix.isRepresentation.toEnd_representsₓ'. -/
theorem Matrix.isRepresentation.toEnd_represents (A : Matrix.isRepresentation R b) :
(A : Matrix ι ι R).Represents b (Matrix.isRepresentation.toEnd R b hb A) :=
A.2.choose_spec
#align matrix.is_representation.to_End_represents Matrix.isRepresentation.toEnd_represents
+/- warning: matrix.is_representation.eq_to_End_of_represents -> Matrix.isRepresentation.eq_toEnd_of_represents is a dubious translation:
+lean 3 declaration is
+ forall {ι : Type.{u1}} [_inst_1 : Fintype.{u1} ι] {M : Type.{u2}} [_inst_2 : AddCommGroup.{u2} M] (R : Type.{u3}) [_inst_3 : CommRing.{u3} R] [_inst_4 : Module.{u3, u2} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2)] (b : ι -> M) (hb : Eq.{succ u2} (Submodule.{u3, u2} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (Submodule.span.{u3, u2} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4 (Set.range.{u2, succ u1} M ι b)) (Top.top.{u2} (Submodule.{u3, u2} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (Submodule.hasTop.{u3, u2} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4))) [_inst_5 : DecidableEq.{succ u1} ι] (A : coeSort.{succ (max u1 u3), succ (succ (max u1 u3))} (Subalgebra.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.algebra.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) Type.{max u1 u3} (SetLike.hasCoeToSort.{max u1 u3, max u1 u3} (Subalgebra.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.algebra.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.setLike.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.algebra.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))))) (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))) {f : Module.End.{u3, u2} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4}, (Matrix.Represents.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b) ((fun (a : Type.{max u1 u3}) (b : Type.{max u1 u3}) [self : HasLiftT.{succ (max u1 u3), succ (max u1 u3)} a b] => self.0) (coeSort.{succ (max u1 u3), succ (succ (max u1 u3))} (Subalgebra.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.algebra.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) Type.{max u1 u3} (SetLike.hasCoeToSort.{max u1 u3, max u1 u3} (Subalgebra.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.algebra.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.setLike.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.algebra.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))))) (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))) (Matrix.{u1, u1, u3} ι ι R) (HasLiftT.mk.{succ (max u1 u3), succ (max u1 u3)} (coeSort.{succ (max u1 u3), succ (succ (max u1 u3))} (Subalgebra.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.algebra.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) Type.{max u1 u3} (SetLike.hasCoeToSort.{max u1 u3, max u1 u3} (Subalgebra.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.algebra.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.setLike.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.algebra.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))))) (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))) (Matrix.{u1, u1, u3} ι ι R) (CoeTCₓ.coe.{succ (max u1 u3), succ (max u1 u3)} (coeSort.{succ (max u1 u3), succ (succ (max u1 u3))} (Subalgebra.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.algebra.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) Type.{max u1 u3} (SetLike.hasCoeToSort.{max u1 u3, max u1 u3} (Subalgebra.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.algebra.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.setLike.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.algebra.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))))) (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))) (Matrix.{u1, u1, u3} ι ι R) (coeBase.{succ (max u1 u3), succ (max u1 u3)} (coeSort.{succ (max u1 u3), succ (succ (max u1 u3))} (Subalgebra.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.algebra.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) Type.{max u1 u3} (SetLike.hasCoeToSort.{max u1 u3, max u1 u3} (Subalgebra.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.algebra.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.setLike.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.algebra.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))))) (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))) (Matrix.{u1, u1, u3} ι ι R) (coeSubtype.{succ (max u1 u3)} (Matrix.{u1, u1, u3} ι ι R) (fun (x : Matrix.{u1, u1, u3} ι ι R) => Membership.Mem.{max u1 u3, max u1 u3} (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.algebra.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (SetLike.hasMem.{max u1 u3, max u1 u3} (Subalgebra.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.algebra.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.setLike.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.algebra.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))))) x (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))))))) A) f) -> (Eq.{succ u2} (Module.End.{u3, u2} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (coeFn.{max (succ (max u1 u3)) (succ u2), max (succ (max u1 u3)) (succ u2)} (AlgHom.{u3, max u1 u3, u2} R (coeSort.{succ (max u1 u3), succ (succ (max u1 u3))} (Subalgebra.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b)) (Matrix.algebra.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b) (CommRing.toCommSemiring.{u3} R _inst_3) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) Type.{max u1 u3} (SetLike.hasCoeToSort.{max u1 u3, max u1 u3} (Subalgebra.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b)) (Matrix.algebra.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b) (CommRing.toCommSemiring.{u3} R _inst_3) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.setLike.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b)) (Matrix.algebra.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b) (CommRing.toCommSemiring.{u3} R _inst_3) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))))) (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))) (Module.End.{u3, u2} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (CommRing.toCommSemiring.{u3} R _inst_3) (Subalgebra.toSemiring.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b)) (Matrix.algebra.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b) (CommRing.toCommSemiring.{u3} R _inst_3) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))) (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))) (Module.End.semiring.{u3, u2} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (Subalgebra.algebra.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b)) (Matrix.algebra.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b) (CommRing.toCommSemiring.{u3} R _inst_3) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))) (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))) (Module.End.algebra.{u3, u2} R M (CommRing.toCommSemiring.{u3} R _inst_3) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4)) (fun (_x : AlgHom.{u3, max u1 u3, u2} R (coeSort.{succ (max u1 u3), succ (succ (max u1 u3))} (Subalgebra.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b)) (Matrix.algebra.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b) (CommRing.toCommSemiring.{u3} R _inst_3) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) Type.{max u1 u3} (SetLike.hasCoeToSort.{max u1 u3, max u1 u3} (Subalgebra.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b)) (Matrix.algebra.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b) (CommRing.toCommSemiring.{u3} R _inst_3) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.setLike.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b)) (Matrix.algebra.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b) (CommRing.toCommSemiring.{u3} R _inst_3) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))))) (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))) (Module.End.{u3, u2} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (CommRing.toCommSemiring.{u3} R _inst_3) (Subalgebra.toSemiring.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b)) (Matrix.algebra.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b) (CommRing.toCommSemiring.{u3} R _inst_3) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))) (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))) (Module.End.semiring.{u3, u2} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (Subalgebra.algebra.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b)) (Matrix.algebra.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b) (CommRing.toCommSemiring.{u3} R _inst_3) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))) (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))) (Module.End.algebra.{u3, u2} R M (CommRing.toCommSemiring.{u3} R _inst_3) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4)) => (coeSort.{succ (max u1 u3), succ (succ (max u1 u3))} (Subalgebra.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b)) (Matrix.algebra.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b) (CommRing.toCommSemiring.{u3} R _inst_3) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) Type.{max u1 u3} (SetLike.hasCoeToSort.{max u1 u3, max u1 u3} (Subalgebra.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b)) (Matrix.algebra.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b) (CommRing.toCommSemiring.{u3} R _inst_3) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.setLike.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b)) (Matrix.algebra.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b) (CommRing.toCommSemiring.{u3} R _inst_3) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))))) (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))) -> (Module.End.{u3, u2} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4)) ([anonymous].{u3, max u1 u3, u2} R (coeSort.{succ (max u1 u3), succ (succ (max u1 u3))} (Subalgebra.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b)) (Matrix.algebra.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b) (CommRing.toCommSemiring.{u3} R _inst_3) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) Type.{max u1 u3} (SetLike.hasCoeToSort.{max u1 u3, max u1 u3} (Subalgebra.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b)) (Matrix.algebra.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b) (CommRing.toCommSemiring.{u3} R _inst_3) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.setLike.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b)) (Matrix.algebra.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b) (CommRing.toCommSemiring.{u3} R _inst_3) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))))) (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))) (Module.End.{u3, u2} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (CommRing.toCommSemiring.{u3} R _inst_3) (Subalgebra.toSemiring.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b)) (Matrix.algebra.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b) (CommRing.toCommSemiring.{u3} R _inst_3) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))) (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))) (Module.End.semiring.{u3, u2} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (Subalgebra.algebra.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b)) (Matrix.algebra.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b) (CommRing.toCommSemiring.{u3} R _inst_3) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))) (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))) (Module.End.algebra.{u3, u2} R M (CommRing.toCommSemiring.{u3} R _inst_3) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4)) (Matrix.isRepresentation.toEnd.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b hb (fun (a : ι) (b : ι) => _inst_5 a b)) A) f)
+but is expected to have type
+ forall {ι : Type.{u3}} [_inst_1 : Fintype.{u3} ι] {M : Type.{u1}} [_inst_2 : AddCommGroup.{u1} M] (R : Type.{u2}) [_inst_3 : CommRing.{u2} R] [_inst_4 : Module.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2)] (b : ι -> M) (hb : Eq.{succ u1} (Submodule.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (Submodule.span.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4 (Set.range.{u1, succ u3} M ι b)) (Top.top.{u1} (Submodule.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (Submodule.instTopSubmodule.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4))) [_inst_5 : DecidableEq.{succ u3} ι] (A : Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) {f : Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4}, (Matrix.Represents.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b) (Subtype.val.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Set.{max u3 u2} (Matrix.{u3, u3, u2} ι ι R)) (Set.instMembershipSet.{max u3 u2} (Matrix.{u3, u3, u2} ι ι R)) x (SetLike.coe.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) A) f) -> (Eq.{succ u1} ((fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) => Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) A) (FunLike.coe.{max (max (succ u3) (succ u1)) (succ u2), max (succ u3) (succ u2), succ u1} (AlgHom.{u2, max u3 u2, u1} R (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (CommRing.toCommSemiring.{u2} R _inst_3) (Subalgebra.toSemiring.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))) (Module.End.semiring.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (Subalgebra.instAlgebraSubtypeMemSubalgebraInstMembershipInstSetLikeSubalgebraToSemiring.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))) (Module.instAlgebraEndToSemiringSemiring.{u2, u1} R M (CommRing.toCommSemiring.{u2} R _inst_3) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4)) (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (fun (_x : Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) => Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) _x) (SMulHomClass.toFunLike.{max (max u3 u1) u2, u2, max u3 u2, u1} (AlgHom.{u2, max u3 u2, u1} R (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (CommRing.toCommSemiring.{u2} R _inst_3) (Subalgebra.toSemiring.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))) (Module.End.semiring.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (Subalgebra.instAlgebraSubtypeMemSubalgebraInstMembershipInstSetLikeSubalgebraToSemiring.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))) (Module.instAlgebraEndToSemiringSemiring.{u2, u1} R M (CommRing.toCommSemiring.{u2} R _inst_3) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4)) R (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (SMulZeroClass.toSMul.{u2, max u3 u2} R (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (AddMonoid.toZero.{max u3 u2} (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (AddCommMonoid.toAddMonoid.{max u3 u2} (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (NonUnitalNonAssocSemiring.toAddCommMonoid.{max u3 u2} (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{max u3 u2} (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (Semiring.toNonAssocSemiring.{max u3 u2} (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (Subalgebra.toSemiring.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))))))) (DistribSMul.toSMulZeroClass.{u2, max u3 u2} R (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (AddMonoid.toAddZeroClass.{max u3 u2} (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (AddCommMonoid.toAddMonoid.{max u3 u2} (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (NonUnitalNonAssocSemiring.toAddCommMonoid.{max u3 u2} (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{max u3 u2} (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (Semiring.toNonAssocSemiring.{max u3 u2} (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (Subalgebra.toSemiring.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))))))) (DistribMulAction.toDistribSMul.{u2, max u3 u2} R (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (AddCommMonoid.toAddMonoid.{max u3 u2} (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (NonUnitalNonAssocSemiring.toAddCommMonoid.{max u3 u2} (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{max u3 u2} (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (Semiring.toNonAssocSemiring.{max u3 u2} (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (Subalgebra.toSemiring.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))))))) (Module.toDistribMulAction.{u2, max u3 u2} R (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{max u3 u2} (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{max u3 u2} (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (Semiring.toNonAssocSemiring.{max u3 u2} (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (Subalgebra.toSemiring.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))))) (Algebra.toModule.{u2, max u3 u2} R (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (CommRing.toCommSemiring.{u2} R _inst_3) (Subalgebra.toSemiring.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))) (Subalgebra.instAlgebraSubtypeMemSubalgebraInstMembershipInstSetLikeSubalgebraToSemiring.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))))))) (SMulZeroClass.toSMul.{u2, u1} R (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (AddMonoid.toZero.{u1} (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (AddCommMonoid.toAddMonoid.{u1} (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (Semiring.toNonAssocSemiring.{u1} (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (Module.End.semiring.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4)))))) (DistribSMul.toSMulZeroClass.{u2, u1} R (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (AddMonoid.toAddZeroClass.{u1} (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (AddCommMonoid.toAddMonoid.{u1} (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (Semiring.toNonAssocSemiring.{u1} (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (Module.End.semiring.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4)))))) (DistribMulAction.toDistribSMul.{u2, u1} R (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (AddCommMonoid.toAddMonoid.{u1} (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (Semiring.toNonAssocSemiring.{u1} (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (Module.End.semiring.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4))))) (Module.toDistribMulAction.{u2, u1} R (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (Semiring.toNonAssocSemiring.{u1} (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (Module.End.semiring.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4)))) (Algebra.toModule.{u2, u1} R (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (CommRing.toCommSemiring.{u2} R _inst_3) (Module.End.semiring.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (Module.instAlgebraEndToSemiringSemiring.{u2, u1} R M (CommRing.toCommSemiring.{u2} R _inst_3) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4)))))) (DistribMulActionHomClass.toSMulHomClass.{max (max u3 u1) u2, u2, max u3 u2, u1} (AlgHom.{u2, max u3 u2, u1} R (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (CommRing.toCommSemiring.{u2} R _inst_3) (Subalgebra.toSemiring.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))) (Module.End.semiring.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (Subalgebra.instAlgebraSubtypeMemSubalgebraInstMembershipInstSetLikeSubalgebraToSemiring.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))) (Module.instAlgebraEndToSemiringSemiring.{u2, u1} R M (CommRing.toCommSemiring.{u2} R _inst_3) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4)) R (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (AddCommMonoid.toAddMonoid.{max u3 u2} (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (NonUnitalNonAssocSemiring.toAddCommMonoid.{max u3 u2} (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{max u3 u2} (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (Semiring.toNonAssocSemiring.{max u3 u2} (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (Subalgebra.toSemiring.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))))))) (AddCommMonoid.toAddMonoid.{u1} (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (Semiring.toNonAssocSemiring.{u1} (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (Module.End.semiring.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4))))) (Module.toDistribMulAction.{u2, max u3 u2} R (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{max u3 u2} (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{max u3 u2} (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (Semiring.toNonAssocSemiring.{max u3 u2} (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (Subalgebra.toSemiring.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))))) (Algebra.toModule.{u2, max u3 u2} R (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (CommRing.toCommSemiring.{u2} R _inst_3) (Subalgebra.toSemiring.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))) (Subalgebra.instAlgebraSubtypeMemSubalgebraInstMembershipInstSetLikeSubalgebraToSemiring.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))))) (Module.toDistribMulAction.{u2, u1} R (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (Semiring.toNonAssocSemiring.{u1} (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (Module.End.semiring.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4)))) (Algebra.toModule.{u2, u1} R (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (CommRing.toCommSemiring.{u2} R _inst_3) (Module.End.semiring.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (Module.instAlgebraEndToSemiringSemiring.{u2, u1} R M (CommRing.toCommSemiring.{u2} R _inst_3) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4))) (NonUnitalAlgHomClass.toDistribMulActionHomClass.{max (max u3 u1) u2, u2, max u3 u2, u1} (AlgHom.{u2, max u3 u2, u1} R (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (CommRing.toCommSemiring.{u2} R _inst_3) (Subalgebra.toSemiring.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))) (Module.End.semiring.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (Subalgebra.instAlgebraSubtypeMemSubalgebraInstMembershipInstSetLikeSubalgebraToSemiring.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))) (Module.instAlgebraEndToSemiringSemiring.{u2, u1} R M (CommRing.toCommSemiring.{u2} R _inst_3) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4)) R (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{max u3 u2} (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (Semiring.toNonAssocSemiring.{max u3 u2} (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (Subalgebra.toSemiring.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))))) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (Semiring.toNonAssocSemiring.{u1} (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (Module.End.semiring.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4))) (Module.toDistribMulAction.{u2, max u3 u2} R (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{max u3 u2} (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{max u3 u2} (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (Semiring.toNonAssocSemiring.{max u3 u2} (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (Subalgebra.toSemiring.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))))) (Algebra.toModule.{u2, max u3 u2} R (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (CommRing.toCommSemiring.{u2} R _inst_3) (Subalgebra.toSemiring.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))) (Subalgebra.instAlgebraSubtypeMemSubalgebraInstMembershipInstSetLikeSubalgebraToSemiring.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))))) (Module.toDistribMulAction.{u2, u1} R (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (Semiring.toNonAssocSemiring.{u1} (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (Module.End.semiring.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4)))) (Algebra.toModule.{u2, u1} R (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (CommRing.toCommSemiring.{u2} R _inst_3) (Module.End.semiring.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (Module.instAlgebraEndToSemiringSemiring.{u2, u1} R M (CommRing.toCommSemiring.{u2} R _inst_3) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4))) (AlgHom.instNonUnitalAlgHomClassToMonoidToMonoidWithZeroToSemiringToNonUnitalNonAssocSemiringToNonAssocSemiringToNonUnitalNonAssocSemiringToNonAssocSemiringToDistribMulActionToAddCommMonoidToModuleToDistribMulActionToAddCommMonoidToModule.{u2, max u3 u2, u1, max (max u3 u1) u2} R (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (CommRing.toCommSemiring.{u2} R _inst_3) (Subalgebra.toSemiring.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))) (Module.End.semiring.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (Subalgebra.instAlgebraSubtypeMemSubalgebraInstMembershipInstSetLikeSubalgebraToSemiring.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))) (Module.instAlgebraEndToSemiringSemiring.{u2, u1} R M (CommRing.toCommSemiring.{u2} R _inst_3) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (AlgHom.{u2, max u3 u2, u1} R (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (CommRing.toCommSemiring.{u2} R _inst_3) (Subalgebra.toSemiring.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))) (Module.End.semiring.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (Subalgebra.instAlgebraSubtypeMemSubalgebraInstMembershipInstSetLikeSubalgebraToSemiring.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))) (Module.instAlgebraEndToSemiringSemiring.{u2, u1} R M (CommRing.toCommSemiring.{u2} R _inst_3) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4)) (AlgHom.algHomClass.{u2, max u3 u2, u1} R (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (CommRing.toCommSemiring.{u2} R _inst_3) (Subalgebra.toSemiring.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))) (Module.End.semiring.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (Subalgebra.instAlgebraSubtypeMemSubalgebraInstMembershipInstSetLikeSubalgebraToSemiring.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))) (Module.instAlgebraEndToSemiringSemiring.{u2, u1} R M (CommRing.toCommSemiring.{u2} R _inst_3) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4)))))) (Matrix.isRepresentation.toEnd.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b hb (fun (a : ι) (b : ι) => _inst_5 a b)) A) f)
+Case conversion may be inaccurate. Consider using '#align matrix.is_representation.eq_to_End_of_represents Matrix.isRepresentation.eq_toEnd_of_representsₓ'. -/
theorem Matrix.isRepresentation.eq_toEnd_of_represents (A : Matrix.isRepresentation R b)
{f : Module.End R M} (h : (A : Matrix ι ι R).Represents b f) :
Matrix.isRepresentation.toEnd R b hb A = f :=
A.2.choose_spec.Eq hb h
#align matrix.is_representation.eq_to_End_of_represents Matrix.isRepresentation.eq_toEnd_of_represents
+/- warning: matrix.is_representation.to_End_exists_mem_ideal -> Matrix.isRepresentation.toEnd_exists_mem_ideal is a dubious translation:
+lean 3 declaration is
+ forall {ι : Type.{u1}} [_inst_1 : Fintype.{u1} ι] {M : Type.{u2}} [_inst_2 : AddCommGroup.{u2} M] (R : Type.{u3}) [_inst_3 : CommRing.{u3} R] [_inst_4 : Module.{u3, u2} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2)] (b : ι -> M) (hb : Eq.{succ u2} (Submodule.{u3, u2} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (Submodule.span.{u3, u2} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4 (Set.range.{u2, succ u1} M ι b)) (Top.top.{u2} (Submodule.{u3, u2} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (Submodule.hasTop.{u3, u2} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4))) [_inst_5 : DecidableEq.{succ u1} ι] (f : Module.End.{u3, u2} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (I : Ideal.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3))), (LE.le.{u2} (Submodule.{u3, u2} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (Preorder.toHasLe.{u2} (Submodule.{u3, u2} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (PartialOrder.toPreorder.{u2} (Submodule.{u3, u2} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (SetLike.partialOrder.{u2, u2} (Submodule.{u3, u2} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) M (Submodule.setLike.{u3, u2} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4)))) (LinearMap.range.{u3, u3, u2, u2, u2} R R M M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4 _inst_4 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)))) (Module.End.{u3, u2} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (LinearMap.semilinearMapClass.{u3, u3, u2, u2} R R M M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4 _inst_4 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3))))) (RingHomSurjective.ids.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3))) f) (SMul.smul.{u3, u2} (Ideal.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3))) (Submodule.{u3, u2} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (Submodule.hasSMul'.{u3, u2} R M (CommRing.toCommSemiring.{u3} R _inst_3) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) I (Top.top.{u2} (Submodule.{u3, u2} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (Submodule.hasTop.{u3, u2} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4)))) -> (Exists.{succ (max u1 u3)} (coeSort.{succ (max u1 u3), succ (succ (max u1 u3))} (Subalgebra.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b)) (Matrix.algebra.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b) (CommRing.toCommSemiring.{u3} R _inst_3) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) Type.{max u1 u3} (SetLike.hasCoeToSort.{max u1 u3, max u1 u3} (Subalgebra.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b)) (Matrix.algebra.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b) (CommRing.toCommSemiring.{u3} R _inst_3) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.setLike.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b)) (Matrix.algebra.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b) (CommRing.toCommSemiring.{u3} R _inst_3) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))))) (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))) (fun (M_1 : coeSort.{succ (max u1 u3), succ (succ (max u1 u3))} (Subalgebra.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b)) (Matrix.algebra.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b) (CommRing.toCommSemiring.{u3} R _inst_3) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) Type.{max u1 u3} (SetLike.hasCoeToSort.{max u1 u3, max u1 u3} (Subalgebra.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b)) (Matrix.algebra.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b) (CommRing.toCommSemiring.{u3} R _inst_3) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.setLike.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b)) (Matrix.algebra.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b) (CommRing.toCommSemiring.{u3} R _inst_3) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))))) (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))) => And (Eq.{succ u2} (Module.End.{u3, u2} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (coeFn.{max (succ (max u1 u3)) (succ u2), max (succ (max u1 u3)) (succ u2)} (AlgHom.{u3, max u1 u3, u2} R (coeSort.{succ (max u1 u3), succ (succ (max u1 u3))} (Subalgebra.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b)) (Matrix.algebra.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b) (CommRing.toCommSemiring.{u3} R _inst_3) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) Type.{max u1 u3} (SetLike.hasCoeToSort.{max u1 u3, max u1 u3} (Subalgebra.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b)) (Matrix.algebra.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b) (CommRing.toCommSemiring.{u3} R _inst_3) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.setLike.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b)) (Matrix.algebra.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b) (CommRing.toCommSemiring.{u3} R _inst_3) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))))) (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))) (Module.End.{u3, u2} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (CommRing.toCommSemiring.{u3} R _inst_3) (Subalgebra.toSemiring.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b)) (Matrix.algebra.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b) (CommRing.toCommSemiring.{u3} R _inst_3) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))) (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))) (Module.End.semiring.{u3, u2} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (Subalgebra.algebra.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b)) (Matrix.algebra.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b) (CommRing.toCommSemiring.{u3} R _inst_3) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))) (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))) (Module.End.algebra.{u3, u2} R M (CommRing.toCommSemiring.{u3} R _inst_3) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4)) (fun (_x : AlgHom.{u3, max u1 u3, u2} R (coeSort.{succ (max u1 u3), succ (succ (max u1 u3))} (Subalgebra.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b)) (Matrix.algebra.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b) (CommRing.toCommSemiring.{u3} R _inst_3) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) Type.{max u1 u3} (SetLike.hasCoeToSort.{max u1 u3, max u1 u3} (Subalgebra.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b)) (Matrix.algebra.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b) (CommRing.toCommSemiring.{u3} R _inst_3) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.setLike.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b)) (Matrix.algebra.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b) (CommRing.toCommSemiring.{u3} R _inst_3) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))))) (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))) (Module.End.{u3, u2} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (CommRing.toCommSemiring.{u3} R _inst_3) (Subalgebra.toSemiring.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b)) (Matrix.algebra.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b) (CommRing.toCommSemiring.{u3} R _inst_3) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))) (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))) (Module.End.semiring.{u3, u2} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (Subalgebra.algebra.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b)) (Matrix.algebra.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b) (CommRing.toCommSemiring.{u3} R _inst_3) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))) (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))) (Module.End.algebra.{u3, u2} R M (CommRing.toCommSemiring.{u3} R _inst_3) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4)) => (coeSort.{succ (max u1 u3), succ (succ (max u1 u3))} (Subalgebra.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b)) (Matrix.algebra.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b) (CommRing.toCommSemiring.{u3} R _inst_3) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) Type.{max u1 u3} (SetLike.hasCoeToSort.{max u1 u3, max u1 u3} (Subalgebra.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b)) (Matrix.algebra.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b) (CommRing.toCommSemiring.{u3} R _inst_3) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.setLike.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b)) (Matrix.algebra.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b) (CommRing.toCommSemiring.{u3} R _inst_3) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))))) (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))) -> (Module.End.{u3, u2} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4)) ([anonymous].{u3, max u1 u3, u2} R (coeSort.{succ (max u1 u3), succ (succ (max u1 u3))} (Subalgebra.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b)) (Matrix.algebra.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b) (CommRing.toCommSemiring.{u3} R _inst_3) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) Type.{max u1 u3} (SetLike.hasCoeToSort.{max u1 u3, max u1 u3} (Subalgebra.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b)) (Matrix.algebra.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b) (CommRing.toCommSemiring.{u3} R _inst_3) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.setLike.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b)) (Matrix.algebra.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b) (CommRing.toCommSemiring.{u3} R _inst_3) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))))) (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))) (Module.End.{u3, u2} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (CommRing.toCommSemiring.{u3} R _inst_3) (Subalgebra.toSemiring.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b)) (Matrix.algebra.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b) (CommRing.toCommSemiring.{u3} R _inst_3) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))) (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))) (Module.End.semiring.{u3, u2} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (Subalgebra.algebra.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b)) (Matrix.algebra.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b) (CommRing.toCommSemiring.{u3} R _inst_3) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))) (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))) (Module.End.algebra.{u3, u2} R M (CommRing.toCommSemiring.{u3} R _inst_3) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4)) (Matrix.isRepresentation.toEnd.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b hb (fun (a : ι) (b : ι) => _inst_5 a b)) M_1) f) (forall (i : ι) (j : ι), Membership.Mem.{u3, u3} R (Ideal.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3))) (SetLike.hasMem.{u3, u3} (Ideal.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3))) R (Submodule.setLike.{u3, u3} R R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3))))) (Semiring.toModule.{u3} R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3))))) (Subtype.val.{succ (max u1 u3)} (Matrix.{u1, u1, u3} ι ι R) (fun (x : Matrix.{u1, u1, u3} ι ι R) => Membership.Mem.{max u1 u3, max u1 u3} (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b)) (Matrix.algebra.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b) (CommRing.toCommSemiring.{u3} R _inst_3) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (SetLike.hasMem.{max u1 u3, max u1 u3} (Subalgebra.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b)) (Matrix.algebra.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b) (CommRing.toCommSemiring.{u3} R _inst_3) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.setLike.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b)) (Matrix.algebra.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b) (CommRing.toCommSemiring.{u3} R _inst_3) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))))) x (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))) M_1 i j) I)))
+but is expected to have type
+ forall {ι : Type.{u1}} [_inst_1 : Fintype.{u1} ι] {M : Type.{u2}} [_inst_2 : AddCommGroup.{u2} M] (R : Type.{u3}) [_inst_3 : CommRing.{u3} R] [_inst_4 : Module.{u3, u2} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2)] (b : ι -> M) (hb : Eq.{succ u2} (Submodule.{u3, u2} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (Submodule.span.{u3, u2} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4 (Set.range.{u2, succ u1} M ι b)) (Top.top.{u2} (Submodule.{u3, u2} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (Submodule.instTopSubmodule.{u3, u2} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4))) [_inst_5 : DecidableEq.{succ u1} ι] (f : Module.End.{u3, u2} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (I : Ideal.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))), (LE.le.{u2} (Submodule.{u3, u2} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (Preorder.toLE.{u2} (Submodule.{u3, u2} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (PartialOrder.toPreorder.{u2} (Submodule.{u3, u2} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (OmegaCompletePartialOrder.toPartialOrder.{u2} (Submodule.{u3, u2} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (CompleteLattice.instOmegaCompletePartialOrder.{u2} (Submodule.{u3, u2} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (Submodule.completeLattice.{u3, u2} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4))))) (LinearMap.range.{u3, u3, u2, u2, u2} R R M M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4 _inst_4 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (Module.End.{u3, u2} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (LinearMap.semilinearMapClass.{u3, u3, u2, u2} R R M M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4 _inst_4 (RingHom.id.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))))) (RingHomSurjective.ids.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))) f) (HSMul.hSMul.{u3, u2, u2} (Ideal.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))) (Submodule.{u3, u2} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (Submodule.{u3, u2} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (instHSMul.{u3, u2} (Ideal.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))) (Submodule.{u3, u2} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (Submodule.hasSMul'.{u3, u2} R M (CommRing.toCommSemiring.{u3} R _inst_3) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4)) I (Top.top.{u2} (Submodule.{u3, u2} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (Submodule.instTopSubmodule.{u3, u2} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4)))) -> (Exists.{max (succ u1) (succ u3)} (Subtype.{succ (max u1 u3)} (Matrix.{u1, u1, u3} ι ι R) (fun (x : Matrix.{u1, u1, u3} ι ι R) => Membership.mem.{max u1 u3, max u1 u3} (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.{u3, max u3 u1} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (SetLike.instMembership.{max u1 u3, max u1 u3} (Subalgebra.{u3, max u3 u1} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))))) x (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (fun (M_1 : Subtype.{succ (max u1 u3)} (Matrix.{u1, u1, u3} ι ι R) (fun (x : Matrix.{u1, u1, u3} ι ι R) => Membership.mem.{max u1 u3, max u1 u3} (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.{u3, max u3 u1} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (SetLike.instMembership.{max u1 u3, max u1 u3} (Subalgebra.{u3, max u3 u1} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))))) x (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) => And (Eq.{succ u2} ((fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : Subtype.{succ (max u1 u3)} (Matrix.{u1, u1, u3} ι ι R) (fun (x : Matrix.{u1, u1, u3} ι ι R) => Membership.mem.{max u1 u3, max u1 u3} (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.{u3, max u3 u1} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (SetLike.instMembership.{max u1 u3, max u1 u3} (Subalgebra.{u3, max u3 u1} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))))) x (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) => Module.End.{u3, u2} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) M_1) (FunLike.coe.{max (max (succ u1) (succ u2)) (succ u3), max (succ u1) (succ u3), succ u2} (AlgHom.{u3, max u1 u3, u2} R (Subtype.{succ (max u1 u3)} (Matrix.{u1, u1, u3} ι ι R) (fun (x : Matrix.{u1, u1, u3} ι ι R) => Membership.mem.{max u1 u3, max u1 u3} (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.{u3, max u3 u1} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (SetLike.instMembership.{max u1 u3, max u1 u3} (Subalgebra.{u3, max u3 u1} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))))) x (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (Module.End.{u3, u2} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (CommRing.toCommSemiring.{u3} R _inst_3) (Subalgebra.toSemiring.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))) (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))) (Module.End.semiring.{u3, u2} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (Subalgebra.instAlgebraSubtypeMemSubalgebraInstMembershipInstSetLikeSubalgebraToSemiring.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))) (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))) (Module.instAlgebraEndToSemiringSemiring.{u3, u2} R M (CommRing.toCommSemiring.{u3} R _inst_3) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4)) (Subtype.{succ (max u1 u3)} (Matrix.{u1, u1, u3} ι ι R) (fun (x : Matrix.{u1, u1, u3} ι ι R) => Membership.mem.{max u1 u3, max u1 u3} (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.{u3, max u3 u1} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (SetLike.instMembership.{max u1 u3, max u1 u3} (Subalgebra.{u3, max u3 u1} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))))) x (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (fun (_x : Subtype.{succ (max u1 u3)} (Matrix.{u1, u1, u3} ι ι R) (fun (x : Matrix.{u1, u1, u3} ι ι R) => Membership.mem.{max u1 u3, max u1 u3} (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.{u3, max u3 u1} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (SetLike.instMembership.{max u1 u3, max u1 u3} (Subalgebra.{u3, max u3 u1} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))))) x (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : Subtype.{succ (max u1 u3)} (Matrix.{u1, u1, u3} ι ι R) (fun (x : Matrix.{u1, u1, u3} ι ι R) => Membership.mem.{max u1 u3, max u1 u3} (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.{u3, max u3 u1} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (SetLike.instMembership.{max u1 u3, max u1 u3} (Subalgebra.{u3, max u3 u1} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))))) x (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) => Module.End.{u3, u2} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) _x) (SMulHomClass.toFunLike.{max (max u1 u2) u3, u3, max u1 u3, u2} (AlgHom.{u3, max u1 u3, u2} R (Subtype.{succ (max u1 u3)} (Matrix.{u1, u1, u3} ι ι R) (fun (x : Matrix.{u1, u1, u3} ι ι R) => Membership.mem.{max u1 u3, max u1 u3} (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.{u3, max u3 u1} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (SetLike.instMembership.{max u1 u3, max u1 u3} (Subalgebra.{u3, max u3 u1} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))))) x (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (Module.End.{u3, u2} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (CommRing.toCommSemiring.{u3} R _inst_3) (Subalgebra.toSemiring.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))) (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))) (Module.End.semiring.{u3, u2} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (Subalgebra.instAlgebraSubtypeMemSubalgebraInstMembershipInstSetLikeSubalgebraToSemiring.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))) (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))) (Module.instAlgebraEndToSemiringSemiring.{u3, u2} R M (CommRing.toCommSemiring.{u3} R _inst_3) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4)) R (Subtype.{succ (max u1 u3)} (Matrix.{u1, u1, u3} ι ι R) (fun (x : Matrix.{u1, u1, u3} ι ι R) => Membership.mem.{max u1 u3, max u1 u3} (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.{u3, max u3 u1} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (SetLike.instMembership.{max u1 u3, max u1 u3} (Subalgebra.{u3, max u3 u1} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))))) x (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (Module.End.{u3, u2} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (SMulZeroClass.toSMul.{u3, max u1 u3} R (Subtype.{succ (max u1 u3)} (Matrix.{u1, u1, u3} ι ι R) (fun (x : Matrix.{u1, u1, u3} ι ι R) => Membership.mem.{max u1 u3, max u1 u3} (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.{u3, max u3 u1} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (SetLike.instMembership.{max u1 u3, max u1 u3} (Subalgebra.{u3, max u3 u1} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))))) x (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (AddMonoid.toZero.{max u1 u3} (Subtype.{succ (max u1 u3)} (Matrix.{u1, u1, u3} ι ι R) (fun (x : Matrix.{u1, u1, u3} ι ι R) => Membership.mem.{max u1 u3, max u1 u3} (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.{u3, max u3 u1} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (SetLike.instMembership.{max u1 u3, max u1 u3} (Subalgebra.{u3, max u3 u1} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))))) x (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (AddCommMonoid.toAddMonoid.{max u1 u3} (Subtype.{succ (max u1 u3)} (Matrix.{u1, u1, u3} ι ι R) (fun (x : Matrix.{u1, u1, u3} ι ι R) => Membership.mem.{max u1 u3, max u1 u3} (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.{u3, max u3 u1} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (SetLike.instMembership.{max u1 u3, max u1 u3} (Subalgebra.{u3, max u3 u1} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))))) x (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (NonUnitalNonAssocSemiring.toAddCommMonoid.{max u1 u3} (Subtype.{succ (max u1 u3)} (Matrix.{u1, u1, u3} ι ι R) (fun (x : Matrix.{u1, u1, u3} ι ι R) => Membership.mem.{max u1 u3, max u1 u3} (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.{u3, max u3 u1} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (SetLike.instMembership.{max u1 u3, max u1 u3} (Subalgebra.{u3, max u3 u1} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))))) x (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{max u1 u3} (Subtype.{succ (max u1 u3)} (Matrix.{u1, u1, u3} ι ι R) (fun (x : Matrix.{u1, u1, u3} ι ι R) => Membership.mem.{max u1 u3, max u1 u3} (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.{u3, max u3 u1} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (SetLike.instMembership.{max u1 u3, max u1 u3} (Subalgebra.{u3, max u3 u1} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))))) x (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (Semiring.toNonAssocSemiring.{max u1 u3} (Subtype.{succ (max u1 u3)} (Matrix.{u1, u1, u3} ι ι R) (fun (x : Matrix.{u1, u1, u3} ι ι R) => Membership.mem.{max u1 u3, max u1 u3} (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.{u3, max u3 u1} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (SetLike.instMembership.{max u1 u3, max u1 u3} (Subalgebra.{u3, max u3 u1} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))))) x (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (Subalgebra.toSemiring.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))) (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))))))) (DistribSMul.toSMulZeroClass.{u3, max u1 u3} R (Subtype.{succ (max u1 u3)} (Matrix.{u1, u1, u3} ι ι R) (fun (x : Matrix.{u1, u1, u3} ι ι R) => Membership.mem.{max u1 u3, max u1 u3} (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.{u3, max u3 u1} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (SetLike.instMembership.{max u1 u3, max u1 u3} (Subalgebra.{u3, max u3 u1} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))))) x (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (AddMonoid.toAddZeroClass.{max u1 u3} (Subtype.{succ (max u1 u3)} (Matrix.{u1, u1, u3} ι ι R) (fun (x : Matrix.{u1, u1, u3} ι ι R) => Membership.mem.{max u1 u3, max u1 u3} (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.{u3, max u3 u1} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (SetLike.instMembership.{max u1 u3, max u1 u3} (Subalgebra.{u3, max u3 u1} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))))) x (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (AddCommMonoid.toAddMonoid.{max u1 u3} (Subtype.{succ (max u1 u3)} (Matrix.{u1, u1, u3} ι ι R) (fun (x : Matrix.{u1, u1, u3} ι ι R) => Membership.mem.{max u1 u3, max u1 u3} (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.{u3, max u3 u1} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (SetLike.instMembership.{max u1 u3, max u1 u3} (Subalgebra.{u3, max u3 u1} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))))) x (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (NonUnitalNonAssocSemiring.toAddCommMonoid.{max u1 u3} (Subtype.{succ (max u1 u3)} (Matrix.{u1, u1, u3} ι ι R) (fun (x : Matrix.{u1, u1, u3} ι ι R) => Membership.mem.{max u1 u3, max u1 u3} (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.{u3, max u3 u1} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (SetLike.instMembership.{max u1 u3, max u1 u3} (Subalgebra.{u3, max u3 u1} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))))) x (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{max u1 u3} (Subtype.{succ (max u1 u3)} (Matrix.{u1, u1, u3} ι ι R) (fun (x : Matrix.{u1, u1, u3} ι ι R) => Membership.mem.{max u1 u3, max u1 u3} (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.{u3, max u3 u1} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (SetLike.instMembership.{max u1 u3, max u1 u3} (Subalgebra.{u3, max u3 u1} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))))) x (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (Semiring.toNonAssocSemiring.{max u1 u3} (Subtype.{succ (max u1 u3)} (Matrix.{u1, u1, u3} ι ι R) (fun (x : Matrix.{u1, u1, u3} ι ι R) => Membership.mem.{max u1 u3, max u1 u3} (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.{u3, max u3 u1} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (SetLike.instMembership.{max u1 u3, max u1 u3} (Subalgebra.{u3, max u3 u1} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))))) x (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (Subalgebra.toSemiring.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))) (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))))))) (DistribMulAction.toDistribSMul.{u3, max u1 u3} R (Subtype.{succ (max u1 u3)} (Matrix.{u1, u1, u3} ι ι R) (fun (x : Matrix.{u1, u1, u3} ι ι R) => Membership.mem.{max u1 u3, max u1 u3} (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.{u3, max u3 u1} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (SetLike.instMembership.{max u1 u3, max u1 u3} (Subalgebra.{u3, max u3 u1} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))))) x (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (AddCommMonoid.toAddMonoid.{max u1 u3} (Subtype.{succ (max u1 u3)} (Matrix.{u1, u1, u3} ι ι R) (fun (x : Matrix.{u1, u1, u3} ι ι R) => Membership.mem.{max u1 u3, max u1 u3} (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.{u3, max u3 u1} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (SetLike.instMembership.{max u1 u3, max u1 u3} (Subalgebra.{u3, max u3 u1} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))))) x (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (NonUnitalNonAssocSemiring.toAddCommMonoid.{max u1 u3} (Subtype.{succ (max u1 u3)} (Matrix.{u1, u1, u3} ι ι R) (fun (x : Matrix.{u1, u1, u3} ι ι R) => Membership.mem.{max u1 u3, max u1 u3} (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.{u3, max u3 u1} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (SetLike.instMembership.{max u1 u3, max u1 u3} (Subalgebra.{u3, max u3 u1} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))))) x (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{max u1 u3} (Subtype.{succ (max u1 u3)} (Matrix.{u1, u1, u3} ι ι R) (fun (x : Matrix.{u1, u1, u3} ι ι R) => Membership.mem.{max u1 u3, max u1 u3} (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.{u3, max u3 u1} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (SetLike.instMembership.{max u1 u3, max u1 u3} (Subalgebra.{u3, max u3 u1} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))))) x (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (Semiring.toNonAssocSemiring.{max u1 u3} (Subtype.{succ (max u1 u3)} (Matrix.{u1, u1, u3} ι ι R) (fun (x : Matrix.{u1, u1, u3} ι ι R) => Membership.mem.{max u1 u3, max u1 u3} (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.{u3, max u3 u1} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (SetLike.instMembership.{max u1 u3, max u1 u3} (Subalgebra.{u3, max u3 u1} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))))) x (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (Subalgebra.toSemiring.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))) (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))))))) (Module.toDistribMulAction.{u3, max u1 u3} R (Subtype.{succ (max u1 u3)} (Matrix.{u1, u1, u3} ι ι R) (fun (x : Matrix.{u1, u1, u3} ι ι R) => Membership.mem.{max u1 u3, max u1 u3} (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.{u3, max u3 u1} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (SetLike.instMembership.{max u1 u3, max u1 u3} (Subalgebra.{u3, max u3 u1} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))))) x (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{max u1 u3} (Subtype.{succ (max u1 u3)} (Matrix.{u1, u1, u3} ι ι R) (fun (x : Matrix.{u1, u1, u3} ι ι R) => Membership.mem.{max u1 u3, max u1 u3} (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.{u3, max u3 u1} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (SetLike.instMembership.{max u1 u3, max u1 u3} (Subalgebra.{u3, max u3 u1} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))))) x (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{max u1 u3} (Subtype.{succ (max u1 u3)} (Matrix.{u1, u1, u3} ι ι R) (fun (x : Matrix.{u1, u1, u3} ι ι R) => Membership.mem.{max u1 u3, max u1 u3} (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.{u3, max u3 u1} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (SetLike.instMembership.{max u1 u3, max u1 u3} (Subalgebra.{u3, max u3 u1} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))))) x (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (Semiring.toNonAssocSemiring.{max u1 u3} (Subtype.{succ (max u1 u3)} (Matrix.{u1, u1, u3} ι ι R) (fun (x : Matrix.{u1, u1, u3} ι ι R) => Membership.mem.{max u1 u3, max u1 u3} (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.{u3, max u3 u1} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (SetLike.instMembership.{max u1 u3, max u1 u3} (Subalgebra.{u3, max u3 u1} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))))) x (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (Subalgebra.toSemiring.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))) (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))))) (Algebra.toModule.{u3, max u1 u3} R (Subtype.{succ (max u1 u3)} (Matrix.{u1, u1, u3} ι ι R) (fun (x : Matrix.{u1, u1, u3} ι ι R) => Membership.mem.{max u1 u3, max u1 u3} (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.{u3, max u3 u1} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (SetLike.instMembership.{max u1 u3, max u1 u3} (Subalgebra.{u3, max u3 u1} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))))) x (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (CommRing.toCommSemiring.{u3} R _inst_3) (Subalgebra.toSemiring.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))) (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))) (Subalgebra.instAlgebraSubtypeMemSubalgebraInstMembershipInstSetLikeSubalgebraToSemiring.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))) (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))))))) (SMulZeroClass.toSMul.{u3, u2} R (Module.End.{u3, u2} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (AddMonoid.toZero.{u2} (Module.End.{u3, u2} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (AddCommMonoid.toAddMonoid.{u2} (Module.End.{u3, u2} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} (Module.End.{u3, u2} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} (Module.End.{u3, u2} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (Semiring.toNonAssocSemiring.{u2} (Module.End.{u3, u2} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (Module.End.semiring.{u3, u2} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4)))))) (DistribSMul.toSMulZeroClass.{u3, u2} R (Module.End.{u3, u2} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (AddMonoid.toAddZeroClass.{u2} (Module.End.{u3, u2} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (AddCommMonoid.toAddMonoid.{u2} (Module.End.{u3, u2} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} (Module.End.{u3, u2} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} (Module.End.{u3, u2} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (Semiring.toNonAssocSemiring.{u2} (Module.End.{u3, u2} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (Module.End.semiring.{u3, u2} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4)))))) (DistribMulAction.toDistribSMul.{u3, u2} R (Module.End.{u3, u2} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (AddCommMonoid.toAddMonoid.{u2} (Module.End.{u3, u2} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} (Module.End.{u3, u2} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} (Module.End.{u3, u2} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (Semiring.toNonAssocSemiring.{u2} (Module.End.{u3, u2} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (Module.End.semiring.{u3, u2} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4))))) (Module.toDistribMulAction.{u3, u2} R (Module.End.{u3, u2} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} (Module.End.{u3, u2} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} (Module.End.{u3, u2} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (Semiring.toNonAssocSemiring.{u2} (Module.End.{u3, u2} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (Module.End.semiring.{u3, u2} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4)))) (Algebra.toModule.{u3, u2} R (Module.End.{u3, u2} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (CommRing.toCommSemiring.{u3} R _inst_3) (Module.End.semiring.{u3, u2} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (Module.instAlgebraEndToSemiringSemiring.{u3, u2} R M (CommRing.toCommSemiring.{u3} R _inst_3) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4)))))) (DistribMulActionHomClass.toSMulHomClass.{max (max u1 u2) u3, u3, max u1 u3, u2} (AlgHom.{u3, max u1 u3, u2} R (Subtype.{succ (max u1 u3)} (Matrix.{u1, u1, u3} ι ι R) (fun (x : Matrix.{u1, u1, u3} ι ι R) => Membership.mem.{max u1 u3, max u1 u3} (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.{u3, max u3 u1} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (SetLike.instMembership.{max u1 u3, max u1 u3} (Subalgebra.{u3, max u3 u1} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))))) x (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (Module.End.{u3, u2} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (CommRing.toCommSemiring.{u3} R _inst_3) (Subalgebra.toSemiring.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))) (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))) (Module.End.semiring.{u3, u2} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (Subalgebra.instAlgebraSubtypeMemSubalgebraInstMembershipInstSetLikeSubalgebraToSemiring.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))) (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))) (Module.instAlgebraEndToSemiringSemiring.{u3, u2} R M (CommRing.toCommSemiring.{u3} R _inst_3) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4)) R (Subtype.{succ (max u1 u3)} (Matrix.{u1, u1, u3} ι ι R) (fun (x : Matrix.{u1, u1, u3} ι ι R) => Membership.mem.{max u1 u3, max u1 u3} (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.{u3, max u3 u1} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (SetLike.instMembership.{max u1 u3, max u1 u3} (Subalgebra.{u3, max u3 u1} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))))) x (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (Module.End.{u3, u2} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (AddCommMonoid.toAddMonoid.{max u1 u3} (Subtype.{succ (max u1 u3)} (Matrix.{u1, u1, u3} ι ι R) (fun (x : Matrix.{u1, u1, u3} ι ι R) => Membership.mem.{max u1 u3, max u1 u3} (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.{u3, max u3 u1} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (SetLike.instMembership.{max u1 u3, max u1 u3} (Subalgebra.{u3, max u3 u1} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))))) x (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (NonUnitalNonAssocSemiring.toAddCommMonoid.{max u1 u3} (Subtype.{succ (max u1 u3)} (Matrix.{u1, u1, u3} ι ι R) (fun (x : Matrix.{u1, u1, u3} ι ι R) => Membership.mem.{max u1 u3, max u1 u3} (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.{u3, max u3 u1} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (SetLike.instMembership.{max u1 u3, max u1 u3} (Subalgebra.{u3, max u3 u1} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))))) x (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{max u1 u3} (Subtype.{succ (max u1 u3)} (Matrix.{u1, u1, u3} ι ι R) (fun (x : Matrix.{u1, u1, u3} ι ι R) => Membership.mem.{max u1 u3, max u1 u3} (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.{u3, max u3 u1} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (SetLike.instMembership.{max u1 u3, max u1 u3} (Subalgebra.{u3, max u3 u1} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))))) x (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (Semiring.toNonAssocSemiring.{max u1 u3} (Subtype.{succ (max u1 u3)} (Matrix.{u1, u1, u3} ι ι R) (fun (x : Matrix.{u1, u1, u3} ι ι R) => Membership.mem.{max u1 u3, max u1 u3} (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.{u3, max u3 u1} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (SetLike.instMembership.{max u1 u3, max u1 u3} (Subalgebra.{u3, max u3 u1} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))))) x (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (Subalgebra.toSemiring.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))) (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))))))) (AddCommMonoid.toAddMonoid.{u2} (Module.End.{u3, u2} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} (Module.End.{u3, u2} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} (Module.End.{u3, u2} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (Semiring.toNonAssocSemiring.{u2} (Module.End.{u3, u2} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (Module.End.semiring.{u3, u2} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4))))) (Module.toDistribMulAction.{u3, max u1 u3} R (Subtype.{succ (max u1 u3)} (Matrix.{u1, u1, u3} ι ι R) (fun (x : Matrix.{u1, u1, u3} ι ι R) => Membership.mem.{max u1 u3, max u1 u3} (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.{u3, max u3 u1} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (SetLike.instMembership.{max u1 u3, max u1 u3} (Subalgebra.{u3, max u3 u1} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))))) x (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{max u1 u3} (Subtype.{succ (max u1 u3)} (Matrix.{u1, u1, u3} ι ι R) (fun (x : Matrix.{u1, u1, u3} ι ι R) => Membership.mem.{max u1 u3, max u1 u3} (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.{u3, max u3 u1} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (SetLike.instMembership.{max u1 u3, max u1 u3} (Subalgebra.{u3, max u3 u1} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))))) x (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{max u1 u3} (Subtype.{succ (max u1 u3)} (Matrix.{u1, u1, u3} ι ι R) (fun (x : Matrix.{u1, u1, u3} ι ι R) => Membership.mem.{max u1 u3, max u1 u3} (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.{u3, max u3 u1} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (SetLike.instMembership.{max u1 u3, max u1 u3} (Subalgebra.{u3, max u3 u1} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))))) x (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (Semiring.toNonAssocSemiring.{max u1 u3} (Subtype.{succ (max u1 u3)} (Matrix.{u1, u1, u3} ι ι R) (fun (x : Matrix.{u1, u1, u3} ι ι R) => Membership.mem.{max u1 u3, max u1 u3} (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.{u3, max u3 u1} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (SetLike.instMembership.{max u1 u3, max u1 u3} (Subalgebra.{u3, max u3 u1} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))))) x (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (Subalgebra.toSemiring.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))) (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))))) (Algebra.toModule.{u3, max u1 u3} R (Subtype.{succ (max u1 u3)} (Matrix.{u1, u1, u3} ι ι R) (fun (x : Matrix.{u1, u1, u3} ι ι R) => Membership.mem.{max u1 u3, max u1 u3} (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.{u3, max u3 u1} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (SetLike.instMembership.{max u1 u3, max u1 u3} (Subalgebra.{u3, max u3 u1} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))))) x (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (CommRing.toCommSemiring.{u3} R _inst_3) (Subalgebra.toSemiring.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))) (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))) (Subalgebra.instAlgebraSubtypeMemSubalgebraInstMembershipInstSetLikeSubalgebraToSemiring.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))) (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))))) (Module.toDistribMulAction.{u3, u2} R (Module.End.{u3, u2} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} (Module.End.{u3, u2} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} (Module.End.{u3, u2} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (Semiring.toNonAssocSemiring.{u2} (Module.End.{u3, u2} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (Module.End.semiring.{u3, u2} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4)))) (Algebra.toModule.{u3, u2} R (Module.End.{u3, u2} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (CommRing.toCommSemiring.{u3} R _inst_3) (Module.End.semiring.{u3, u2} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (Module.instAlgebraEndToSemiringSemiring.{u3, u2} R M (CommRing.toCommSemiring.{u3} R _inst_3) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4))) (NonUnitalAlgHomClass.toDistribMulActionHomClass.{max (max u1 u2) u3, u3, max u1 u3, u2} (AlgHom.{u3, max u1 u3, u2} R (Subtype.{succ (max u1 u3)} (Matrix.{u1, u1, u3} ι ι R) (fun (x : Matrix.{u1, u1, u3} ι ι R) => Membership.mem.{max u1 u3, max u1 u3} (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.{u3, max u3 u1} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (SetLike.instMembership.{max u1 u3, max u1 u3} (Subalgebra.{u3, max u3 u1} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))))) x (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (Module.End.{u3, u2} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (CommRing.toCommSemiring.{u3} R _inst_3) (Subalgebra.toSemiring.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))) (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))) (Module.End.semiring.{u3, u2} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (Subalgebra.instAlgebraSubtypeMemSubalgebraInstMembershipInstSetLikeSubalgebraToSemiring.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))) (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))) (Module.instAlgebraEndToSemiringSemiring.{u3, u2} R M (CommRing.toCommSemiring.{u3} R _inst_3) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4)) R (Subtype.{succ (max u1 u3)} (Matrix.{u1, u1, u3} ι ι R) (fun (x : Matrix.{u1, u1, u3} ι ι R) => Membership.mem.{max u1 u3, max u1 u3} (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.{u3, max u3 u1} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (SetLike.instMembership.{max u1 u3, max u1 u3} (Subalgebra.{u3, max u3 u1} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))))) x (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (Module.End.{u3, u2} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{max u1 u3} (Subtype.{succ (max u1 u3)} (Matrix.{u1, u1, u3} ι ι R) (fun (x : Matrix.{u1, u1, u3} ι ι R) => Membership.mem.{max u1 u3, max u1 u3} (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.{u3, max u3 u1} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (SetLike.instMembership.{max u1 u3, max u1 u3} (Subalgebra.{u3, max u3 u1} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))))) x (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (Semiring.toNonAssocSemiring.{max u1 u3} (Subtype.{succ (max u1 u3)} (Matrix.{u1, u1, u3} ι ι R) (fun (x : Matrix.{u1, u1, u3} ι ι R) => Membership.mem.{max u1 u3, max u1 u3} (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.{u3, max u3 u1} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (SetLike.instMembership.{max u1 u3, max u1 u3} (Subalgebra.{u3, max u3 u1} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))))) x (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (Subalgebra.toSemiring.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))) (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))))) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} (Module.End.{u3, u2} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (Semiring.toNonAssocSemiring.{u2} (Module.End.{u3, u2} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (Module.End.semiring.{u3, u2} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4))) (Module.toDistribMulAction.{u3, max u1 u3} R (Subtype.{succ (max u1 u3)} (Matrix.{u1, u1, u3} ι ι R) (fun (x : Matrix.{u1, u1, u3} ι ι R) => Membership.mem.{max u1 u3, max u1 u3} (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.{u3, max u3 u1} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (SetLike.instMembership.{max u1 u3, max u1 u3} (Subalgebra.{u3, max u3 u1} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))))) x (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{max u1 u3} (Subtype.{succ (max u1 u3)} (Matrix.{u1, u1, u3} ι ι R) (fun (x : Matrix.{u1, u1, u3} ι ι R) => Membership.mem.{max u1 u3, max u1 u3} (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.{u3, max u3 u1} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (SetLike.instMembership.{max u1 u3, max u1 u3} (Subalgebra.{u3, max u3 u1} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))))) x (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{max u1 u3} (Subtype.{succ (max u1 u3)} (Matrix.{u1, u1, u3} ι ι R) (fun (x : Matrix.{u1, u1, u3} ι ι R) => Membership.mem.{max u1 u3, max u1 u3} (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.{u3, max u3 u1} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (SetLike.instMembership.{max u1 u3, max u1 u3} (Subalgebra.{u3, max u3 u1} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))))) x (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (Semiring.toNonAssocSemiring.{max u1 u3} (Subtype.{succ (max u1 u3)} (Matrix.{u1, u1, u3} ι ι R) (fun (x : Matrix.{u1, u1, u3} ι ι R) => Membership.mem.{max u1 u3, max u1 u3} (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.{u3, max u3 u1} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (SetLike.instMembership.{max u1 u3, max u1 u3} (Subalgebra.{u3, max u3 u1} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))))) x (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (Subalgebra.toSemiring.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))) (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))))) (Algebra.toModule.{u3, max u1 u3} R (Subtype.{succ (max u1 u3)} (Matrix.{u1, u1, u3} ι ι R) (fun (x : Matrix.{u1, u1, u3} ι ι R) => Membership.mem.{max u1 u3, max u1 u3} (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.{u3, max u3 u1} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (SetLike.instMembership.{max u1 u3, max u1 u3} (Subalgebra.{u3, max u3 u1} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))))) x (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (CommRing.toCommSemiring.{u3} R _inst_3) (Subalgebra.toSemiring.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))) (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))) (Subalgebra.instAlgebraSubtypeMemSubalgebraInstMembershipInstSetLikeSubalgebraToSemiring.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))) (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))))) (Module.toDistribMulAction.{u3, u2} R (Module.End.{u3, u2} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} (Module.End.{u3, u2} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} (Module.End.{u3, u2} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (Semiring.toNonAssocSemiring.{u2} (Module.End.{u3, u2} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (Module.End.semiring.{u3, u2} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4)))) (Algebra.toModule.{u3, u2} R (Module.End.{u3, u2} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (CommRing.toCommSemiring.{u3} R _inst_3) (Module.End.semiring.{u3, u2} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (Module.instAlgebraEndToSemiringSemiring.{u3, u2} R M (CommRing.toCommSemiring.{u3} R _inst_3) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4))) (AlgHom.instNonUnitalAlgHomClassToMonoidToMonoidWithZeroToSemiringToNonUnitalNonAssocSemiringToNonAssocSemiringToNonUnitalNonAssocSemiringToNonAssocSemiringToDistribMulActionToAddCommMonoidToModuleToDistribMulActionToAddCommMonoidToModule.{u3, max u1 u3, u2, max (max u1 u2) u3} R (Subtype.{succ (max u1 u3)} (Matrix.{u1, u1, u3} ι ι R) (fun (x : Matrix.{u1, u1, u3} ι ι R) => Membership.mem.{max u1 u3, max u1 u3} (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.{u3, max u3 u1} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (SetLike.instMembership.{max u1 u3, max u1 u3} (Subalgebra.{u3, max u3 u1} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))))) x (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (Module.End.{u3, u2} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (CommRing.toCommSemiring.{u3} R _inst_3) (Subalgebra.toSemiring.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))) (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))) (Module.End.semiring.{u3, u2} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (Subalgebra.instAlgebraSubtypeMemSubalgebraInstMembershipInstSetLikeSubalgebraToSemiring.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))) (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))) (Module.instAlgebraEndToSemiringSemiring.{u3, u2} R M (CommRing.toCommSemiring.{u3} R _inst_3) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (AlgHom.{u3, max u1 u3, u2} R (Subtype.{succ (max u1 u3)} (Matrix.{u1, u1, u3} ι ι R) (fun (x : Matrix.{u1, u1, u3} ι ι R) => Membership.mem.{max u1 u3, max u1 u3} (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.{u3, max u3 u1} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (SetLike.instMembership.{max u1 u3, max u1 u3} (Subalgebra.{u3, max u3 u1} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))))) x (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (Module.End.{u3, u2} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (CommRing.toCommSemiring.{u3} R _inst_3) (Subalgebra.toSemiring.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))) (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))) (Module.End.semiring.{u3, u2} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (Subalgebra.instAlgebraSubtypeMemSubalgebraInstMembershipInstSetLikeSubalgebraToSemiring.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))) (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))) (Module.instAlgebraEndToSemiringSemiring.{u3, u2} R M (CommRing.toCommSemiring.{u3} R _inst_3) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4)) (AlgHom.algHomClass.{u3, max u1 u3, u2} R (Subtype.{succ (max u1 u3)} (Matrix.{u1, u1, u3} ι ι R) (fun (x : Matrix.{u1, u1, u3} ι ι R) => Membership.mem.{max u1 u3, max u1 u3} (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.{u3, max u3 u1} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (SetLike.instMembership.{max u1 u3, max u1 u3} (Subalgebra.{u3, max u3 u1} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))))) x (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (Module.End.{u3, u2} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (CommRing.toCommSemiring.{u3} R _inst_3) (Subalgebra.toSemiring.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))) (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))) (Module.End.semiring.{u3, u2} R M (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (Subalgebra.instAlgebraSubtypeMemSubalgebraInstMembershipInstSetLikeSubalgebraToSemiring.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))) (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))) (Module.instAlgebraEndToSemiringSemiring.{u3, u2} R M (CommRing.toCommSemiring.{u3} R _inst_3) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4)))))) (Matrix.isRepresentation.toEnd.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b hb (fun (a : ι) (b : ι) => _inst_5 a b)) M_1) f) (forall (i : ι) (j : ι), Membership.mem.{u3, u3} R (Ideal.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))) (SetLike.instMembership.{u3, u3} (Ideal.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))) R (Submodule.setLike.{u3, u3} R R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} R (Semiring.toNonAssocSemiring.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))))) (Semiring.toModule.{u3} R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))))) (Subtype.val.{max (succ u1) (succ u3)} (Matrix.{u1, u1, u3} ι ι R) (fun (x : Matrix.{u1, u1, u3} ι ι R) => Membership.mem.{max u1 u3, max u1 u3} (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.{u3, max u3 u1} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (SetLike.instMembership.{max u1 u3, max u1 u3} (Subalgebra.{u3, max u3 u1} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u3} R _inst_3) (CommSemiring.toSemiring.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))))) x (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))) M_1 i j) I)))
+Case conversion may be inaccurate. Consider using '#align matrix.is_representation.to_End_exists_mem_ideal Matrix.isRepresentation.toEnd_exists_mem_idealₓ'. -/
theorem Matrix.isRepresentation.toEnd_exists_mem_ideal (f : Module.End R M) (I : Ideal R)
(hI : f.range ≤ I • ⊤) : ∃ M, Matrix.isRepresentation.toEnd R b hb M = f ∧ ∀ i j, M.1 i j ∈ I :=
by
@@ -217,6 +337,12 @@ theorem Matrix.isRepresentation.toEnd_exists_mem_ideal (f : Module.End R M) (I :
fun i j => (bM' (b j) i).Prop⟩
#align matrix.is_representation.to_End_exists_mem_ideal Matrix.isRepresentation.toEnd_exists_mem_ideal
+/- warning: matrix.is_representation.to_End_surjective -> Matrix.isRepresentation.toEnd_surjective is a dubious translation:
+lean 3 declaration is
+ forall {ι : Type.{u1}} [_inst_1 : Fintype.{u1} ι] {M : Type.{u2}} [_inst_2 : AddCommGroup.{u2} M] (R : Type.{u3}) [_inst_3 : CommRing.{u3} R] [_inst_4 : Module.{u3, u2} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2)] (b : ι -> M) (hb : Eq.{succ u2} (Submodule.{u3, u2} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (Submodule.span.{u3, u2} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4 (Set.range.{u2, succ u1} M ι b)) (Top.top.{u2} (Submodule.{u3, u2} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (Submodule.hasTop.{u3, u2} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4))) [_inst_5 : DecidableEq.{succ u1} ι], Function.Surjective.{succ (max u1 u3), succ u2} (coeSort.{succ (max u1 u3), succ (succ (max u1 u3))} (Subalgebra.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b) a b)) (Matrix.algebra.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b) a b) (CommRing.toCommSemiring.{u3} R _inst_3) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) Type.{max u1 u3} (SetLike.hasCoeToSort.{max u1 u3, max u1 u3} (Subalgebra.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b) a b)) (Matrix.algebra.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b) a b) (CommRing.toCommSemiring.{u3} R _inst_3) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.setLike.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b) a b)) (Matrix.algebra.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b) a b) (CommRing.toCommSemiring.{u3} R _inst_3) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))))) (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b))) (Module.End.{u3, u2} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (coeFn.{max (succ (max u1 u3)) (succ u2), max (succ (max u1 u3)) (succ u2)} (AlgHom.{u3, max u1 u3, u2} R (coeSort.{succ (max u1 u3), succ (succ (max u1 u3))} (Subalgebra.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b) a b)) (Matrix.algebra.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b) a b) (CommRing.toCommSemiring.{u3} R _inst_3) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) Type.{max u1 u3} (SetLike.hasCoeToSort.{max u1 u3, max u1 u3} (Subalgebra.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b) a b)) (Matrix.algebra.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b) a b) (CommRing.toCommSemiring.{u3} R _inst_3) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.setLike.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b) a b)) (Matrix.algebra.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b) a b) (CommRing.toCommSemiring.{u3} R _inst_3) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))))) (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b))) (Module.End.{u3, u2} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (CommRing.toCommSemiring.{u3} R _inst_3) (Subalgebra.toSemiring.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b) a b)) (Matrix.algebra.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b) a b) (CommRing.toCommSemiring.{u3} R _inst_3) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))) (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b))) (Module.End.semiring.{u3, u2} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (Subalgebra.algebra.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b) a b)) (Matrix.algebra.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b) a b) (CommRing.toCommSemiring.{u3} R _inst_3) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))) (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b))) (Module.End.algebra.{u3, u2} R M (CommRing.toCommSemiring.{u3} R _inst_3) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4)) (fun (_x : AlgHom.{u3, max u1 u3, u2} R (coeSort.{succ (max u1 u3), succ (succ (max u1 u3))} (Subalgebra.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b) a b)) (Matrix.algebra.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b) a b) (CommRing.toCommSemiring.{u3} R _inst_3) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) Type.{max u1 u3} (SetLike.hasCoeToSort.{max u1 u3, max u1 u3} (Subalgebra.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b) a b)) (Matrix.algebra.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b) a b) (CommRing.toCommSemiring.{u3} R _inst_3) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.setLike.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b) a b)) (Matrix.algebra.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b) a b) (CommRing.toCommSemiring.{u3} R _inst_3) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))))) (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b))) (Module.End.{u3, u2} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (CommRing.toCommSemiring.{u3} R _inst_3) (Subalgebra.toSemiring.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b) a b)) (Matrix.algebra.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b) a b) (CommRing.toCommSemiring.{u3} R _inst_3) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))) (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b))) (Module.End.semiring.{u3, u2} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (Subalgebra.algebra.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b) a b)) (Matrix.algebra.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b) a b) (CommRing.toCommSemiring.{u3} R _inst_3) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))) (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b))) (Module.End.algebra.{u3, u2} R M (CommRing.toCommSemiring.{u3} R _inst_3) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4)) => (coeSort.{succ (max u1 u3), succ (succ (max u1 u3))} (Subalgebra.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b) a b)) (Matrix.algebra.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b) a b) (CommRing.toCommSemiring.{u3} R _inst_3) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) Type.{max u1 u3} (SetLike.hasCoeToSort.{max u1 u3, max u1 u3} (Subalgebra.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b) a b)) (Matrix.algebra.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b) a b) (CommRing.toCommSemiring.{u3} R _inst_3) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.setLike.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b) a b)) (Matrix.algebra.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b) a b) (CommRing.toCommSemiring.{u3} R _inst_3) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))))) (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b))) -> (Module.End.{u3, u2} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4)) ([anonymous].{u3, max u1 u3, u2} R (coeSort.{succ (max u1 u3), succ (succ (max u1 u3))} (Subalgebra.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b) a b)) (Matrix.algebra.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b) a b) (CommRing.toCommSemiring.{u3} R _inst_3) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) Type.{max u1 u3} (SetLike.hasCoeToSort.{max u1 u3, max u1 u3} (Subalgebra.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b) a b)) (Matrix.algebra.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b) a b) (CommRing.toCommSemiring.{u3} R _inst_3) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3)))) (Matrix.{u1, u1, u3} ι ι R) (Subalgebra.setLike.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b) a b)) (Matrix.algebra.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b) a b) (CommRing.toCommSemiring.{u3} R _inst_3) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))))) (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b))) (Module.End.{u3, u2} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (CommRing.toCommSemiring.{u3} R _inst_3) (Subalgebra.toSemiring.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b) a b)) (Matrix.algebra.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b) a b) (CommRing.toCommSemiring.{u3} R _inst_3) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))) (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b))) (Module.End.semiring.{u3, u2} R M (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4) (Subalgebra.algebra.{u3, max u1 u3} R (Matrix.{u1, u1, u3} ι ι R) (CommRing.toCommSemiring.{u3} R _inst_3) (Matrix.semiring.{u3, u1} ι R (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b) a b)) (Matrix.algebra.{u3, u1, u3} ι R R _inst_1 (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b) a b) (CommRing.toCommSemiring.{u3} R _inst_3) (Ring.toSemiring.{u3} R (CommRing.toRing.{u3} R _inst_3)) (Algebra.id.{u3} R (CommRing.toCommSemiring.{u3} R _inst_3))) (Matrix.isRepresentation.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => (fun (a : ι) (b : ι) => _inst_5 a b) a b))) (Module.End.algebra.{u3, u2} R M (CommRing.toCommSemiring.{u3} R _inst_3) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_4)) (Matrix.isRepresentation.toEnd.{u1, u2, u3} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b hb (fun (a : ι) (b : ι) => _inst_5 a b)))
+but is expected to have type
+ forall {ι : Type.{u3}} [_inst_1 : Fintype.{u3} ι] {M : Type.{u1}} [_inst_2 : AddCommGroup.{u1} M] (R : Type.{u2}) [_inst_3 : CommRing.{u2} R] [_inst_4 : Module.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2)] (b : ι -> M) (hb : Eq.{succ u1} (Submodule.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (Submodule.span.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4 (Set.range.{u1, succ u3} M ι b)) (Top.top.{u1} (Submodule.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (Submodule.instTopSubmodule.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4))) [_inst_5 : DecidableEq.{succ u3} ι], Function.Surjective.{max (succ u3) (succ u2), succ u1} (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (FunLike.coe.{max (max (succ u3) (succ u1)) (succ u2), max (succ u3) (succ u2), succ u1} (AlgHom.{u2, max u3 u2, u1} R (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (CommRing.toCommSemiring.{u2} R _inst_3) (Subalgebra.toSemiring.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))) (Module.End.semiring.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (Subalgebra.instAlgebraSubtypeMemSubalgebraInstMembershipInstSetLikeSubalgebraToSemiring.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))) (Module.instAlgebraEndToSemiringSemiring.{u2, u1} R M (CommRing.toCommSemiring.{u2} R _inst_3) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4)) (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (fun (_x : Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) => Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) _x) (SMulHomClass.toFunLike.{max (max u3 u1) u2, u2, max u3 u2, u1} (AlgHom.{u2, max u3 u2, u1} R (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (CommRing.toCommSemiring.{u2} R _inst_3) (Subalgebra.toSemiring.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))) (Module.End.semiring.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (Subalgebra.instAlgebraSubtypeMemSubalgebraInstMembershipInstSetLikeSubalgebraToSemiring.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))) (Module.instAlgebraEndToSemiringSemiring.{u2, u1} R M (CommRing.toCommSemiring.{u2} R _inst_3) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4)) R (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (SMulZeroClass.toSMul.{u2, max u3 u2} R (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (AddMonoid.toZero.{max u3 u2} (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (AddCommMonoid.toAddMonoid.{max u3 u2} (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (NonUnitalNonAssocSemiring.toAddCommMonoid.{max u3 u2} (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{max u3 u2} (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (Semiring.toNonAssocSemiring.{max u3 u2} (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (Subalgebra.toSemiring.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))))))) (DistribSMul.toSMulZeroClass.{u2, max u3 u2} R (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (AddMonoid.toAddZeroClass.{max u3 u2} (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (AddCommMonoid.toAddMonoid.{max u3 u2} (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (NonUnitalNonAssocSemiring.toAddCommMonoid.{max u3 u2} (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{max u3 u2} (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (Semiring.toNonAssocSemiring.{max u3 u2} (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (Subalgebra.toSemiring.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))))))) (DistribMulAction.toDistribSMul.{u2, max u3 u2} R (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (AddCommMonoid.toAddMonoid.{max u3 u2} (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (NonUnitalNonAssocSemiring.toAddCommMonoid.{max u3 u2} (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{max u3 u2} (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (Semiring.toNonAssocSemiring.{max u3 u2} (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (Subalgebra.toSemiring.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))))))) (Module.toDistribMulAction.{u2, max u3 u2} R (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{max u3 u2} (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{max u3 u2} (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (Semiring.toNonAssocSemiring.{max u3 u2} (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (Subalgebra.toSemiring.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))))) (Algebra.toModule.{u2, max u3 u2} R (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (CommRing.toCommSemiring.{u2} R _inst_3) (Subalgebra.toSemiring.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))) (Subalgebra.instAlgebraSubtypeMemSubalgebraInstMembershipInstSetLikeSubalgebraToSemiring.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))))))) (SMulZeroClass.toSMul.{u2, u1} R (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (AddMonoid.toZero.{u1} (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (AddCommMonoid.toAddMonoid.{u1} (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (Semiring.toNonAssocSemiring.{u1} (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (Module.End.semiring.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4)))))) (DistribSMul.toSMulZeroClass.{u2, u1} R (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (AddMonoid.toAddZeroClass.{u1} (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (AddCommMonoid.toAddMonoid.{u1} (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (Semiring.toNonAssocSemiring.{u1} (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (Module.End.semiring.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4)))))) (DistribMulAction.toDistribSMul.{u2, u1} R (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (AddCommMonoid.toAddMonoid.{u1} (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (Semiring.toNonAssocSemiring.{u1} (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (Module.End.semiring.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4))))) (Module.toDistribMulAction.{u2, u1} R (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (Semiring.toNonAssocSemiring.{u1} (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (Module.End.semiring.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4)))) (Algebra.toModule.{u2, u1} R (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (CommRing.toCommSemiring.{u2} R _inst_3) (Module.End.semiring.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (Module.instAlgebraEndToSemiringSemiring.{u2, u1} R M (CommRing.toCommSemiring.{u2} R _inst_3) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4)))))) (DistribMulActionHomClass.toSMulHomClass.{max (max u3 u1) u2, u2, max u3 u2, u1} (AlgHom.{u2, max u3 u2, u1} R (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (CommRing.toCommSemiring.{u2} R _inst_3) (Subalgebra.toSemiring.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))) (Module.End.semiring.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (Subalgebra.instAlgebraSubtypeMemSubalgebraInstMembershipInstSetLikeSubalgebraToSemiring.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))) (Module.instAlgebraEndToSemiringSemiring.{u2, u1} R M (CommRing.toCommSemiring.{u2} R _inst_3) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4)) R (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (AddCommMonoid.toAddMonoid.{max u3 u2} (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (NonUnitalNonAssocSemiring.toAddCommMonoid.{max u3 u2} (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{max u3 u2} (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (Semiring.toNonAssocSemiring.{max u3 u2} (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (Subalgebra.toSemiring.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))))))) (AddCommMonoid.toAddMonoid.{u1} (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (Semiring.toNonAssocSemiring.{u1} (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (Module.End.semiring.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4))))) (Module.toDistribMulAction.{u2, max u3 u2} R (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{max u3 u2} (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{max u3 u2} (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (Semiring.toNonAssocSemiring.{max u3 u2} (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (Subalgebra.toSemiring.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))))) (Algebra.toModule.{u2, max u3 u2} R (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (CommRing.toCommSemiring.{u2} R _inst_3) (Subalgebra.toSemiring.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))) (Subalgebra.instAlgebraSubtypeMemSubalgebraInstMembershipInstSetLikeSubalgebraToSemiring.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))))) (Module.toDistribMulAction.{u2, u1} R (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (Semiring.toNonAssocSemiring.{u1} (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (Module.End.semiring.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4)))) (Algebra.toModule.{u2, u1} R (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (CommRing.toCommSemiring.{u2} R _inst_3) (Module.End.semiring.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (Module.instAlgebraEndToSemiringSemiring.{u2, u1} R M (CommRing.toCommSemiring.{u2} R _inst_3) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4))) (NonUnitalAlgHomClass.toDistribMulActionHomClass.{max (max u3 u1) u2, u2, max u3 u2, u1} (AlgHom.{u2, max u3 u2, u1} R (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (CommRing.toCommSemiring.{u2} R _inst_3) (Subalgebra.toSemiring.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))) (Module.End.semiring.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (Subalgebra.instAlgebraSubtypeMemSubalgebraInstMembershipInstSetLikeSubalgebraToSemiring.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))) (Module.instAlgebraEndToSemiringSemiring.{u2, u1} R M (CommRing.toCommSemiring.{u2} R _inst_3) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4)) R (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{max u3 u2} (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (Semiring.toNonAssocSemiring.{max u3 u2} (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (Subalgebra.toSemiring.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))))) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (Semiring.toNonAssocSemiring.{u1} (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (Module.End.semiring.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4))) (Module.toDistribMulAction.{u2, max u3 u2} R (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{max u3 u2} (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{max u3 u2} (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (Semiring.toNonAssocSemiring.{max u3 u2} (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (Subalgebra.toSemiring.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))))) (Algebra.toModule.{u2, max u3 u2} R (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (CommRing.toCommSemiring.{u2} R _inst_3) (Subalgebra.toSemiring.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))) (Subalgebra.instAlgebraSubtypeMemSubalgebraInstMembershipInstSetLikeSubalgebraToSemiring.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))))) (Module.toDistribMulAction.{u2, u1} R (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (Semiring.toNonAssocSemiring.{u1} (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (Module.End.semiring.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4)))) (Algebra.toModule.{u2, u1} R (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (CommRing.toCommSemiring.{u2} R _inst_3) (Module.End.semiring.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (Module.instAlgebraEndToSemiringSemiring.{u2, u1} R M (CommRing.toCommSemiring.{u2} R _inst_3) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4))) (AlgHom.instNonUnitalAlgHomClassToMonoidToMonoidWithZeroToSemiringToNonUnitalNonAssocSemiringToNonAssocSemiringToNonUnitalNonAssocSemiringToNonAssocSemiringToDistribMulActionToAddCommMonoidToModuleToDistribMulActionToAddCommMonoidToModule.{u2, max u3 u2, u1, max (max u3 u1) u2} R (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (CommRing.toCommSemiring.{u2} R _inst_3) (Subalgebra.toSemiring.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))) (Module.End.semiring.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (Subalgebra.instAlgebraSubtypeMemSubalgebraInstMembershipInstSetLikeSubalgebraToSemiring.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))) (Module.instAlgebraEndToSemiringSemiring.{u2, u1} R M (CommRing.toCommSemiring.{u2} R _inst_3) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (AlgHom.{u2, max u3 u2, u1} R (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (CommRing.toCommSemiring.{u2} R _inst_3) (Subalgebra.toSemiring.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))) (Module.End.semiring.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (Subalgebra.instAlgebraSubtypeMemSubalgebraInstMembershipInstSetLikeSubalgebraToSemiring.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))) (Module.instAlgebraEndToSemiringSemiring.{u2, u1} R M (CommRing.toCommSemiring.{u2} R _inst_3) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4)) (AlgHom.algHomClass.{u2, max u3 u2, u1} R (Subtype.{succ (max u3 u2)} (Matrix.{u3, u3, u2} ι ι R) (fun (x : Matrix.{u3, u3, u2} ι ι R) => Membership.mem.{max u3 u2, max u3 u2} (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (SetLike.instMembership.{max u3 u2, max u3 u2} (Subalgebra.{u2, max u2 u3} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Matrix.{u3, u3, u2} ι ι R) (Subalgebra.instSetLikeSubalgebra.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) x (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b)))) (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (CommRing.toCommSemiring.{u2} R _inst_3) (Subalgebra.toSemiring.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))) (Module.End.semiring.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (Subalgebra.instAlgebraSubtypeMemSubalgebraInstMembershipInstSetLikeSubalgebraToSemiring.{u2, max u3 u2} R (Matrix.{u3, u3, u2} ι ι R) (CommRing.toCommSemiring.{u2} R _inst_3) (Matrix.semiring.{u2, u3} ι R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b)) (Matrix.instAlgebraMatrixSemiring.{u2, u3, u2} ι R R _inst_1 (fun (a : ι) (b : ι) => _inst_5 a b) (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (Matrix.isRepresentation.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b (fun (a : ι) (b : ι) => _inst_5 a b))) (Module.instAlgebraEndToSemiringSemiring.{u2, u1} R M (CommRing.toCommSemiring.{u2} R _inst_3) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4)))))) (Matrix.isRepresentation.toEnd.{u3, u1, u2} ι _inst_1 M _inst_2 R _inst_3 _inst_4 b hb (fun (a : ι) (b : ι) => _inst_5 a b)))
+Case conversion may be inaccurate. Consider using '#align matrix.is_representation.to_End_surjective Matrix.isRepresentation.toEnd_surjectiveₓ'. -/
theorem Matrix.isRepresentation.toEnd_surjective :
Function.Surjective (Matrix.isRepresentation.toEnd R b hb) :=
by
@@ -228,6 +354,12 @@ theorem Matrix.isRepresentation.toEnd_surjective :
end
+/- warning: linear_map.exists_monic_and_coeff_mem_pow_and_aeval_eq_zero_of_range_le_smul -> LinearMap.exists_monic_and_coeff_mem_pow_and_aeval_eq_zero_of_range_le_smul is a dubious translation:
+lean 3 declaration is
+ forall {M : Type.{u1}} [_inst_2 : AddCommGroup.{u1} M] (R : Type.{u2}) [_inst_3 : CommRing.{u2} R] [_inst_4 : Module.{u2, u1} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2)] [_inst_5 : Module.Finite.{u2, u1} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4] (f : Module.End.{u2, u1} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (I : Ideal.{u2} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_3))), (LE.le.{u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (Preorder.toHasLe.{u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (PartialOrder.toPreorder.{u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (SetLike.partialOrder.{u1, u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) M (Submodule.setLike.{u2, u1} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4)))) (LinearMap.range.{u2, u2, u1, u1, u1} R R M M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_3)) (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4 _inst_4 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_3)))) (Module.End.{u2, u1} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (LinearMap.semilinearMapClass.{u2, u2, u1, u1} R R M M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_3)) (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4 _inst_4 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_3))))) (RingHomSurjective.ids.{u2} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_3))) f) (SMul.smul.{u2, u1} (Ideal.{u2} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_3))) (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (Submodule.hasSMul'.{u2, u1} R M (CommRing.toCommSemiring.{u2} R _inst_3) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) I (Top.top.{u1} (Submodule.{u2, u1} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (Submodule.hasTop.{u2, u1} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4)))) -> (Exists.{succ u2} (Polynomial.{u2} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_3))) (fun (p : Polynomial.{u2} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_3))) => And (Polynomial.Monic.{u2} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_3)) p) (And (forall (k : Nat), Membership.Mem.{u2, u2} R (Ideal.{u2} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_3))) (SetLike.hasMem.{u2, u2} (Ideal.{u2} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_3))) R (Submodule.setLike.{u2, u2} R R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_3)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_3))))) (Semiring.toModule.{u2} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_3))))) (Polynomial.coeff.{u2} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_3)) p k) (HPow.hPow.{u2, 0, u2} (Ideal.{u2} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_3))) Nat (Ideal.{u2} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_3))) (instHPow.{u2, 0} (Ideal.{u2} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_3))) Nat (Monoid.Pow.{u2} (Ideal.{u2} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_3))) (MonoidWithZero.toMonoid.{u2} (Ideal.{u2} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_3))) (Semiring.toMonoidWithZero.{u2} (Ideal.{u2} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_3))) (IdemSemiring.toSemiring.{u2} (Ideal.{u2} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_3))) (Submodule.idemSemiring.{u2, u2} R (CommRing.toCommSemiring.{u2} R _inst_3) R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))))))) I (HSub.hSub.{0, 0, 0} Nat Nat Nat (instHSub.{0} Nat Nat.hasSub) (Polynomial.natDegree.{u2} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_3)) p) k))) (Eq.{succ u1} (Module.End.{u2, u1} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (coeFn.{max (succ u2) (succ u1), max (succ u2) (succ u1)} (AlgHom.{u2, u2, u1} R (Polynomial.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (Module.End.{u2, u1} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (CommRing.toCommSemiring.{u2} R _inst_3) (Polynomial.semiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (Module.End.semiring.{u2, u1} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (Polynomial.algebraOfAlgebra.{u2, u2} R R (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (Module.End.algebra.{u2, u1} R M (CommRing.toCommSemiring.{u2} R _inst_3) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4)) (fun (_x : AlgHom.{u2, u2, u1} R (Polynomial.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (Module.End.{u2, u1} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (CommRing.toCommSemiring.{u2} R _inst_3) (Polynomial.semiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (Module.End.semiring.{u2, u1} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (Polynomial.algebraOfAlgebra.{u2, u2} R R (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (Module.End.algebra.{u2, u1} R M (CommRing.toCommSemiring.{u2} R _inst_3) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4)) => (Polynomial.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) -> (Module.End.{u2, u1} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4)) ([anonymous].{u2, u2, u1} R (Polynomial.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (Module.End.{u2, u1} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (CommRing.toCommSemiring.{u2} R _inst_3) (Polynomial.semiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (Module.End.semiring.{u2, u1} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (Polynomial.algebraOfAlgebra.{u2, u2} R R (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (Module.End.algebra.{u2, u1} R M (CommRing.toCommSemiring.{u2} R _inst_3) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4)) (Polynomial.aeval.{u2, u1} R (Module.End.{u2, u1} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (CommRing.toCommSemiring.{u2} R _inst_3) (Module.End.semiring.{u2, u1} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (Module.End.algebra.{u2, u1} R M (CommRing.toCommSemiring.{u2} R _inst_3) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) f) p) (OfNat.ofNat.{u1} (Module.End.{u2, u1} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) 0 (OfNat.mk.{u1} (Module.End.{u2, u1} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) 0 (Zero.zero.{u1} (Module.End.{u2, u1} R M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (LinearMap.hasZero.{u2, u2, u1, u1} R R M M (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_3)) (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4 _inst_4 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R (CommRing.toRing.{u2} R _inst_3))))))))))))
+but is expected to have type
+ forall {M : Type.{u1}} [_inst_2 : AddCommGroup.{u1} M] (R : Type.{u2}) [_inst_3 : CommRing.{u2} R] [_inst_4 : Module.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2)] [_inst_5 : Module.Finite.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4] (f : Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (I : Ideal.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))), (LE.le.{u1} (Submodule.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (Preorder.toLE.{u1} (Submodule.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (PartialOrder.toPreorder.{u1} (Submodule.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (OmegaCompletePartialOrder.toPartialOrder.{u1} (Submodule.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (CompleteLattice.instOmegaCompletePartialOrder.{u1} (Submodule.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (Submodule.completeLattice.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4))))) (LinearMap.range.{u2, u2, u1, u1, u1} R R M M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4 _inst_4 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (LinearMap.semilinearMapClass.{u2, u2, u1, u1} R R M M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4 _inst_4 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) (RingHomSurjective.ids.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) f) (HSMul.hSMul.{u2, u1, u1} (Ideal.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (Submodule.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (Submodule.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (instHSMul.{u2, u1} (Ideal.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (Submodule.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (Submodule.hasSMul'.{u2, u1} R M (CommRing.toCommSemiring.{u2} R _inst_3) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4)) I (Top.top.{u1} (Submodule.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (Submodule.instTopSubmodule.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4)))) -> (Exists.{succ u2} (Polynomial.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (fun (p : Polynomial.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) => And (Polynomial.Monic.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) p) (And (forall (k : Nat), Membership.mem.{u2, u2} R (Ideal.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (SetLike.instMembership.{u2, u2} (Ideal.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) R (Submodule.setLike.{u2, u2} R R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) (Semiring.toModule.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) (Polynomial.coeff.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) p k) (HPow.hPow.{u2, 0, u2} (Ideal.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) Nat (Ideal.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (instHPow.{u2, 0} (Ideal.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) Nat (Monoid.Pow.{u2} (Ideal.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (MonoidWithZero.toMonoid.{u2} (Ideal.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (Semiring.toMonoidWithZero.{u2} (Ideal.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (IdemSemiring.toSemiring.{u2} (Ideal.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (Submodule.idemSemiring.{u2, u2} R (CommRing.toCommSemiring.{u2} R _inst_3) R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))))))) I (HSub.hSub.{0, 0, 0} Nat Nat Nat (instHSub.{0} Nat instSubNat) (Polynomial.natDegree.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) p) k))) (Eq.{succ u1} ((fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : Polynomial.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) => Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) p) (FunLike.coe.{max (succ u1) (succ u2), succ u2, succ u1} (AlgHom.{u2, u2, u1} R (Polynomial.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (CommRing.toCommSemiring.{u2} R _inst_3) (Polynomial.semiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (Module.End.semiring.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (Polynomial.algebraOfAlgebra.{u2, u2} R R (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (Module.instAlgebraEndToSemiringSemiring.{u2, u1} R M (CommRing.toCommSemiring.{u2} R _inst_3) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4)) (Polynomial.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (fun (_x : Polynomial.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : Polynomial.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) => Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) _x) (SMulHomClass.toFunLike.{max u1 u2, u2, u2, u1} (AlgHom.{u2, u2, u1} R (Polynomial.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (CommRing.toCommSemiring.{u2} R _inst_3) (Polynomial.semiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (Module.End.semiring.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (Polynomial.algebraOfAlgebra.{u2, u2} R R (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (Module.instAlgebraEndToSemiringSemiring.{u2, u1} R M (CommRing.toCommSemiring.{u2} R _inst_3) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4)) R (Polynomial.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (SMulZeroClass.toSMul.{u2, u2} R (Polynomial.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (AddMonoid.toZero.{u2} (Polynomial.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (AddCommMonoid.toAddMonoid.{u2} (Polynomial.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} (Polynomial.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} (Polynomial.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (Semiring.toNonAssocSemiring.{u2} (Polynomial.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (Polynomial.semiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))))))) (DistribSMul.toSMulZeroClass.{u2, u2} R (Polynomial.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (AddMonoid.toAddZeroClass.{u2} (Polynomial.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (AddCommMonoid.toAddMonoid.{u2} (Polynomial.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} (Polynomial.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} (Polynomial.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (Semiring.toNonAssocSemiring.{u2} (Polynomial.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (Polynomial.semiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))))))) (DistribMulAction.toDistribSMul.{u2, u2} R (Polynomial.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (AddCommMonoid.toAddMonoid.{u2} (Polynomial.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} (Polynomial.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} (Polynomial.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (Semiring.toNonAssocSemiring.{u2} (Polynomial.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (Polynomial.semiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))))) (Module.toDistribMulAction.{u2, u2} R (Polynomial.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} (Polynomial.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} (Polynomial.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (Semiring.toNonAssocSemiring.{u2} (Polynomial.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (Polynomial.semiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))))) (Algebra.toModule.{u2, u2} R (Polynomial.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (CommRing.toCommSemiring.{u2} R _inst_3) (Polynomial.semiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (Polynomial.algebraOfAlgebra.{u2, u2} R R (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))))))) (SMulZeroClass.toSMul.{u2, u1} R (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (AddMonoid.toZero.{u1} (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (AddCommMonoid.toAddMonoid.{u1} (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (Semiring.toNonAssocSemiring.{u1} (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (Module.End.semiring.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4)))))) (DistribSMul.toSMulZeroClass.{u2, u1} R (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (AddMonoid.toAddZeroClass.{u1} (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (AddCommMonoid.toAddMonoid.{u1} (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (Semiring.toNonAssocSemiring.{u1} (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (Module.End.semiring.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4)))))) (DistribMulAction.toDistribSMul.{u2, u1} R (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (AddCommMonoid.toAddMonoid.{u1} (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (Semiring.toNonAssocSemiring.{u1} (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (Module.End.semiring.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4))))) (Module.toDistribMulAction.{u2, u1} R (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (Semiring.toNonAssocSemiring.{u1} (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (Module.End.semiring.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4)))) (Algebra.toModule.{u2, u1} R (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (CommRing.toCommSemiring.{u2} R _inst_3) (Module.End.semiring.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (Module.instAlgebraEndToSemiringSemiring.{u2, u1} R M (CommRing.toCommSemiring.{u2} R _inst_3) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4)))))) (DistribMulActionHomClass.toSMulHomClass.{max u1 u2, u2, u2, u1} (AlgHom.{u2, u2, u1} R (Polynomial.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (CommRing.toCommSemiring.{u2} R _inst_3) (Polynomial.semiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (Module.End.semiring.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (Polynomial.algebraOfAlgebra.{u2, u2} R R (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (Module.instAlgebraEndToSemiringSemiring.{u2, u1} R M (CommRing.toCommSemiring.{u2} R _inst_3) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4)) R (Polynomial.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (AddCommMonoid.toAddMonoid.{u2} (Polynomial.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} (Polynomial.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} (Polynomial.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (Semiring.toNonAssocSemiring.{u2} (Polynomial.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (Polynomial.semiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))))) (AddCommMonoid.toAddMonoid.{u1} (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (Semiring.toNonAssocSemiring.{u1} (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (Module.End.semiring.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4))))) (Module.toDistribMulAction.{u2, u2} R (Polynomial.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} (Polynomial.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} (Polynomial.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (Semiring.toNonAssocSemiring.{u2} (Polynomial.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (Polynomial.semiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))))) (Algebra.toModule.{u2, u2} R (Polynomial.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (CommRing.toCommSemiring.{u2} R _inst_3) (Polynomial.semiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (Polynomial.algebraOfAlgebra.{u2, u2} R R (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) (Module.toDistribMulAction.{u2, u1} R (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (Semiring.toNonAssocSemiring.{u1} (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (Module.End.semiring.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4)))) (Algebra.toModule.{u2, u1} R (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (CommRing.toCommSemiring.{u2} R _inst_3) (Module.End.semiring.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (Module.instAlgebraEndToSemiringSemiring.{u2, u1} R M (CommRing.toCommSemiring.{u2} R _inst_3) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4))) (NonUnitalAlgHomClass.toDistribMulActionHomClass.{max u1 u2, u2, u2, u1} (AlgHom.{u2, u2, u1} R (Polynomial.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (CommRing.toCommSemiring.{u2} R _inst_3) (Polynomial.semiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (Module.End.semiring.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (Polynomial.algebraOfAlgebra.{u2, u2} R R (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (Module.instAlgebraEndToSemiringSemiring.{u2, u1} R M (CommRing.toCommSemiring.{u2} R _inst_3) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4)) R (Polynomial.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} (Polynomial.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (Semiring.toNonAssocSemiring.{u2} (Polynomial.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (Polynomial.semiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (Semiring.toNonAssocSemiring.{u1} (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (Module.End.semiring.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4))) (Module.toDistribMulAction.{u2, u2} R (Polynomial.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} (Polynomial.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} (Polynomial.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (Semiring.toNonAssocSemiring.{u2} (Polynomial.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (Polynomial.semiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))))) (Algebra.toModule.{u2, u2} R (Polynomial.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (CommRing.toCommSemiring.{u2} R _inst_3) (Polynomial.semiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (Polynomial.algebraOfAlgebra.{u2, u2} R R (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))))) (Module.toDistribMulAction.{u2, u1} R (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (Semiring.toNonAssocSemiring.{u1} (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (Module.End.semiring.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4)))) (Algebra.toModule.{u2, u1} R (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (CommRing.toCommSemiring.{u2} R _inst_3) (Module.End.semiring.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (Module.instAlgebraEndToSemiringSemiring.{u2, u1} R M (CommRing.toCommSemiring.{u2} R _inst_3) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4))) (AlgHom.instNonUnitalAlgHomClassToMonoidToMonoidWithZeroToSemiringToNonUnitalNonAssocSemiringToNonAssocSemiringToNonUnitalNonAssocSemiringToNonAssocSemiringToDistribMulActionToAddCommMonoidToModuleToDistribMulActionToAddCommMonoidToModule.{u2, u2, u1, max u1 u2} R (Polynomial.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (CommRing.toCommSemiring.{u2} R _inst_3) (Polynomial.semiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (Module.End.semiring.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (Polynomial.algebraOfAlgebra.{u2, u2} R R (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (Module.instAlgebraEndToSemiringSemiring.{u2, u1} R M (CommRing.toCommSemiring.{u2} R _inst_3) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (AlgHom.{u2, u2, u1} R (Polynomial.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (CommRing.toCommSemiring.{u2} R _inst_3) (Polynomial.semiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (Module.End.semiring.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (Polynomial.algebraOfAlgebra.{u2, u2} R R (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (Module.instAlgebraEndToSemiringSemiring.{u2, u1} R M (CommRing.toCommSemiring.{u2} R _inst_3) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4)) (AlgHom.algHomClass.{u2, u2, u1} R (Polynomial.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (CommRing.toCommSemiring.{u2} R _inst_3) (Polynomial.semiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (Module.End.semiring.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (Polynomial.algebraOfAlgebra.{u2, u2} R R (CommRing.toCommSemiring.{u2} R _inst_3) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (Algebra.id.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) (Module.instAlgebraEndToSemiringSemiring.{u2, u1} R M (CommRing.toCommSemiring.{u2} R _inst_3) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4)))))) (Polynomial.aeval.{u2, u1} R (Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (CommRing.toCommSemiring.{u2} R _inst_3) (Module.End.semiring.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) (Module.instAlgebraEndToSemiringSemiring.{u2, u1} R M (CommRing.toCommSemiring.{u2} R _inst_3) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) f) p) (OfNat.ofNat.{u1} ((fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : Polynomial.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) => Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) p) 0 (Zero.toOfNat0.{u1} ((fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : Polynomial.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3))) => Module.End.{u2, u1} R M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4) p) (LinearMap.instZeroLinearMap.{u2, u2, u1, u1} R R M M (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) (AddCommGroup.toAddCommMonoid.{u1} M _inst_2) _inst_4 _inst_4 (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R (CommRing.toCommSemiring.{u2} R _inst_3)))))))))))
+Case conversion may be inaccurate. Consider using '#align linear_map.exists_monic_and_coeff_mem_pow_and_aeval_eq_zero_of_range_le_smul LinearMap.exists_monic_and_coeff_mem_pow_and_aeval_eq_zero_of_range_le_smulₓ'. -/
/-- The **Cayley-Hamilton Theorem** for f.g. modules over arbitrary rings states that for each
`R`-endomorphism `φ` of an `R`-module `M` such that `φ(M) ≤ I • M` for some ideal `I`, there
exists some `n` and some `aᵢ ∈ Iⁱ` such that `φⁿ + a₁ φⁿ⁻¹ + ⋯ + aₙ = 0`.
@@ -256,9 +388,11 @@ theorem LinearMap.exists_monic_and_coeff_mem_pow_and_aeval_eq_zero_of_range_le_s
· infer_instance
#align linear_map.exists_monic_and_coeff_mem_pow_and_aeval_eq_zero_of_range_le_smul LinearMap.exists_monic_and_coeff_mem_pow_and_aeval_eq_zero_of_range_le_smul
+#print LinearMap.exists_monic_and_aeval_eq_zero /-
theorem LinearMap.exists_monic_and_aeval_eq_zero [Module.Finite R M] (f : Module.End R M) :
∃ p : R[X], p.Monic ∧ Polynomial.aeval f p = 0 :=
(LinearMap.exists_monic_and_coeff_mem_pow_and_aeval_eq_zero_of_range_le_smul R f ⊤ (by simp)).imp
fun p h => h.imp_right And.right
#align linear_map.exists_monic_and_aeval_eq_zero LinearMap.exists_monic_and_aeval_eq_zero
+-/
mathlib commit https://github.com/leanprover-community/mathlib/commit/bd9851ca476957ea4549eb19b40e7b5ade9428cc
Generalize MulActionHom
so that it allows two different monoids acting, related by a morphism. This is inspired by the treatment of (semi)linear maps in mathlib, and allows to refactor them.
Let M
, N
, X
, Y
be types, with SMul M X
and SMul N Y
, and let φ : M → N
be a map.
MulActionHom φ X Y
, the type of equivariant functions from X
to Y
, consists of functions f : X → Y
such that f (m • x) = (φ m) • (f x)
for all m : M
and x : X
.Assume that we have Monoid M
, Monoid N
and that φ : M →* N
. For A
, B
by types with AddMonoid A
and AddMonoid B
, endowed with DistribMulAction M A
and DistribMulAction M B
:
DistribMulActionHom φ A B
is the type of equivariant additive monoid homomorphisms from A
to B
.Similarly, when R
and S
are types with Semiring R
, Semiring S
, MulSemiringAction M R
and MulSemiringAction N S
SMulSemiringHom φ R S
is the type of equivariant ring homomorphisms
from R
to S
.The above types have corresponding classes:
MulActionHomClass F φ X Y
states that F
is a type of bundled X → Y
homs which are φ
-equivariantDistribMulActionHomClass F φ A B
states that F
is a type of bundled A → B
homs preserving the additive monoid structure and φ
-equivariantSMulSemiringHomClass F φ R S
states that F
is a type of bundled R → S
homs preserving the ring structure and φ
-equivariantWe introduce the following notation to code equivariant maps
(the subscript index ₑ
is for equivariant) :
X →ₑ[φ] Y
is MulActionHom φ X Y
.A →ₑ+[φ] B
is DistribMulActionHom φ A B
.R →ₑ+*[φ] S
is MulSemiringActionHom φ R S
.When M = N
and φ = MonoidHom.id M
, we provide the backward compatible notation :
X →[M] Y
is MulActionHom ([@id](https://github.com/id) M) X Y
A →+[M] B
is DistribMulActionHom (MonoidHom.id M) A B
R →+*[M] S
is MulSemiringActionHom (MonoidHom.id M) R S
This more general definition is propagated all over mathlib, in particular to LinearMap
.
The treatment of composition of equivariant maps is inspired by that of semilinear maps. We provide classes CompTriple
and MonoidHom.CompTriple
of “composable triples`, and various instances for them.
@@ -141,7 +141,7 @@ theorem Matrix.Represents.zero : (0 : Matrix ι ι R).Represents b 0 := by
theorem Matrix.Represents.smul {A : Matrix ι ι R} {f : Module.End R M} (h : A.Represents b f)
(r : R) : (r • A).Represents b (r • f) := by
delta Matrix.Represents at h ⊢
- rw [SMulHomClass.map_smul, SMulHomClass.map_smul, h]
+ rw [_root_.map_smul, _root_.map_smul, h]
#align matrix.represents.smul Matrix.Represents.smul
theorem Matrix.Represents.algebraMap (r : R) :
Empty lines were removed by executing the following Python script twice
import os
import re
# Loop through each file in the repository
for dir_path, dirs, files in os.walk('.'):
for filename in files:
if filename.endswith('.lean'):
file_path = os.path.join(dir_path, filename)
# Open the file and read its contents
with open(file_path, 'r') as file:
content = file.read()
# Use a regular expression to replace sequences of "variable" lines separated by empty lines
# with sequences without empty lines
modified_content = re.sub(r'(variable.*\n)\n(variable(?! .* in))', r'\1\2', content)
# Write the modified content back to the file
with open(file_path, 'w') as file:
file.write(modified_content)
@@ -24,9 +24,7 @@ This is used to conclude the Cayley-Hamilton theorem for f.g. modules over arbit
variable {ι : Type*} [Fintype ι]
-
variable {M : Type*} [AddCommGroup M] (R : Type*) [CommRing R] [Module R M] (I : Ideal R)
-
variable (b : ι → M) (hb : Submodule.span R (Set.range b) = ⊤)
open BigOperators Polynomial Matrix
@@ -201,7 +201,7 @@ theorem Matrix.isRepresentation.toEnd_exists_mem_ideal (f : Module.End R M) (I :
let A : Matrix ι ι R := fun i j => bM' (b j) i
have : A.Represents b f := by
rw [Matrix.represents_iff']
- dsimp
+ dsimp [A]
intro j
specialize hbM' (b j)
rwa [Ideal.finsuppTotal_apply_eq_of_fintype] at hbM'
Matrix.mulVec
and Matrix.vecMul
get infix notation (#10297)
Zulip discussion: https://leanprover.zulipchat.com/#narrow/stream/113488-general/topic/Notation.20for.20mul_vec.20and.20vec_mul
Co-authored-by: Martin Dvorak <mdvorak@ista.ac.at>
@@ -29,7 +29,7 @@ variable {M : Type*} [AddCommGroup M] (R : Type*) [CommRing R] [Module R M] (I :
variable (b : ι → M) (hb : Submodule.span R (Set.range b) = ⊤)
-open BigOperators Polynomial
+open BigOperators Polynomial Matrix
/-- The composition of a matrix (as an endomorphism of `ι → R`) with the projection
`(ι → R) →ₗ[R] M`. -/
@@ -38,7 +38,7 @@ def PiToModule.fromMatrix [DecidableEq ι] : Matrix ι ι R →ₗ[R] (ι → R)
#align pi_to_module.from_matrix PiToModule.fromMatrix
theorem PiToModule.fromMatrix_apply [DecidableEq ι] (A : Matrix ι ι R) (w : ι → R) :
- PiToModule.fromMatrix R b A w = Fintype.total R R b (A.mulVec w) :=
+ PiToModule.fromMatrix R b A w = Fintype.total R R b (A *ᵥ w) :=
rfl
#align pi_to_module.from_matrix_apply PiToModule.fromMatrix_apply
@@ -90,12 +90,12 @@ def Matrix.Represents (A : Matrix ι ι R) (f : Module.End R M) : Prop :=
variable {b}
theorem Matrix.Represents.congr_fun {A : Matrix ι ι R} {f : Module.End R M} (h : A.Represents b f)
- (x) : Fintype.total R R b (A.mulVec x) = f (Fintype.total R R b x) :=
+ (x) : Fintype.total R R b (A *ᵥ x) = f (Fintype.total R R b x) :=
LinearMap.congr_fun h x
#align matrix.represents.congr_fun Matrix.Represents.congr_fun
theorem Matrix.represents_iff {A : Matrix ι ι R} {f : Module.End R M} :
- A.Represents b f ↔ ∀ x, Fintype.total R R b (A.mulVec x) = f (Fintype.total R R b x) :=
+ A.Represents b f ↔ ∀ x, Fintype.total R R b (A *ᵥ x) = f (Fintype.total R R b x) :=
⟨fun e x => e.congr_fun x, fun H => LinearMap.ext fun x => H x⟩
#align matrix.represents_iff Matrix.represents_iff
This changes the defeq from scalar a = a • 1
to scalar a = diagonal fun _ => a
, which has the nice bonus of making algebraMap_eq_diagonal
true by rfl
.
As a result, we need a new smul_one_eq_diagonal
lemma to rewrite diagonal fun _ => a
back into a • 1
, along with some variants for convenience.
In the long term we could generalize this to non-unital rings, now that it needs no 1
.
@@ -146,6 +146,10 @@ theorem Matrix.Represents.smul {A : Matrix ι ι R} {f : Module.End R M} (h : A.
rw [SMulHomClass.map_smul, SMulHomClass.map_smul, h]
#align matrix.represents.smul Matrix.Represents.smul
+theorem Matrix.Represents.algebraMap (r : R) :
+ (algebraMap _ (Matrix ι ι R) r).Represents b (algebraMap _ (Module.End R M) r) := by
+ simpa only [Algebra.algebraMap_eq_smul_one] using Matrix.Represents.one.smul r
+
theorem Matrix.Represents.eq {A : Matrix ι ι R} {f f' : Module.End R M} (h : A.Represents b f)
(h' : A.Represents b f') : f = f' :=
PiToModule.fromEnd_injective R b hb (h.symm.trans h')
@@ -161,7 +165,7 @@ def Matrix.isRepresentation : Subalgebra R (Matrix ι ι R) where
one_mem' := ⟨1, Matrix.Represents.one⟩
add_mem' := fun ⟨f₁, e₁⟩ ⟨f₂, e₂⟩ => ⟨f₁ + f₂, e₁.add e₂⟩
zero_mem' := ⟨0, Matrix.Represents.zero⟩
- algebraMap_mem' r := ⟨r • (1 : Module.End R M), Matrix.Represents.one.smul r⟩
+ algebraMap_mem' r := ⟨algebraMap _ _ r, .algebraMap _⟩
#align matrix.is_representation Matrix.isRepresentation
/-- The map sending a matrix to the endomorphism it represents. This is an `R`-algebra morphism. -/
@@ -173,7 +177,7 @@ noncomputable def Matrix.isRepresentation.toEnd : Matrix.isRepresentation R b
map_zero' := (0 : Matrix.isRepresentation R b).2.choose_spec.eq hb Matrix.Represents.zero
map_add' A₁ A₂ := (A₁ + A₂).2.choose_spec.eq hb (A₁.2.choose_spec.add A₂.2.choose_spec)
commutes' r :=
- (r • (1 : Matrix.isRepresentation R b)).2.choose_spec.eq hb (Matrix.Represents.one.smul r)
+ (algebraMap _ (Matrix.isRepresentation R b) r).2.choose_spec.eq hb (.algebraMap r)
#align matrix.is_representation.to_End Matrix.isRepresentation.toEnd
theorem Matrix.isRepresentation.toEnd_represents (A : Matrix.isRepresentation R b) :
Type _
and Sort _
(#6499)
We remove all possible occurences of Type _
and Sort _
in favor of Type*
and Sort*
.
This has nice performance benefits.
@@ -23,9 +23,9 @@ This is used to conclude the Cayley-Hamilton theorem for f.g. modules over arbit
-/
-variable {ι : Type _} [Fintype ι]
+variable {ι : Type*} [Fintype ι]
-variable {M : Type _} [AddCommGroup M] (R : Type _) [CommRing R] [Module R M] (I : Ideal R)
+variable {M : Type*} [AddCommGroup M] (R : Type*) [CommRing R] [Module R M] (I : Ideal R)
variable (b : ι → M) (hb : Submodule.span R (Set.range b) = ⊤)
@@ -12,7 +12,7 @@ import Mathlib.LinearAlgebra.Matrix.ToLin
# Cayley-Hamilton theorem for f.g. modules.
-Given a fixed finite spanning set `b : ι → M` of a `R`-module `M`, we say that a matrix `M`
+Given a fixed finite spanning set `b : ι → M` of an `R`-module `M`, we say that a matrix `M`
represents an endomorphism `f : M →ₗ[R] M` if the matrix as an endomorphism of `ι → R` commutes
with `f` via the projection `(ι → R) →ₗ[R] M` given by `b`.
@@ -2,15 +2,12 @@
Copyright (c) 2022 Andrew Yang. All rights reserved.
Released under Apache 2.0 license as described in the file LICENSE.
Authors: Andrew Yang
-
-! This file was ported from Lean 3 source module linear_algebra.matrix.charpoly.linear_map
-! leanprover-community/mathlib commit 62c0a4ef1441edb463095ea02a06e87f3dfe135c
-! Please do not edit these lines, except to modify the commit id
-! if you have ported upstream changes.
-/
import Mathlib.LinearAlgebra.Matrix.Charpoly.Coeff
import Mathlib.LinearAlgebra.Matrix.ToLin
+#align_import linear_algebra.matrix.charpoly.linear_map from "leanprover-community/mathlib"@"62c0a4ef1441edb463095ea02a06e87f3dfe135c"
+
/-!
# Cayley-Hamilton theorem for f.g. modules.
Co-authored-by: Komyyy <pol_tta@outlook.jp> Co-authored-by: Scott Morrison <scott.morrison@gmail.com> Co-authored-by: Scott Morrison <scott.morrison@anu.edu.au> Co-authored-by: Ruben Van de Velde <65514131+Ruben-VandeVelde@users.noreply.github.com> Co-authored-by: Mario Carneiro <di.gama@gmail.com>
@@ -231,7 +231,8 @@ theorem LinearMap.exists_monic_and_coeff_mem_pow_and_aeval_eq_zero_of_range_le_s
classical
cases subsingleton_or_nontrivial R
· exact ⟨0, Polynomial.monic_of_subsingleton _, by simp⟩
- obtain ⟨s : Finset M, hs : Submodule.span R (s : Set M) = ⊤⟩ := Module.Finite.out
+ obtain ⟨s : Finset M, hs : Submodule.span R (s : Set M) = ⊤⟩ :=
+ Module.Finite.out (R := R) (M := M)
-- Porting note: `H` was `rfl`
obtain ⟨A, H, h⟩ :=
Matrix.isRepresentation.toEnd_exists_mem_ideal R ((↑) : s → M)
∑'
precedence (#5615)
∑
, ∏
and variants).([^a-zA-Zα-ωΑ-Ω'𝓝ℳ₀𝕂ₛ)]) \(([∑∏][^()∑∏]*,[^()∑∏:]*)\) ([⊂⊆=<≤])
replaced by $1 $2 $3
@@ -103,7 +103,7 @@ theorem Matrix.represents_iff {A : Matrix ι ι R} {f : Module.End R M} :
#align matrix.represents_iff Matrix.represents_iff
theorem Matrix.represents_iff' {A : Matrix ι ι R} {f : Module.End R M} :
- A.Represents b f ↔ ∀ j, (∑ i : ι, A i j • b i) = f (b j) := by
+ A.Represents b f ↔ ∀ j, ∑ i : ι, A i j • b i = f (b j) := by
constructor
· intro h i
have := LinearMap.congr_fun h (Pi.single i 1)
at
and goals (#5387)
Changes are of the form
some_tactic at h⊢
-> some_tactic at h ⊢
some_tactic at h
-> some_tactic at h
@@ -135,7 +135,7 @@ theorem Matrix.Represents.one : (1 : Matrix ι ι R).Represents b 1 := by
theorem Matrix.Represents.add {A A' : Matrix ι ι R} {f f' : Module.End R M} (h : A.Represents b f)
(h' : Matrix.Represents b A' f') : (A + A').Represents b (f + f') := by
- delta Matrix.Represents at h h'⊢; rw [map_add, map_add, h, h']
+ delta Matrix.Represents at h h' ⊢; rw [map_add, map_add, h, h']
#align matrix.represents.add Matrix.Represents.add
theorem Matrix.Represents.zero : (0 : Matrix ι ι R).Represents b 0 := by
@@ -13,7 +13,7 @@ import Mathlib.LinearAlgebra.Matrix.ToLin
/-!
-# Calyley-Hamilton theorem for f.g. modules.
+# Cayley-Hamilton theorem for f.g. modules.
Given a fixed finite spanning set `b : ι → M` of a `R`-module `M`, we say that a matrix `M`
represents an endomorphism `f : M →ₗ[R] M` if the matrix as an endomorphism of `ι → R` commutes
@@ -34,7 +34,7 @@ variable (b : ι → M) (hb : Submodule.span R (Set.range b) = ⊤)
open BigOperators Polynomial
-/-- The composition of a matrix (as an endomporphism of `ι → R`) with the projection
+/-- The composition of a matrix (as an endomorphism of `ι → R`) with the projection
`(ι → R) →ₗ[R] M`. -/
def PiToModule.fromMatrix [DecidableEq ι] : Matrix ι ι R →ₗ[R] (ι → R) →ₗ[R] M :=
(LinearMap.llcomp R _ _ _ (Fintype.total R R b)).comp algEquivMatrix'.symm.toLinearMap
The unported dependencies are