algebra.direct_sum.finsupp
⟷
Mathlib.Algebra.DirectSum.Finsupp
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)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(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
@@ -4,7 +4,7 @@ Released under Apache 2.0 license as described in the file LICENSE.
Authors: Johannes Hölzl
-/
import Algebra.DirectSum.Module
-import Data.Finsupp.ToDfinsupp
+import Data.Finsupp.ToDFinsupp
#align_import algebra.direct_sum.finsupp from "leanprover-community/mathlib"@"aa3a420527e0fbfd0f6615b95b761254a9166e12"
mathlib commit https://github.com/leanprover-community/mathlib/commit/ce64cd319bb6b3e82f31c2d38e79080d377be451
@@ -3,8 +3,8 @@ Copyright (c) 2019 Johannes Hölzl. All rights reserved.
Released under Apache 2.0 license as described in the file LICENSE.
Authors: Johannes Hölzl
-/
-import Mathbin.Algebra.DirectSum.Module
-import Mathbin.Data.Finsupp.ToDfinsupp
+import Algebra.DirectSum.Module
+import Data.Finsupp.ToDfinsupp
#align_import algebra.direct_sum.finsupp from "leanprover-community/mathlib"@"aa3a420527e0fbfd0f6615b95b761254a9166e12"
mathlib commit https://github.com/leanprover-community/mathlib/commit/8ea5598db6caeddde6cb734aa179cc2408dbd345
@@ -2,15 +2,12 @@
Copyright (c) 2019 Johannes Hölzl. All rights reserved.
Released under Apache 2.0 license as described in the file LICENSE.
Authors: Johannes Hölzl
-
-! This file was ported from Lean 3 source module algebra.direct_sum.finsupp
-! leanprover-community/mathlib commit aa3a420527e0fbfd0f6615b95b761254a9166e12
-! Please do not edit these lines, except to modify the commit id
-! if you have ported upstream changes.
-/
import Mathbin.Algebra.DirectSum.Module
import Mathbin.Data.Finsupp.ToDfinsupp
+#align_import algebra.direct_sum.finsupp from "leanprover-community/mathlib"@"aa3a420527e0fbfd0f6615b95b761254a9166e12"
+
/-!
# Results on direct sums and finitely supported functions.
mathlib commit https://github.com/leanprover-community/mathlib/commit/4e24c4bfcff371c71f7ba22050308aa17815626c
@@ -41,7 +41,7 @@ variable (R M) (ι : Type _) [DecidableEq ι]
copies of M indexed by ι. -/
def finsuppLEquivDirectSum : (ι →₀ M) ≃ₗ[R] ⨁ i : ι, M :=
haveI : ∀ m : M, Decidable (m ≠ 0) := Classical.decPred _
- finsuppLequivDfinsupp R
+ finsuppLequivDFinsupp R
#align finsupp_lequiv_direct_sum finsuppLEquivDirectSum
-/
@@ -49,7 +49,7 @@ def finsuppLEquivDirectSum : (ι →₀ M) ≃ₗ[R] ⨁ i : ι, M :=
@[simp]
theorem finsuppLEquivDirectSum_single (i : ι) (m : M) :
finsuppLEquivDirectSum R M ι (Finsupp.single i m) = DirectSum.lof R ι _ i m :=
- Finsupp.toDfinsupp_single i m
+ Finsupp.toDFinsupp_single i m
#align finsupp_lequiv_direct_sum_single finsuppLEquivDirectSum_single
-/
@@ -58,7 +58,7 @@ theorem finsuppLEquivDirectSum_single (i : ι) (m : M) :
theorem finsuppLEquivDirectSum_symm_lof (i : ι) (m : M) :
(finsuppLEquivDirectSum R M ι).symm (DirectSum.lof R ι _ i m) = Finsupp.single i m :=
letI : ∀ m : M, Decidable (m ≠ 0) := Classical.decPred _
- Dfinsupp.toFinsupp_single i m
+ DFinsupp.toFinsupp_single i m
#align finsupp_lequiv_direct_sum_symm_lof finsuppLEquivDirectSum_symm_lof
-/
mathlib commit https://github.com/leanprover-community/mathlib/commit/9fb8964792b4237dac6200193a0d533f1b3f7423
@@ -36,25 +36,31 @@ section finsuppLEquivDirectSum
variable (R M) (ι : Type _) [DecidableEq ι]
+#print finsuppLEquivDirectSum /-
/-- The finitely supported functions `ι →₀ M` are in linear equivalence with the direct sum of
copies of M indexed by ι. -/
def finsuppLEquivDirectSum : (ι →₀ M) ≃ₗ[R] ⨁ i : ι, M :=
haveI : ∀ m : M, Decidable (m ≠ 0) := Classical.decPred _
finsuppLequivDfinsupp R
#align finsupp_lequiv_direct_sum finsuppLEquivDirectSum
+-/
+#print finsuppLEquivDirectSum_single /-
@[simp]
theorem finsuppLEquivDirectSum_single (i : ι) (m : M) :
finsuppLEquivDirectSum R M ι (Finsupp.single i m) = DirectSum.lof R ι _ i m :=
Finsupp.toDfinsupp_single i m
#align finsupp_lequiv_direct_sum_single finsuppLEquivDirectSum_single
+-/
+#print finsuppLEquivDirectSum_symm_lof /-
@[simp]
theorem finsuppLEquivDirectSum_symm_lof (i : ι) (m : M) :
(finsuppLEquivDirectSum R M ι).symm (DirectSum.lof R ι _ i m) = Finsupp.single i m :=
letI : ∀ m : M, Decidable (m ≠ 0) := Classical.decPred _
Dfinsupp.toFinsupp_single i m
#align finsupp_lequiv_direct_sum_symm_lof finsuppLEquivDirectSum_symm_lof
+-/
end finsuppLEquivDirectSum
mathlib commit https://github.com/leanprover-community/mathlib/commit/917c3c072e487b3cccdbfeff17e75b40e45f66cb
@@ -26,7 +26,7 @@ universe u v w
noncomputable section
-open DirectSum
+open scoped DirectSum
open LinearMap Submodule
mathlib commit https://github.com/leanprover-community/mathlib/commit/917c3c072e487b3cccdbfeff17e75b40e45f66cb
@@ -36,12 +36,6 @@ section finsuppLEquivDirectSum
variable (R M) (ι : Type _) [DecidableEq ι]
-/- warning: finsupp_lequiv_direct_sum -> finsuppLEquivDirectSum is a dubious translation:
-lean 3 declaration is
- forall (R : Type.{u1}) (M : Type.{u2}) [_inst_1 : Ring.{u1} R] [_inst_2 : AddCommGroup.{u2} M] [_inst_3 : Module.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2)] (ι : Type.{u3}) [_inst_4 : DecidableEq.{succ u3} ι], LinearEquiv.{u1, u1, max u3 u2, max u3 u2} R R (Ring.toSemiring.{u1} R _inst_1) (Ring.toSemiring.{u1} R _inst_1) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R _inst_1))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R _inst_1))) (finsuppLEquivDirectSum._proof_1.{u1} R _inst_1) (finsuppLEquivDirectSum._proof_2.{u1} R _inst_1) (Finsupp.{u3, u2} ι M (AddZeroClass.toHasZero.{u2} M (AddMonoid.toAddZeroClass.{u2} M (SubNegMonoid.toAddMonoid.{u2} M (AddGroup.toSubNegMonoid.{u2} M (AddCommGroup.toAddGroup.{u2} M _inst_2)))))) (DirectSum.{u3, u2} ι (fun (i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u2} M _inst_2)) (Finsupp.addCommMonoid.{u3, u2} ι M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2)) (DirectSum.addCommMonoid.{u3, u2} ι (fun (i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u2} M _inst_2)) (Finsupp.module.{u3, u2, u1} ι M R (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3) (DirectSum.module.{u1, u3, u2} R (Ring.toSemiring.{u1} R _inst_1) ι (fun (i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (fun (i : ι) => _inst_3))
-but is expected to have type
- forall (R : Type.{u1}) (M : Type.{u2}) [_inst_1 : Ring.{u1} R] [_inst_2 : AddCommGroup.{u2} M] [_inst_3 : Module.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2)] (ι : Type.{u3}) [_inst_4 : DecidableEq.{succ u3} ι], LinearEquiv.{u1, u1, max u2 u3, max u2 u3} R R (Ring.toSemiring.{u1} R _inst_1) (Ring.toSemiring.{u1} R _inst_1) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R _inst_1))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R _inst_1))) (RingHomInvPair.ids.{u1} R (Ring.toSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R (Ring.toSemiring.{u1} R _inst_1)) (Finsupp.{u3, u2} ι M (NegZeroClass.toZero.{u2} M (SubNegZeroMonoid.toNegZeroClass.{u2} M (SubtractionMonoid.toSubNegZeroMonoid.{u2} M (SubtractionCommMonoid.toSubtractionMonoid.{u2} M (AddCommGroup.toDivisionAddCommMonoid.{u2} M _inst_2)))))) (DirectSum.{u3, u2} ι (fun (i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u2} ((fun (_i : ι) => M) i) _inst_2)) (Finsupp.addCommMonoid.{u3, u2} ι M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2)) (instAddCommMonoidDirectSum.{u3, u2} ι (fun (i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u2} ((fun (_i : ι) => M) i) _inst_2)) (Finsupp.module.{u3, u2, u1} ι M R (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3) (DirectSum.instModuleDirectSumInstAddCommMonoidDirectSum.{u1, u3, u2} R (Ring.toSemiring.{u1} R _inst_1) ι (fun (i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u2} ((fun (_i : ι) => M) i) _inst_2) (fun (i : ι) => _inst_3))
-Case conversion may be inaccurate. Consider using '#align finsupp_lequiv_direct_sum finsuppLEquivDirectSumₓ'. -/
/-- The finitely supported functions `ι →₀ M` are in linear equivalence with the direct sum of
copies of M indexed by ι. -/
def finsuppLEquivDirectSum : (ι →₀ M) ≃ₗ[R] ⨁ i : ι, M :=
@@ -49,18 +43,12 @@ def finsuppLEquivDirectSum : (ι →₀ M) ≃ₗ[R] ⨁ i : ι, M :=
finsuppLequivDfinsupp R
#align finsupp_lequiv_direct_sum finsuppLEquivDirectSum
-/- warning: finsupp_lequiv_direct_sum_single -> finsuppLEquivDirectSum_single is a dubious translation:
-<too large>
-Case conversion may be inaccurate. Consider using '#align finsupp_lequiv_direct_sum_single finsuppLEquivDirectSum_singleₓ'. -/
@[simp]
theorem finsuppLEquivDirectSum_single (i : ι) (m : M) :
finsuppLEquivDirectSum R M ι (Finsupp.single i m) = DirectSum.lof R ι _ i m :=
Finsupp.toDfinsupp_single i m
#align finsupp_lequiv_direct_sum_single finsuppLEquivDirectSum_single
-/- warning: finsupp_lequiv_direct_sum_symm_lof -> finsuppLEquivDirectSum_symm_lof is a dubious translation:
-<too large>
-Case conversion may be inaccurate. Consider using '#align finsupp_lequiv_direct_sum_symm_lof finsuppLEquivDirectSum_symm_lofₓ'. -/
@[simp]
theorem finsuppLEquivDirectSum_symm_lof (i : ι) (m : M) :
(finsuppLEquivDirectSum R M ι).symm (DirectSum.lof R ι _ i m) = Finsupp.single i m :=
mathlib commit https://github.com/leanprover-community/mathlib/commit/917c3c072e487b3cccdbfeff17e75b40e45f66cb
@@ -50,10 +50,7 @@ def finsuppLEquivDirectSum : (ι →₀ M) ≃ₗ[R] ⨁ i : ι, M :=
#align finsupp_lequiv_direct_sum finsuppLEquivDirectSum
/- warning: finsupp_lequiv_direct_sum_single -> finsuppLEquivDirectSum_single is a dubious translation:
-lean 3 declaration is
- forall (R : Type.{u1}) (M : Type.{u2}) [_inst_1 : Ring.{u1} R] [_inst_2 : AddCommGroup.{u2} M] [_inst_3 : Module.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2)] (ι : Type.{u3}) [_inst_4 : DecidableEq.{succ u3} ι] (i : ι) (m : M), Eq.{succ (max u3 u2)} (DirectSum.{u3, u2} ι (fun (i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u2} M _inst_2)) (coeFn.{succ (max u3 u2), succ (max u3 u2)} (LinearEquiv.{u1, u1, max u3 u2, max u3 u2} R R (Ring.toSemiring.{u1} R _inst_1) (Ring.toSemiring.{u1} R _inst_1) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R _inst_1))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R _inst_1))) (finsuppLEquivDirectSum._proof_1.{u1} R _inst_1) (finsuppLEquivDirectSum._proof_2.{u1} R _inst_1) (Finsupp.{u3, u2} ι M (AddZeroClass.toHasZero.{u2} M (AddMonoid.toAddZeroClass.{u2} M (SubNegMonoid.toAddMonoid.{u2} M (AddGroup.toSubNegMonoid.{u2} M (AddCommGroup.toAddGroup.{u2} M _inst_2)))))) (DirectSum.{u3, u2} ι (fun (i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u2} M _inst_2)) (Finsupp.addCommMonoid.{u3, u2} ι M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2)) (DirectSum.addCommMonoid.{u3, u2} ι (fun (i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u2} M _inst_2)) (Finsupp.module.{u3, u2, u1} ι M R (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3) (DirectSum.module.{u1, u3, u2} R (Ring.toSemiring.{u1} R _inst_1) ι (fun (i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (fun (i : ι) => _inst_3))) (fun (_x : LinearEquiv.{u1, u1, max u3 u2, max u3 u2} R R (Ring.toSemiring.{u1} R _inst_1) (Ring.toSemiring.{u1} R _inst_1) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R _inst_1))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R _inst_1))) (finsuppLEquivDirectSum._proof_1.{u1} R _inst_1) (finsuppLEquivDirectSum._proof_2.{u1} R _inst_1) (Finsupp.{u3, u2} ι M (AddZeroClass.toHasZero.{u2} M (AddMonoid.toAddZeroClass.{u2} M (SubNegMonoid.toAddMonoid.{u2} M (AddGroup.toSubNegMonoid.{u2} M (AddCommGroup.toAddGroup.{u2} M _inst_2)))))) (DirectSum.{u3, u2} ι (fun (i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u2} M _inst_2)) (Finsupp.addCommMonoid.{u3, u2} ι M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2)) (DirectSum.addCommMonoid.{u3, u2} ι (fun (i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u2} M _inst_2)) (Finsupp.module.{u3, u2, u1} ι M R (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3) (DirectSum.module.{u1, u3, u2} R (Ring.toSemiring.{u1} R _inst_1) ι (fun (i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (fun (i : ι) => _inst_3))) => (Finsupp.{u3, u2} ι M (AddZeroClass.toHasZero.{u2} M (AddMonoid.toAddZeroClass.{u2} M (SubNegMonoid.toAddMonoid.{u2} M (AddGroup.toSubNegMonoid.{u2} M (AddCommGroup.toAddGroup.{u2} M _inst_2)))))) -> (DirectSum.{u3, u2} ι (fun (i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u2} M _inst_2))) (LinearEquiv.hasCoeToFun.{u1, u1, max u3 u2, max u3 u2} R R (Finsupp.{u3, u2} ι M (AddZeroClass.toHasZero.{u2} M (AddMonoid.toAddZeroClass.{u2} M (SubNegMonoid.toAddMonoid.{u2} M (AddGroup.toSubNegMonoid.{u2} M (AddCommGroup.toAddGroup.{u2} M _inst_2)))))) (DirectSum.{u3, u2} ι (fun (i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u2} M _inst_2)) (Ring.toSemiring.{u1} R _inst_1) (Ring.toSemiring.{u1} R _inst_1) (Finsupp.addCommMonoid.{u3, u2} ι M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2)) (DirectSum.addCommMonoid.{u3, u2} ι (fun (i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u2} M _inst_2)) (Finsupp.module.{u3, u2, u1} ι M R (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3) (DirectSum.module.{u1, u3, u2} R (Ring.toSemiring.{u1} R _inst_1) ι (fun (i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (fun (i : ι) => _inst_3)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R _inst_1))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R _inst_1))) (finsuppLEquivDirectSum._proof_1.{u1} R _inst_1) (finsuppLEquivDirectSum._proof_2.{u1} R _inst_1)) (finsuppLEquivDirectSum.{u1, u2, u3} R M _inst_1 _inst_2 _inst_3 ι (fun (a : ι) (b : ι) => _inst_4 a b)) (Finsupp.single.{u3, u2} ι M (AddZeroClass.toHasZero.{u2} M (AddMonoid.toAddZeroClass.{u2} M (SubNegMonoid.toAddMonoid.{u2} M (AddGroup.toSubNegMonoid.{u2} M (AddCommGroup.toAddGroup.{u2} M _inst_2))))) i m)) (coeFn.{max (succ u2) (succ (max u3 u2)), max (succ u2) (succ (max u3 u2))} (LinearMap.{u1, u1, u2, max u3 u2} R R (Ring.toSemiring.{u1} R _inst_1) (Ring.toSemiring.{u1} R _inst_1) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R _inst_1))) M (DirectSum.{u3, u2} ι (fun (i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u2} M _inst_2)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (DirectSum.addCommMonoid.{u3, u2} ι (fun (i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u2} M _inst_2)) _inst_3 (DirectSum.module.{u1, u3, u2} R (Ring.toSemiring.{u1} R _inst_1) ι (fun (i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (fun (i : ι) => _inst_3))) (fun (_x : LinearMap.{u1, u1, u2, max u3 u2} R R (Ring.toSemiring.{u1} R _inst_1) (Ring.toSemiring.{u1} R _inst_1) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R _inst_1))) M (DirectSum.{u3, u2} ι (fun (i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u2} M _inst_2)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (DirectSum.addCommMonoid.{u3, u2} ι (fun (i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u2} M _inst_2)) _inst_3 (DirectSum.module.{u1, u3, u2} R (Ring.toSemiring.{u1} R _inst_1) ι (fun (i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (fun (i : ι) => _inst_3))) => M -> (DirectSum.{u3, u2} ι (fun (i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u2} M _inst_2))) (LinearMap.hasCoeToFun.{u1, u1, u2, max u3 u2} R R M (DirectSum.{u3, u2} ι (fun (i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u2} M _inst_2)) (Ring.toSemiring.{u1} R _inst_1) (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (DirectSum.addCommMonoid.{u3, u2} ι (fun (i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u2} M _inst_2)) _inst_3 (DirectSum.module.{u1, u3, u2} R (Ring.toSemiring.{u1} R _inst_1) ι (fun (i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (fun (i : ι) => _inst_3)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R _inst_1)))) (DirectSum.lof.{u1, u3, u2} R (Ring.toSemiring.{u1} R _inst_1) ι (fun (a : ι) (b : ι) => _inst_4 a b) (fun (i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (fun (i : ι) => _inst_3) i) m)
-but is expected to have type
- forall (R : Type.{u2}) (M : Type.{u3}) [_inst_1 : Ring.{u2} R] [_inst_2 : AddCommGroup.{u3} M] [_inst_3 : Module.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2)] (ι : Type.{u1}) [_inst_4 : DecidableEq.{succ u1} ι] (i : ι) (m : M), Eq.{max (succ u3) (succ u1)} ((fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2187 : Finsupp.{u1, u3} ι M (NegZeroClass.toZero.{u3} M (SubNegZeroMonoid.toNegZeroClass.{u3} M (SubtractionMonoid.toSubNegZeroMonoid.{u3} M (SubtractionCommMonoid.toSubtractionMonoid.{u3} M (AddCommGroup.toDivisionAddCommMonoid.{u3} M _inst_2)))))) => DirectSum.{u1, u3} ι (fun (_i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2)) (Finsupp.single.{u1, u3} ι M (NegZeroClass.toZero.{u3} M (SubNegZeroMonoid.toNegZeroClass.{u3} M (SubtractionMonoid.toSubNegZeroMonoid.{u3} M (SubtractionCommMonoid.toSubtractionMonoid.{u3} M (AddCommGroup.toDivisionAddCommMonoid.{u3} M _inst_2))))) i m)) (FunLike.coe.{max (succ u3) (succ u1), max (succ u3) (succ u1), max (succ u3) (succ u1)} (LinearEquiv.{u2, u2, max u3 u1, max u3 u1} R R (Ring.toSemiring.{u2} R _inst_1) (Ring.toSemiring.{u2} R _inst_1) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (Ring.toSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R (Ring.toSemiring.{u2} R _inst_1)) (Finsupp.{u1, u3} ι M (NegZeroClass.toZero.{u3} M (SubNegZeroMonoid.toNegZeroClass.{u3} M (SubtractionMonoid.toSubNegZeroMonoid.{u3} M (SubtractionCommMonoid.toSubtractionMonoid.{u3} M (AddCommGroup.toDivisionAddCommMonoid.{u3} M _inst_2)))))) (DirectSum.{u1, u3} ι (fun (_i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2)) (Finsupp.addCommMonoid.{u1, u3} ι M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2)) (instAddCommMonoidDirectSum.{u1, u3} ι (fun (_i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2)) (Finsupp.module.{u1, u3, u2} ι M R (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_3) (DirectSum.instModuleDirectSumInstAddCommMonoidDirectSum.{u2, u1, u3} R (Ring.toSemiring.{u2} R _inst_1) ι (fun (_i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2) (fun (i : ι) => _inst_3))) (Finsupp.{u1, u3} ι M (NegZeroClass.toZero.{u3} M (SubNegZeroMonoid.toNegZeroClass.{u3} M (SubtractionMonoid.toSubNegZeroMonoid.{u3} M (SubtractionCommMonoid.toSubtractionMonoid.{u3} M (AddCommGroup.toDivisionAddCommMonoid.{u3} M _inst_2)))))) (fun (_x : Finsupp.{u1, u3} ι M (NegZeroClass.toZero.{u3} M (SubNegZeroMonoid.toNegZeroClass.{u3} M (SubtractionMonoid.toSubNegZeroMonoid.{u3} M (SubtractionCommMonoid.toSubtractionMonoid.{u3} M (AddCommGroup.toDivisionAddCommMonoid.{u3} M _inst_2)))))) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2187 : Finsupp.{u1, u3} ι M (NegZeroClass.toZero.{u3} M (SubNegZeroMonoid.toNegZeroClass.{u3} M (SubtractionMonoid.toSubNegZeroMonoid.{u3} M (SubtractionCommMonoid.toSubtractionMonoid.{u3} M (AddCommGroup.toDivisionAddCommMonoid.{u3} M _inst_2)))))) => DirectSum.{u1, u3} ι (fun (_i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2)) _x) (SMulHomClass.toFunLike.{max u3 u1, u2, max u3 u1, max u3 u1} (LinearEquiv.{u2, u2, max u3 u1, max u3 u1} R R (Ring.toSemiring.{u2} R _inst_1) (Ring.toSemiring.{u2} R _inst_1) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (Ring.toSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R (Ring.toSemiring.{u2} R _inst_1)) (Finsupp.{u1, u3} ι M (NegZeroClass.toZero.{u3} M (SubNegZeroMonoid.toNegZeroClass.{u3} M (SubtractionMonoid.toSubNegZeroMonoid.{u3} M (SubtractionCommMonoid.toSubtractionMonoid.{u3} M (AddCommGroup.toDivisionAddCommMonoid.{u3} M _inst_2)))))) (DirectSum.{u1, u3} ι (fun (_i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2)) (Finsupp.addCommMonoid.{u1, u3} ι M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2)) (instAddCommMonoidDirectSum.{u1, u3} ι (fun (_i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2)) (Finsupp.module.{u1, u3, u2} ι M R (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_3) (DirectSum.instModuleDirectSumInstAddCommMonoidDirectSum.{u2, u1, u3} R (Ring.toSemiring.{u2} R _inst_1) ι (fun (_i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2) (fun (i : ι) => _inst_3))) R (Finsupp.{u1, u3} ι M (NegZeroClass.toZero.{u3} M (SubNegZeroMonoid.toNegZeroClass.{u3} M (SubtractionMonoid.toSubNegZeroMonoid.{u3} M (SubtractionCommMonoid.toSubtractionMonoid.{u3} M (AddCommGroup.toDivisionAddCommMonoid.{u3} M _inst_2)))))) (DirectSum.{u1, u3} ι (fun (_i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2)) (SMulZeroClass.toSMul.{u2, max u3 u1} R (Finsupp.{u1, u3} ι M (NegZeroClass.toZero.{u3} M (SubNegZeroMonoid.toNegZeroClass.{u3} M (SubtractionMonoid.toSubNegZeroMonoid.{u3} M (SubtractionCommMonoid.toSubtractionMonoid.{u3} M (AddCommGroup.toDivisionAddCommMonoid.{u3} M _inst_2)))))) (AddMonoid.toZero.{max u3 u1} (Finsupp.{u1, u3} ι M (NegZeroClass.toZero.{u3} M (SubNegZeroMonoid.toNegZeroClass.{u3} M (SubtractionMonoid.toSubNegZeroMonoid.{u3} M (SubtractionCommMonoid.toSubtractionMonoid.{u3} M (AddCommGroup.toDivisionAddCommMonoid.{u3} M _inst_2)))))) (AddCommMonoid.toAddMonoid.{max u3 u1} (Finsupp.{u1, u3} ι M (NegZeroClass.toZero.{u3} M (SubNegZeroMonoid.toNegZeroClass.{u3} M (SubtractionMonoid.toSubNegZeroMonoid.{u3} M (SubtractionCommMonoid.toSubtractionMonoid.{u3} M (AddCommGroup.toDivisionAddCommMonoid.{u3} M _inst_2)))))) (Finsupp.addCommMonoid.{u1, u3} ι M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2)))) (DistribSMul.toSMulZeroClass.{u2, max u3 u1} R (Finsupp.{u1, u3} ι M (NegZeroClass.toZero.{u3} M (SubNegZeroMonoid.toNegZeroClass.{u3} M (SubtractionMonoid.toSubNegZeroMonoid.{u3} M (SubtractionCommMonoid.toSubtractionMonoid.{u3} M (AddCommGroup.toDivisionAddCommMonoid.{u3} M _inst_2)))))) (AddMonoid.toAddZeroClass.{max u3 u1} (Finsupp.{u1, u3} ι M (NegZeroClass.toZero.{u3} M (SubNegZeroMonoid.toNegZeroClass.{u3} M (SubtractionMonoid.toSubNegZeroMonoid.{u3} M (SubtractionCommMonoid.toSubtractionMonoid.{u3} M (AddCommGroup.toDivisionAddCommMonoid.{u3} M _inst_2)))))) (AddCommMonoid.toAddMonoid.{max u3 u1} (Finsupp.{u1, u3} ι M (NegZeroClass.toZero.{u3} M (SubNegZeroMonoid.toNegZeroClass.{u3} M (SubtractionMonoid.toSubNegZeroMonoid.{u3} M (SubtractionCommMonoid.toSubtractionMonoid.{u3} M (AddCommGroup.toDivisionAddCommMonoid.{u3} M _inst_2)))))) (Finsupp.addCommMonoid.{u1, u3} ι M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2)))) (DistribMulAction.toDistribSMul.{u2, max u3 u1} R (Finsupp.{u1, u3} ι M (NegZeroClass.toZero.{u3} M (SubNegZeroMonoid.toNegZeroClass.{u3} M (SubtractionMonoid.toSubNegZeroMonoid.{u3} M (SubtractionCommMonoid.toSubtractionMonoid.{u3} M (AddCommGroup.toDivisionAddCommMonoid.{u3} M _inst_2)))))) (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u3 u1} (Finsupp.{u1, u3} ι M (NegZeroClass.toZero.{u3} M (SubNegZeroMonoid.toNegZeroClass.{u3} M (SubtractionMonoid.toSubNegZeroMonoid.{u3} M (SubtractionCommMonoid.toSubtractionMonoid.{u3} M (AddCommGroup.toDivisionAddCommMonoid.{u3} M _inst_2)))))) (Finsupp.addCommMonoid.{u1, u3} ι M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2))) (Module.toDistribMulAction.{u2, max u3 u1} R (Finsupp.{u1, u3} ι M (NegZeroClass.toZero.{u3} M (SubNegZeroMonoid.toNegZeroClass.{u3} M (SubtractionMonoid.toSubNegZeroMonoid.{u3} M (SubtractionCommMonoid.toSubtractionMonoid.{u3} M (AddCommGroup.toDivisionAddCommMonoid.{u3} M _inst_2)))))) (Ring.toSemiring.{u2} R _inst_1) (Finsupp.addCommMonoid.{u1, u3} ι M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2)) (Finsupp.module.{u1, u3, u2} ι M R (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_3))))) (SMulZeroClass.toSMul.{u2, max u3 u1} R (DirectSum.{u1, u3} ι (fun (_i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2)) (AddMonoid.toZero.{max u3 u1} (DirectSum.{u1, u3} ι (fun (_i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2)) (AddCommMonoid.toAddMonoid.{max u3 u1} (DirectSum.{u1, u3} ι (fun (_i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2)) (instAddCommMonoidDirectSum.{u1, u3} ι (fun (_i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2)))) (DistribSMul.toSMulZeroClass.{u2, max u3 u1} R (DirectSum.{u1, u3} ι (fun (_i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2)) (AddMonoid.toAddZeroClass.{max u3 u1} (DirectSum.{u1, u3} ι (fun (_i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2)) (AddCommMonoid.toAddMonoid.{max u3 u1} (DirectSum.{u1, u3} ι (fun (_i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2)) (instAddCommMonoidDirectSum.{u1, u3} ι (fun (_i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2)))) (DistribMulAction.toDistribSMul.{u2, max u3 u1} R (DirectSum.{u1, u3} ι (fun (_i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2)) (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u3 u1} (DirectSum.{u1, u3} ι (fun (_i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2)) (instAddCommMonoidDirectSum.{u1, u3} ι (fun (_i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2))) (Module.toDistribMulAction.{u2, max u3 u1} R (DirectSum.{u1, u3} ι (fun (_i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2)) (Ring.toSemiring.{u2} R _inst_1) (instAddCommMonoidDirectSum.{u1, u3} ι (fun (_i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2)) (DirectSum.instModuleDirectSumInstAddCommMonoidDirectSum.{u2, u1, u3} R (Ring.toSemiring.{u2} R _inst_1) ι (fun (_i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2) (fun (i : ι) => _inst_3)))))) (DistribMulActionHomClass.toSMulHomClass.{max u3 u1, u2, max u3 u1, max u3 u1} (LinearEquiv.{u2, u2, max u3 u1, max u3 u1} R R (Ring.toSemiring.{u2} R _inst_1) (Ring.toSemiring.{u2} R _inst_1) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (Ring.toSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R (Ring.toSemiring.{u2} R _inst_1)) (Finsupp.{u1, u3} ι M (NegZeroClass.toZero.{u3} M (SubNegZeroMonoid.toNegZeroClass.{u3} M (SubtractionMonoid.toSubNegZeroMonoid.{u3} M (SubtractionCommMonoid.toSubtractionMonoid.{u3} M (AddCommGroup.toDivisionAddCommMonoid.{u3} M _inst_2)))))) (DirectSum.{u1, u3} ι (fun (_i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2)) (Finsupp.addCommMonoid.{u1, u3} ι M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2)) (instAddCommMonoidDirectSum.{u1, u3} ι (fun (_i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2)) (Finsupp.module.{u1, u3, u2} ι M R (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_3) (DirectSum.instModuleDirectSumInstAddCommMonoidDirectSum.{u2, u1, u3} R (Ring.toSemiring.{u2} R _inst_1) ι (fun (_i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2) (fun (i : ι) => _inst_3))) R (Finsupp.{u1, u3} ι M (NegZeroClass.toZero.{u3} M (SubNegZeroMonoid.toNegZeroClass.{u3} M (SubtractionMonoid.toSubNegZeroMonoid.{u3} M (SubtractionCommMonoid.toSubtractionMonoid.{u3} M (AddCommGroup.toDivisionAddCommMonoid.{u3} M _inst_2)))))) (DirectSum.{u1, u3} ι (fun (_i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2)) (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u3 u1} (Finsupp.{u1, u3} ι M (NegZeroClass.toZero.{u3} M (SubNegZeroMonoid.toNegZeroClass.{u3} M (SubtractionMonoid.toSubNegZeroMonoid.{u3} M (SubtractionCommMonoid.toSubtractionMonoid.{u3} M (AddCommGroup.toDivisionAddCommMonoid.{u3} M _inst_2)))))) (Finsupp.addCommMonoid.{u1, u3} ι M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2))) (AddCommMonoid.toAddMonoid.{max u3 u1} (DirectSum.{u1, u3} ι (fun (_i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2)) (instAddCommMonoidDirectSum.{u1, u3} ι (fun (_i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2))) (Module.toDistribMulAction.{u2, max u3 u1} R (Finsupp.{u1, u3} ι M (NegZeroClass.toZero.{u3} M (SubNegZeroMonoid.toNegZeroClass.{u3} M (SubtractionMonoid.toSubNegZeroMonoid.{u3} M (SubtractionCommMonoid.toSubtractionMonoid.{u3} M (AddCommGroup.toDivisionAddCommMonoid.{u3} M _inst_2)))))) (Ring.toSemiring.{u2} R _inst_1) (Finsupp.addCommMonoid.{u1, u3} ι M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2)) (Finsupp.module.{u1, u3, u2} ι M R (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_3)) (Module.toDistribMulAction.{u2, max u3 u1} R (DirectSum.{u1, u3} ι (fun (_i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2)) (Ring.toSemiring.{u2} R _inst_1) (instAddCommMonoidDirectSum.{u1, u3} ι (fun (_i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2)) (DirectSum.instModuleDirectSumInstAddCommMonoidDirectSum.{u2, u1, u3} R (Ring.toSemiring.{u2} R _inst_1) ι (fun (_i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2) (fun (i : ι) => _inst_3))) (SemilinearMapClass.distribMulActionHomClass.{u2, max u3 u1, max u3 u1, max u3 u1} R (Finsupp.{u1, u3} ι M (NegZeroClass.toZero.{u3} M (SubNegZeroMonoid.toNegZeroClass.{u3} M (SubtractionMonoid.toSubNegZeroMonoid.{u3} M (SubtractionCommMonoid.toSubtractionMonoid.{u3} M (AddCommGroup.toDivisionAddCommMonoid.{u3} M _inst_2)))))) (DirectSum.{u1, u3} ι (fun (_i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2)) (LinearEquiv.{u2, u2, max u3 u1, max u3 u1} R R (Ring.toSemiring.{u2} R _inst_1) (Ring.toSemiring.{u2} R _inst_1) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (Ring.toSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R (Ring.toSemiring.{u2} R _inst_1)) (Finsupp.{u1, u3} ι M (NegZeroClass.toZero.{u3} M (SubNegZeroMonoid.toNegZeroClass.{u3} M (SubtractionMonoid.toSubNegZeroMonoid.{u3} M (SubtractionCommMonoid.toSubtractionMonoid.{u3} M (AddCommGroup.toDivisionAddCommMonoid.{u3} M _inst_2)))))) (DirectSum.{u1, u3} ι (fun (_i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2)) (Finsupp.addCommMonoid.{u1, u3} ι M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2)) (instAddCommMonoidDirectSum.{u1, u3} ι (fun (_i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2)) (Finsupp.module.{u1, u3, u2} ι M R (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_3) (DirectSum.instModuleDirectSumInstAddCommMonoidDirectSum.{u2, u1, u3} R (Ring.toSemiring.{u2} R _inst_1) ι (fun (_i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2) (fun (i : ι) => _inst_3))) (Ring.toSemiring.{u2} R _inst_1) (Finsupp.addCommMonoid.{u1, u3} ι M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2)) (instAddCommMonoidDirectSum.{u1, u3} ι (fun (_i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2)) (Finsupp.module.{u1, u3, u2} ι M R (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_3) (DirectSum.instModuleDirectSumInstAddCommMonoidDirectSum.{u2, u1, u3} R (Ring.toSemiring.{u2} R _inst_1) ι (fun (_i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2) (fun (i : ι) => _inst_3)) (SemilinearEquivClass.instSemilinearMapClass.{u2, u2, max u3 u1, max u3 u1, max u3 u1} R R (Finsupp.{u1, u3} ι M (NegZeroClass.toZero.{u3} M (SubNegZeroMonoid.toNegZeroClass.{u3} M (SubtractionMonoid.toSubNegZeroMonoid.{u3} M (SubtractionCommMonoid.toSubtractionMonoid.{u3} M (AddCommGroup.toDivisionAddCommMonoid.{u3} M _inst_2)))))) (DirectSum.{u1, u3} ι (fun (_i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2)) (LinearEquiv.{u2, u2, max u3 u1, max u3 u1} R R (Ring.toSemiring.{u2} R _inst_1) (Ring.toSemiring.{u2} R _inst_1) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (Ring.toSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R (Ring.toSemiring.{u2} R _inst_1)) (Finsupp.{u1, u3} ι M (NegZeroClass.toZero.{u3} M (SubNegZeroMonoid.toNegZeroClass.{u3} M (SubtractionMonoid.toSubNegZeroMonoid.{u3} M (SubtractionCommMonoid.toSubtractionMonoid.{u3} M (AddCommGroup.toDivisionAddCommMonoid.{u3} M _inst_2)))))) (DirectSum.{u1, u3} ι (fun (_i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2)) (Finsupp.addCommMonoid.{u1, u3} ι M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2)) (instAddCommMonoidDirectSum.{u1, u3} ι (fun (_i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2)) (Finsupp.module.{u1, u3, u2} ι M R (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_3) (DirectSum.instModuleDirectSumInstAddCommMonoidDirectSum.{u2, u1, u3} R (Ring.toSemiring.{u2} R _inst_1) ι (fun (_i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2) (fun (i : ι) => _inst_3))) (Ring.toSemiring.{u2} R _inst_1) (Ring.toSemiring.{u2} R _inst_1) (Finsupp.addCommMonoid.{u1, u3} ι M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2)) (instAddCommMonoidDirectSum.{u1, u3} ι (fun (_i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2)) (Finsupp.module.{u1, u3, u2} ι M R (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_3) (DirectSum.instModuleDirectSumInstAddCommMonoidDirectSum.{u2, u1, u3} R (Ring.toSemiring.{u2} R _inst_1) ι (fun (_i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2) (fun (i : ι) => _inst_3)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (Ring.toSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R (Ring.toSemiring.{u2} R _inst_1)) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u2, u2, max u3 u1, max u3 u1} R R (Finsupp.{u1, u3} ι M (NegZeroClass.toZero.{u3} M (SubNegZeroMonoid.toNegZeroClass.{u3} M (SubtractionMonoid.toSubNegZeroMonoid.{u3} M (SubtractionCommMonoid.toSubtractionMonoid.{u3} M (AddCommGroup.toDivisionAddCommMonoid.{u3} M _inst_2)))))) (DirectSum.{u1, u3} ι (fun (_i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2)) (Ring.toSemiring.{u2} R _inst_1) (Ring.toSemiring.{u2} R _inst_1) (Finsupp.addCommMonoid.{u1, u3} ι M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2)) (instAddCommMonoidDirectSum.{u1, u3} ι (fun (_i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2)) (Finsupp.module.{u1, u3, u2} ι M R (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_3) (DirectSum.instModuleDirectSumInstAddCommMonoidDirectSum.{u2, u1, u3} R (Ring.toSemiring.{u2} R _inst_1) ι (fun (_i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2) (fun (i : ι) => _inst_3)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (Ring.toSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R (Ring.toSemiring.{u2} R _inst_1))))))) (finsuppLEquivDirectSum.{u2, u3, u1} R M _inst_1 _inst_2 _inst_3 ι (fun (a : ι) (b : ι) => _inst_4 a b)) (Finsupp.single.{u1, u3} ι M (NegZeroClass.toZero.{u3} M (SubNegZeroMonoid.toNegZeroClass.{u3} M (SubtractionMonoid.toSubNegZeroMonoid.{u3} M (SubtractionCommMonoid.toSubtractionMonoid.{u3} M (AddCommGroup.toDivisionAddCommMonoid.{u3} M _inst_2))))) i m)) (FunLike.coe.{max (succ u1) (succ u3), succ u3, max (succ u1) (succ u3)} (LinearMap.{u2, u2, u3, max u3 u1} R R (Ring.toSemiring.{u2} R _inst_1) (Ring.toSemiring.{u2} R _inst_1) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))) M (DirectSum.{u1, u3} ι (fun (i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2)) (AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2) (instAddCommMonoidDirectSum.{u1, u3} ι (fun (i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2)) _inst_3 (DirectSum.instModuleDirectSumInstAddCommMonoidDirectSum.{u2, u1, u3} R (Ring.toSemiring.{u2} R _inst_1) ι (fun (i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2) (fun (i : ι) => _inst_3))) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6193 : M) => DirectSum.{u1, u3} ι (fun (i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2)) _x) (LinearMap.instFunLikeLinearMap.{u2, u2, u3, max u1 u3} R R M (DirectSum.{u1, u3} ι (fun (i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2)) (Ring.toSemiring.{u2} R _inst_1) (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2) (instAddCommMonoidDirectSum.{u1, u3} ι (fun (i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2)) _inst_3 (DirectSum.instModuleDirectSumInstAddCommMonoidDirectSum.{u2, u1, u3} R (Ring.toSemiring.{u2} R _inst_1) ι (fun (i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2) (fun (i : ι) => _inst_3)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (DirectSum.lof.{u2, u1, u3} R (Ring.toSemiring.{u2} R _inst_1) ι (fun (a : ι) (b : ι) => _inst_4 a b) (fun (i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2) (fun (i : ι) => _inst_3) i) m)
+<too large>
Case conversion may be inaccurate. Consider using '#align finsupp_lequiv_direct_sum_single finsuppLEquivDirectSum_singleₓ'. -/
@[simp]
theorem finsuppLEquivDirectSum_single (i : ι) (m : M) :
@@ -62,10 +59,7 @@ theorem finsuppLEquivDirectSum_single (i : ι) (m : M) :
#align finsupp_lequiv_direct_sum_single finsuppLEquivDirectSum_single
/- warning: finsupp_lequiv_direct_sum_symm_lof -> finsuppLEquivDirectSum_symm_lof is a dubious translation:
-lean 3 declaration is
- forall (R : Type.{u1}) (M : Type.{u2}) [_inst_1 : Ring.{u1} R] [_inst_2 : AddCommGroup.{u2} M] [_inst_3 : Module.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2)] (ι : Type.{u3}) [_inst_4 : DecidableEq.{succ u3} ι] (i : ι) (m : M), Eq.{max (succ u3) (succ u2)} (Finsupp.{u3, u2} ι M (AddZeroClass.toHasZero.{u2} M (AddMonoid.toAddZeroClass.{u2} M (SubNegMonoid.toAddMonoid.{u2} M (AddGroup.toSubNegMonoid.{u2} M (AddCommGroup.toAddGroup.{u2} M _inst_2)))))) (coeFn.{succ (max u3 u2), succ (max u3 u2)} (LinearEquiv.{u1, u1, max u3 u2, max u3 u2} R R (Ring.toSemiring.{u1} R _inst_1) (Ring.toSemiring.{u1} R _inst_1) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R _inst_1))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R _inst_1))) (finsuppLEquivDirectSum._proof_2.{u1} R _inst_1) (finsuppLEquivDirectSum._proof_1.{u1} R _inst_1) (DirectSum.{u3, u2} ι (fun (i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u2} M _inst_2)) (Finsupp.{u3, u2} ι M (AddZeroClass.toHasZero.{u2} M (AddMonoid.toAddZeroClass.{u2} M (SubNegMonoid.toAddMonoid.{u2} M (AddGroup.toSubNegMonoid.{u2} M (AddCommGroup.toAddGroup.{u2} M _inst_2)))))) (DirectSum.addCommMonoid.{u3, u2} ι (fun (i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u2} M _inst_2)) (Finsupp.addCommMonoid.{u3, u2} ι M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2)) (DirectSum.module.{u1, u3, u2} R (Ring.toSemiring.{u1} R _inst_1) ι (fun (i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (fun (i : ι) => _inst_3)) (Finsupp.module.{u3, u2, u1} ι M R (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3)) (fun (_x : LinearEquiv.{u1, u1, max u3 u2, max u3 u2} R R (Ring.toSemiring.{u1} R _inst_1) (Ring.toSemiring.{u1} R _inst_1) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R _inst_1))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R _inst_1))) (finsuppLEquivDirectSum._proof_2.{u1} R _inst_1) (finsuppLEquivDirectSum._proof_1.{u1} R _inst_1) (DirectSum.{u3, u2} ι (fun (i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u2} M _inst_2)) (Finsupp.{u3, u2} ι M (AddZeroClass.toHasZero.{u2} M (AddMonoid.toAddZeroClass.{u2} M (SubNegMonoid.toAddMonoid.{u2} M (AddGroup.toSubNegMonoid.{u2} M (AddCommGroup.toAddGroup.{u2} M _inst_2)))))) (DirectSum.addCommMonoid.{u3, u2} ι (fun (i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u2} M _inst_2)) (Finsupp.addCommMonoid.{u3, u2} ι M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2)) (DirectSum.module.{u1, u3, u2} R (Ring.toSemiring.{u1} R _inst_1) ι (fun (i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (fun (i : ι) => _inst_3)) (Finsupp.module.{u3, u2, u1} ι M R (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3)) => (DirectSum.{u3, u2} ι (fun (i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u2} M _inst_2)) -> (Finsupp.{u3, u2} ι M (AddZeroClass.toHasZero.{u2} M (AddMonoid.toAddZeroClass.{u2} M (SubNegMonoid.toAddMonoid.{u2} M (AddGroup.toSubNegMonoid.{u2} M (AddCommGroup.toAddGroup.{u2} M _inst_2))))))) (LinearEquiv.hasCoeToFun.{u1, u1, max u3 u2, max u3 u2} R R (DirectSum.{u3, u2} ι (fun (i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u2} M _inst_2)) (Finsupp.{u3, u2} ι M (AddZeroClass.toHasZero.{u2} M (AddMonoid.toAddZeroClass.{u2} M (SubNegMonoid.toAddMonoid.{u2} M (AddGroup.toSubNegMonoid.{u2} M (AddCommGroup.toAddGroup.{u2} M _inst_2)))))) (Ring.toSemiring.{u1} R _inst_1) (Ring.toSemiring.{u1} R _inst_1) (DirectSum.addCommMonoid.{u3, u2} ι (fun (i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u2} M _inst_2)) (Finsupp.addCommMonoid.{u3, u2} ι M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2)) (DirectSum.module.{u1, u3, u2} R (Ring.toSemiring.{u1} R _inst_1) ι (fun (i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (fun (i : ι) => _inst_3)) (Finsupp.module.{u3, u2, u1} ι M R (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R _inst_1))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R _inst_1))) (finsuppLEquivDirectSum._proof_2.{u1} R _inst_1) (finsuppLEquivDirectSum._proof_1.{u1} R _inst_1)) (LinearEquiv.symm.{u1, u1, max u3 u2, max u3 u2} R R (Finsupp.{u3, u2} ι M (AddZeroClass.toHasZero.{u2} M (AddMonoid.toAddZeroClass.{u2} M (SubNegMonoid.toAddMonoid.{u2} M (AddGroup.toSubNegMonoid.{u2} M (AddCommGroup.toAddGroup.{u2} M _inst_2)))))) (DirectSum.{u3, u2} ι (fun (i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u2} M _inst_2)) (Ring.toSemiring.{u1} R _inst_1) (Ring.toSemiring.{u1} R _inst_1) (Finsupp.addCommMonoid.{u3, u2} ι M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2)) (DirectSum.addCommMonoid.{u3, u2} ι (fun (i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u2} M _inst_2)) (Finsupp.module.{u3, u2, u1} ι M R (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3) (DirectSum.module.{u1, u3, u2} R (Ring.toSemiring.{u1} R _inst_1) ι (fun (i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (fun (i : ι) => _inst_3)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R _inst_1))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R _inst_1))) (finsuppLEquivDirectSum._proof_1.{u1} R _inst_1) (finsuppLEquivDirectSum._proof_2.{u1} R _inst_1) (finsuppLEquivDirectSum.{u1, u2, u3} R M _inst_1 _inst_2 _inst_3 ι (fun (a : ι) (b : ι) => _inst_4 a b))) (coeFn.{max (succ u2) (succ (max u3 u2)), max (succ u2) (succ (max u3 u2))} (LinearMap.{u1, u1, u2, max u3 u2} R R (Ring.toSemiring.{u1} R _inst_1) (Ring.toSemiring.{u1} R _inst_1) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R _inst_1))) M (DirectSum.{u3, u2} ι (fun (i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u2} M _inst_2)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (DirectSum.addCommMonoid.{u3, u2} ι (fun (i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u2} M _inst_2)) _inst_3 (DirectSum.module.{u1, u3, u2} R (Ring.toSemiring.{u1} R _inst_1) ι (fun (i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (fun (i : ι) => _inst_3))) (fun (_x : LinearMap.{u1, u1, u2, max u3 u2} R R (Ring.toSemiring.{u1} R _inst_1) (Ring.toSemiring.{u1} R _inst_1) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R _inst_1))) M (DirectSum.{u3, u2} ι (fun (i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u2} M _inst_2)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (DirectSum.addCommMonoid.{u3, u2} ι (fun (i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u2} M _inst_2)) _inst_3 (DirectSum.module.{u1, u3, u2} R (Ring.toSemiring.{u1} R _inst_1) ι (fun (i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (fun (i : ι) => _inst_3))) => M -> (DirectSum.{u3, u2} ι (fun (i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u2} M _inst_2))) (LinearMap.hasCoeToFun.{u1, u1, u2, max u3 u2} R R M (DirectSum.{u3, u2} ι (fun (i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u2} M _inst_2)) (Ring.toSemiring.{u1} R _inst_1) (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (DirectSum.addCommMonoid.{u3, u2} ι (fun (i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u2} M _inst_2)) _inst_3 (DirectSum.module.{u1, u3, u2} R (Ring.toSemiring.{u1} R _inst_1) ι (fun (i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (fun (i : ι) => _inst_3)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R _inst_1)))) (DirectSum.lof.{u1, u3, u2} R (Ring.toSemiring.{u1} R _inst_1) ι (fun (a : ι) (b : ι) => _inst_4 a b) (fun (i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (fun (i : ι) => _inst_3) i) m)) (Finsupp.single.{u3, u2} ι M (AddZeroClass.toHasZero.{u2} M (AddMonoid.toAddZeroClass.{u2} M (SubNegMonoid.toAddMonoid.{u2} M (AddGroup.toSubNegMonoid.{u2} M (AddCommGroup.toAddGroup.{u2} M _inst_2))))) i m)
-but is expected to have type
- forall (R : Type.{u2}) (M : Type.{u3}) [_inst_1 : Ring.{u2} R] [_inst_2 : AddCommGroup.{u3} M] [_inst_3 : Module.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2)] (ι : Type.{u1}) [_inst_4 : DecidableEq.{succ u1} ι] (i : ι) (m : M), Eq.{max (succ u3) (succ u1)} ((fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2187 : DirectSum.{u1, u3} ι (fun (_i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2)) => Finsupp.{u1, u3} ι M (NegZeroClass.toZero.{u3} M (SubNegZeroMonoid.toNegZeroClass.{u3} M (SubtractionMonoid.toSubNegZeroMonoid.{u3} M (SubtractionCommMonoid.toSubtractionMonoid.{u3} M (AddCommGroup.toDivisionAddCommMonoid.{u3} M _inst_2)))))) (FunLike.coe.{max (succ u1) (succ u3), succ u3, max (succ u1) (succ u3)} (LinearMap.{u2, u2, u3, max u3 u1} R R (Ring.toSemiring.{u2} R _inst_1) (Ring.toSemiring.{u2} R _inst_1) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))) M (DirectSum.{u1, u3} ι (fun (i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2)) (AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2) (instAddCommMonoidDirectSum.{u1, u3} ι (fun (i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2)) _inst_3 (DirectSum.instModuleDirectSumInstAddCommMonoidDirectSum.{u2, u1, u3} R (Ring.toSemiring.{u2} R _inst_1) ι (fun (i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2) (fun (i : ι) => _inst_3))) M (fun (a : M) => (fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6193 : M) => DirectSum.{u1, u3} ι (fun (i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2)) a) (LinearMap.instFunLikeLinearMap.{u2, u2, u3, max u1 u3} R R M (DirectSum.{u1, u3} ι (fun (i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2)) (Ring.toSemiring.{u2} R _inst_1) (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2) (instAddCommMonoidDirectSum.{u1, u3} ι (fun (i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2)) _inst_3 (DirectSum.instModuleDirectSumInstAddCommMonoidDirectSum.{u2, u1, u3} R (Ring.toSemiring.{u2} R _inst_1) ι (fun (i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2) (fun (i : ι) => _inst_3)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (DirectSum.lof.{u2, u1, u3} R (Ring.toSemiring.{u2} R _inst_1) ι (fun (a : ι) (b : ι) => _inst_4 a b) (fun (_i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2) (fun (i : ι) => _inst_3) i) m)) (FunLike.coe.{max (succ u3) (succ u1), max (succ u3) (succ u1), max (succ u3) (succ u1)} (LinearEquiv.{u2, u2, max u3 u1, max u3 u1} R R (Ring.toSemiring.{u2} R _inst_1) (Ring.toSemiring.{u2} R _inst_1) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (Ring.toSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R (Ring.toSemiring.{u2} R _inst_1)) (DirectSum.{u1, u3} ι (fun (_i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2)) (Finsupp.{u1, u3} ι M (NegZeroClass.toZero.{u3} M (SubNegZeroMonoid.toNegZeroClass.{u3} M (SubtractionMonoid.toSubNegZeroMonoid.{u3} M (SubtractionCommMonoid.toSubtractionMonoid.{u3} M (AddCommGroup.toDivisionAddCommMonoid.{u3} M _inst_2)))))) (instAddCommMonoidDirectSum.{u1, u3} ι (fun (_i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2)) (Finsupp.addCommMonoid.{u1, u3} ι M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2)) (DirectSum.instModuleDirectSumInstAddCommMonoidDirectSum.{u2, u1, u3} R (Ring.toSemiring.{u2} R _inst_1) ι (fun (_i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2) (fun (i : ι) => _inst_3)) (Finsupp.module.{u1, u3, u2} ι M R (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_3)) (DirectSum.{u1, u3} ι (fun (_i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2)) (fun (_x : DirectSum.{u1, u3} ι (fun (_i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2)) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2187 : DirectSum.{u1, u3} ι (fun (_i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2)) => Finsupp.{u1, u3} ι M (NegZeroClass.toZero.{u3} M (SubNegZeroMonoid.toNegZeroClass.{u3} M (SubtractionMonoid.toSubNegZeroMonoid.{u3} M (SubtractionCommMonoid.toSubtractionMonoid.{u3} M (AddCommGroup.toDivisionAddCommMonoid.{u3} M _inst_2)))))) _x) (SMulHomClass.toFunLike.{max u3 u1, u2, max u3 u1, max u3 u1} (LinearEquiv.{u2, u2, max u3 u1, max u3 u1} R R (Ring.toSemiring.{u2} R _inst_1) (Ring.toSemiring.{u2} R _inst_1) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (Ring.toSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R (Ring.toSemiring.{u2} R _inst_1)) (DirectSum.{u1, u3} ι (fun (_i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2)) (Finsupp.{u1, u3} ι M (NegZeroClass.toZero.{u3} M (SubNegZeroMonoid.toNegZeroClass.{u3} M (SubtractionMonoid.toSubNegZeroMonoid.{u3} M (SubtractionCommMonoid.toSubtractionMonoid.{u3} M (AddCommGroup.toDivisionAddCommMonoid.{u3} M _inst_2)))))) (instAddCommMonoidDirectSum.{u1, u3} ι (fun (_i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2)) (Finsupp.addCommMonoid.{u1, u3} ι M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2)) (DirectSum.instModuleDirectSumInstAddCommMonoidDirectSum.{u2, u1, u3} R (Ring.toSemiring.{u2} R _inst_1) ι (fun (_i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2) (fun (i : ι) => _inst_3)) (Finsupp.module.{u1, u3, u2} ι M R (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_3)) R (DirectSum.{u1, u3} ι (fun (_i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2)) (Finsupp.{u1, u3} ι M (NegZeroClass.toZero.{u3} M (SubNegZeroMonoid.toNegZeroClass.{u3} M (SubtractionMonoid.toSubNegZeroMonoid.{u3} M (SubtractionCommMonoid.toSubtractionMonoid.{u3} M (AddCommGroup.toDivisionAddCommMonoid.{u3} M _inst_2)))))) (SMulZeroClass.toSMul.{u2, max u3 u1} R (DirectSum.{u1, u3} ι (fun (_i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2)) (AddMonoid.toZero.{max u3 u1} (DirectSum.{u1, u3} ι (fun (_i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2)) (AddCommMonoid.toAddMonoid.{max u3 u1} (DirectSum.{u1, u3} ι (fun (_i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2)) (instAddCommMonoidDirectSum.{u1, u3} ι (fun (_i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2)))) (DistribSMul.toSMulZeroClass.{u2, max u3 u1} R (DirectSum.{u1, u3} ι (fun (_i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2)) (AddMonoid.toAddZeroClass.{max u3 u1} (DirectSum.{u1, u3} ι (fun (_i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2)) (AddCommMonoid.toAddMonoid.{max u3 u1} (DirectSum.{u1, u3} ι (fun (_i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2)) (instAddCommMonoidDirectSum.{u1, u3} ι (fun (_i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2)))) (DistribMulAction.toDistribSMul.{u2, max u3 u1} R (DirectSum.{u1, u3} ι (fun (_i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2)) (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u3 u1} (DirectSum.{u1, u3} ι (fun (_i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2)) (instAddCommMonoidDirectSum.{u1, u3} ι (fun (_i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2))) (Module.toDistribMulAction.{u2, max u3 u1} R (DirectSum.{u1, u3} ι (fun (_i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2)) (Ring.toSemiring.{u2} R _inst_1) (instAddCommMonoidDirectSum.{u1, u3} ι (fun (_i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2)) (DirectSum.instModuleDirectSumInstAddCommMonoidDirectSum.{u2, u1, u3} R (Ring.toSemiring.{u2} R _inst_1) ι (fun (_i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2) (fun (i : ι) => _inst_3)))))) (SMulZeroClass.toSMul.{u2, max u3 u1} R (Finsupp.{u1, u3} ι M (NegZeroClass.toZero.{u3} M (SubNegZeroMonoid.toNegZeroClass.{u3} M (SubtractionMonoid.toSubNegZeroMonoid.{u3} M (SubtractionCommMonoid.toSubtractionMonoid.{u3} M (AddCommGroup.toDivisionAddCommMonoid.{u3} M _inst_2)))))) (AddMonoid.toZero.{max u3 u1} (Finsupp.{u1, u3} ι M (NegZeroClass.toZero.{u3} M (SubNegZeroMonoid.toNegZeroClass.{u3} M (SubtractionMonoid.toSubNegZeroMonoid.{u3} M (SubtractionCommMonoid.toSubtractionMonoid.{u3} M (AddCommGroup.toDivisionAddCommMonoid.{u3} M _inst_2)))))) (AddCommMonoid.toAddMonoid.{max u3 u1} (Finsupp.{u1, u3} ι M (NegZeroClass.toZero.{u3} M (SubNegZeroMonoid.toNegZeroClass.{u3} M (SubtractionMonoid.toSubNegZeroMonoid.{u3} M (SubtractionCommMonoid.toSubtractionMonoid.{u3} M (AddCommGroup.toDivisionAddCommMonoid.{u3} M _inst_2)))))) (Finsupp.addCommMonoid.{u1, u3} ι M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2)))) (DistribSMul.toSMulZeroClass.{u2, max u3 u1} R (Finsupp.{u1, u3} ι M (NegZeroClass.toZero.{u3} M (SubNegZeroMonoid.toNegZeroClass.{u3} M (SubtractionMonoid.toSubNegZeroMonoid.{u3} M (SubtractionCommMonoid.toSubtractionMonoid.{u3} M (AddCommGroup.toDivisionAddCommMonoid.{u3} M _inst_2)))))) (AddMonoid.toAddZeroClass.{max u3 u1} (Finsupp.{u1, u3} ι M (NegZeroClass.toZero.{u3} M (SubNegZeroMonoid.toNegZeroClass.{u3} M (SubtractionMonoid.toSubNegZeroMonoid.{u3} M (SubtractionCommMonoid.toSubtractionMonoid.{u3} M (AddCommGroup.toDivisionAddCommMonoid.{u3} M _inst_2)))))) (AddCommMonoid.toAddMonoid.{max u3 u1} (Finsupp.{u1, u3} ι M (NegZeroClass.toZero.{u3} M (SubNegZeroMonoid.toNegZeroClass.{u3} M (SubtractionMonoid.toSubNegZeroMonoid.{u3} M (SubtractionCommMonoid.toSubtractionMonoid.{u3} M (AddCommGroup.toDivisionAddCommMonoid.{u3} M _inst_2)))))) (Finsupp.addCommMonoid.{u1, u3} ι M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2)))) (DistribMulAction.toDistribSMul.{u2, max u3 u1} R (Finsupp.{u1, u3} ι M (NegZeroClass.toZero.{u3} M (SubNegZeroMonoid.toNegZeroClass.{u3} M (SubtractionMonoid.toSubNegZeroMonoid.{u3} M (SubtractionCommMonoid.toSubtractionMonoid.{u3} M (AddCommGroup.toDivisionAddCommMonoid.{u3} M _inst_2)))))) (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u3 u1} (Finsupp.{u1, u3} ι M (NegZeroClass.toZero.{u3} M (SubNegZeroMonoid.toNegZeroClass.{u3} M (SubtractionMonoid.toSubNegZeroMonoid.{u3} M (SubtractionCommMonoid.toSubtractionMonoid.{u3} M (AddCommGroup.toDivisionAddCommMonoid.{u3} M _inst_2)))))) (Finsupp.addCommMonoid.{u1, u3} ι M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2))) (Module.toDistribMulAction.{u2, max u3 u1} R (Finsupp.{u1, u3} ι M (NegZeroClass.toZero.{u3} M (SubNegZeroMonoid.toNegZeroClass.{u3} M (SubtractionMonoid.toSubNegZeroMonoid.{u3} M (SubtractionCommMonoid.toSubtractionMonoid.{u3} M (AddCommGroup.toDivisionAddCommMonoid.{u3} M _inst_2)))))) (Ring.toSemiring.{u2} R _inst_1) (Finsupp.addCommMonoid.{u1, u3} ι M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2)) (Finsupp.module.{u1, u3, u2} ι M R (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_3))))) (DistribMulActionHomClass.toSMulHomClass.{max u3 u1, u2, max u3 u1, max u3 u1} (LinearEquiv.{u2, u2, max u3 u1, max u3 u1} R R (Ring.toSemiring.{u2} R _inst_1) (Ring.toSemiring.{u2} R _inst_1) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (Ring.toSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R (Ring.toSemiring.{u2} R _inst_1)) (DirectSum.{u1, u3} ι (fun (_i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2)) (Finsupp.{u1, u3} ι M (NegZeroClass.toZero.{u3} M (SubNegZeroMonoid.toNegZeroClass.{u3} M (SubtractionMonoid.toSubNegZeroMonoid.{u3} M (SubtractionCommMonoid.toSubtractionMonoid.{u3} M (AddCommGroup.toDivisionAddCommMonoid.{u3} M _inst_2)))))) (instAddCommMonoidDirectSum.{u1, u3} ι (fun (_i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2)) (Finsupp.addCommMonoid.{u1, u3} ι M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2)) (DirectSum.instModuleDirectSumInstAddCommMonoidDirectSum.{u2, u1, u3} R (Ring.toSemiring.{u2} R _inst_1) ι (fun (_i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2) (fun (i : ι) => _inst_3)) (Finsupp.module.{u1, u3, u2} ι M R (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_3)) R (DirectSum.{u1, u3} ι (fun (_i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2)) (Finsupp.{u1, u3} ι M (NegZeroClass.toZero.{u3} M (SubNegZeroMonoid.toNegZeroClass.{u3} M (SubtractionMonoid.toSubNegZeroMonoid.{u3} M (SubtractionCommMonoid.toSubtractionMonoid.{u3} M (AddCommGroup.toDivisionAddCommMonoid.{u3} M _inst_2)))))) (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u3 u1} (DirectSum.{u1, u3} ι (fun (_i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2)) (instAddCommMonoidDirectSum.{u1, u3} ι (fun (_i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2))) (AddCommMonoid.toAddMonoid.{max u3 u1} (Finsupp.{u1, u3} ι M (NegZeroClass.toZero.{u3} M (SubNegZeroMonoid.toNegZeroClass.{u3} M (SubtractionMonoid.toSubNegZeroMonoid.{u3} M (SubtractionCommMonoid.toSubtractionMonoid.{u3} M (AddCommGroup.toDivisionAddCommMonoid.{u3} M _inst_2)))))) (Finsupp.addCommMonoid.{u1, u3} ι M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2))) (Module.toDistribMulAction.{u2, max u3 u1} R (DirectSum.{u1, u3} ι (fun (_i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2)) (Ring.toSemiring.{u2} R _inst_1) (instAddCommMonoidDirectSum.{u1, u3} ι (fun (_i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2)) (DirectSum.instModuleDirectSumInstAddCommMonoidDirectSum.{u2, u1, u3} R (Ring.toSemiring.{u2} R _inst_1) ι (fun (_i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2) (fun (i : ι) => _inst_3))) (Module.toDistribMulAction.{u2, max u3 u1} R (Finsupp.{u1, u3} ι M (NegZeroClass.toZero.{u3} M (SubNegZeroMonoid.toNegZeroClass.{u3} M (SubtractionMonoid.toSubNegZeroMonoid.{u3} M (SubtractionCommMonoid.toSubtractionMonoid.{u3} M (AddCommGroup.toDivisionAddCommMonoid.{u3} M _inst_2)))))) (Ring.toSemiring.{u2} R _inst_1) (Finsupp.addCommMonoid.{u1, u3} ι M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2)) (Finsupp.module.{u1, u3, u2} ι M R (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_3)) (SemilinearMapClass.distribMulActionHomClass.{u2, max u3 u1, max u3 u1, max u3 u1} R (DirectSum.{u1, u3} ι (fun (_i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2)) (Finsupp.{u1, u3} ι M (NegZeroClass.toZero.{u3} M (SubNegZeroMonoid.toNegZeroClass.{u3} M (SubtractionMonoid.toSubNegZeroMonoid.{u3} M (SubtractionCommMonoid.toSubtractionMonoid.{u3} M (AddCommGroup.toDivisionAddCommMonoid.{u3} M _inst_2)))))) (LinearEquiv.{u2, u2, max u3 u1, max u3 u1} R R (Ring.toSemiring.{u2} R _inst_1) (Ring.toSemiring.{u2} R _inst_1) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (Ring.toSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R (Ring.toSemiring.{u2} R _inst_1)) (DirectSum.{u1, u3} ι (fun (_i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2)) (Finsupp.{u1, u3} ι M (NegZeroClass.toZero.{u3} M (SubNegZeroMonoid.toNegZeroClass.{u3} M (SubtractionMonoid.toSubNegZeroMonoid.{u3} M (SubtractionCommMonoid.toSubtractionMonoid.{u3} M (AddCommGroup.toDivisionAddCommMonoid.{u3} M _inst_2)))))) (instAddCommMonoidDirectSum.{u1, u3} ι (fun (_i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2)) (Finsupp.addCommMonoid.{u1, u3} ι M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2)) (DirectSum.instModuleDirectSumInstAddCommMonoidDirectSum.{u2, u1, u3} R (Ring.toSemiring.{u2} R _inst_1) ι (fun (_i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2) (fun (i : ι) => _inst_3)) (Finsupp.module.{u1, u3, u2} ι M R (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_3)) (Ring.toSemiring.{u2} R _inst_1) (instAddCommMonoidDirectSum.{u1, u3} ι (fun (_i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2)) (Finsupp.addCommMonoid.{u1, u3} ι M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2)) (DirectSum.instModuleDirectSumInstAddCommMonoidDirectSum.{u2, u1, u3} R (Ring.toSemiring.{u2} R _inst_1) ι (fun (_i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2) (fun (i : ι) => _inst_3)) (Finsupp.module.{u1, u3, u2} ι M R (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_3) (SemilinearEquivClass.instSemilinearMapClass.{u2, u2, max u3 u1, max u3 u1, max u3 u1} R R (DirectSum.{u1, u3} ι (fun (_i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2)) (Finsupp.{u1, u3} ι M (NegZeroClass.toZero.{u3} M (SubNegZeroMonoid.toNegZeroClass.{u3} M (SubtractionMonoid.toSubNegZeroMonoid.{u3} M (SubtractionCommMonoid.toSubtractionMonoid.{u3} M (AddCommGroup.toDivisionAddCommMonoid.{u3} M _inst_2)))))) (LinearEquiv.{u2, u2, max u3 u1, max u3 u1} R R (Ring.toSemiring.{u2} R _inst_1) (Ring.toSemiring.{u2} R _inst_1) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (Ring.toSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R (Ring.toSemiring.{u2} R _inst_1)) (DirectSum.{u1, u3} ι (fun (_i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2)) (Finsupp.{u1, u3} ι M (NegZeroClass.toZero.{u3} M (SubNegZeroMonoid.toNegZeroClass.{u3} M (SubtractionMonoid.toSubNegZeroMonoid.{u3} M (SubtractionCommMonoid.toSubtractionMonoid.{u3} M (AddCommGroup.toDivisionAddCommMonoid.{u3} M _inst_2)))))) (instAddCommMonoidDirectSum.{u1, u3} ι (fun (_i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2)) (Finsupp.addCommMonoid.{u1, u3} ι M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2)) (DirectSum.instModuleDirectSumInstAddCommMonoidDirectSum.{u2, u1, u3} R (Ring.toSemiring.{u2} R _inst_1) ι (fun (_i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2) (fun (i : ι) => _inst_3)) (Finsupp.module.{u1, u3, u2} ι M R (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_3)) (Ring.toSemiring.{u2} R _inst_1) (Ring.toSemiring.{u2} R _inst_1) (instAddCommMonoidDirectSum.{u1, u3} ι (fun (_i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2)) (Finsupp.addCommMonoid.{u1, u3} ι M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2)) (DirectSum.instModuleDirectSumInstAddCommMonoidDirectSum.{u2, u1, u3} R (Ring.toSemiring.{u2} R _inst_1) ι (fun (_i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2) (fun (i : ι) => _inst_3)) (Finsupp.module.{u1, u3, u2} ι M R (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_3) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (Ring.toSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R (Ring.toSemiring.{u2} R _inst_1)) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u2, u2, max u3 u1, max u3 u1} R R (DirectSum.{u1, u3} ι (fun (_i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2)) (Finsupp.{u1, u3} ι M (NegZeroClass.toZero.{u3} M (SubNegZeroMonoid.toNegZeroClass.{u3} M (SubtractionMonoid.toSubNegZeroMonoid.{u3} M (SubtractionCommMonoid.toSubtractionMonoid.{u3} M (AddCommGroup.toDivisionAddCommMonoid.{u3} M _inst_2)))))) (Ring.toSemiring.{u2} R _inst_1) (Ring.toSemiring.{u2} R _inst_1) (instAddCommMonoidDirectSum.{u1, u3} ι (fun (_i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2)) (Finsupp.addCommMonoid.{u1, u3} ι M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2)) (DirectSum.instModuleDirectSumInstAddCommMonoidDirectSum.{u2, u1, u3} R (Ring.toSemiring.{u2} R _inst_1) ι (fun (_i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2) (fun (i : ι) => _inst_3)) (Finsupp.module.{u1, u3, u2} ι M R (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_3) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (Ring.toSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R (Ring.toSemiring.{u2} R _inst_1))))))) (LinearEquiv.symm.{u2, u2, max u3 u1, max u3 u1} R R (Finsupp.{u1, u3} ι M (NegZeroClass.toZero.{u3} M (SubNegZeroMonoid.toNegZeroClass.{u3} M (SubtractionMonoid.toSubNegZeroMonoid.{u3} M (SubtractionCommMonoid.toSubtractionMonoid.{u3} M (AddCommGroup.toDivisionAddCommMonoid.{u3} M _inst_2)))))) (DirectSum.{u1, u3} ι (fun (i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2)) (Ring.toSemiring.{u2} R _inst_1) (Ring.toSemiring.{u2} R _inst_1) (Finsupp.addCommMonoid.{u1, u3} ι M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2)) (instAddCommMonoidDirectSum.{u1, u3} ι (fun (i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2)) (Finsupp.module.{u1, u3, u2} ι M R (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_3) (DirectSum.instModuleDirectSumInstAddCommMonoidDirectSum.{u2, u1, u3} R (Ring.toSemiring.{u2} R _inst_1) ι (fun (i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2) (fun (i : ι) => _inst_3)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (Ring.toSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R (Ring.toSemiring.{u2} R _inst_1)) (finsuppLEquivDirectSum.{u2, u3, u1} R M _inst_1 _inst_2 _inst_3 ι (fun (a : ι) (b : ι) => _inst_4 a b))) (FunLike.coe.{max (succ u1) (succ u3), succ u3, max (succ u1) (succ u3)} (LinearMap.{u2, u2, u3, max u3 u1} R R (Ring.toSemiring.{u2} R _inst_1) (Ring.toSemiring.{u2} R _inst_1) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))) M (DirectSum.{u1, u3} ι (fun (i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2)) (AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2) (instAddCommMonoidDirectSum.{u1, u3} ι (fun (i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2)) _inst_3 (DirectSum.instModuleDirectSumInstAddCommMonoidDirectSum.{u2, u1, u3} R (Ring.toSemiring.{u2} R _inst_1) ι (fun (i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2) (fun (i : ι) => _inst_3))) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6193 : M) => DirectSum.{u1, u3} ι (fun (i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2)) _x) (LinearMap.instFunLikeLinearMap.{u2, u2, u3, max u1 u3} R R M (DirectSum.{u1, u3} ι (fun (i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2)) (Ring.toSemiring.{u2} R _inst_1) (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2) (instAddCommMonoidDirectSum.{u1, u3} ι (fun (i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2)) _inst_3 (DirectSum.instModuleDirectSumInstAddCommMonoidDirectSum.{u2, u1, u3} R (Ring.toSemiring.{u2} R _inst_1) ι (fun (i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2) (fun (i : ι) => _inst_3)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (DirectSum.lof.{u2, u1, u3} R (Ring.toSemiring.{u2} R _inst_1) ι (fun (a : ι) (b : ι) => _inst_4 a b) (fun (i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2) (fun (i : ι) => _inst_3) i) m)) (Finsupp.single.{u1, u3} ι M (NegZeroClass.toZero.{u3} M (SubNegZeroMonoid.toNegZeroClass.{u3} M (SubtractionMonoid.toSubNegZeroMonoid.{u3} M (SubtractionCommMonoid.toSubtractionMonoid.{u3} M (AddCommGroup.toDivisionAddCommMonoid.{u3} M _inst_2))))) i m)
+<too large>
Case conversion may be inaccurate. Consider using '#align finsupp_lequiv_direct_sum_symm_lof finsuppLEquivDirectSum_symm_lofₓ'. -/
@[simp]
theorem finsuppLEquivDirectSum_symm_lof (i : ι) (m : M) :
mathlib commit https://github.com/leanprover-community/mathlib/commit/8d33f09cd7089ecf074b4791907588245aec5d1b
@@ -53,7 +53,7 @@ def finsuppLEquivDirectSum : (ι →₀ M) ≃ₗ[R] ⨁ i : ι, M :=
lean 3 declaration is
forall (R : Type.{u1}) (M : Type.{u2}) [_inst_1 : Ring.{u1} R] [_inst_2 : AddCommGroup.{u2} M] [_inst_3 : Module.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2)] (ι : Type.{u3}) [_inst_4 : DecidableEq.{succ u3} ι] (i : ι) (m : M), Eq.{succ (max u3 u2)} (DirectSum.{u3, u2} ι (fun (i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u2} M _inst_2)) (coeFn.{succ (max u3 u2), succ (max u3 u2)} (LinearEquiv.{u1, u1, max u3 u2, max u3 u2} R R (Ring.toSemiring.{u1} R _inst_1) (Ring.toSemiring.{u1} R _inst_1) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R _inst_1))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R _inst_1))) (finsuppLEquivDirectSum._proof_1.{u1} R _inst_1) (finsuppLEquivDirectSum._proof_2.{u1} R _inst_1) (Finsupp.{u3, u2} ι M (AddZeroClass.toHasZero.{u2} M (AddMonoid.toAddZeroClass.{u2} M (SubNegMonoid.toAddMonoid.{u2} M (AddGroup.toSubNegMonoid.{u2} M (AddCommGroup.toAddGroup.{u2} M _inst_2)))))) (DirectSum.{u3, u2} ι (fun (i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u2} M _inst_2)) (Finsupp.addCommMonoid.{u3, u2} ι M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2)) (DirectSum.addCommMonoid.{u3, u2} ι (fun (i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u2} M _inst_2)) (Finsupp.module.{u3, u2, u1} ι M R (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3) (DirectSum.module.{u1, u3, u2} R (Ring.toSemiring.{u1} R _inst_1) ι (fun (i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (fun (i : ι) => _inst_3))) (fun (_x : LinearEquiv.{u1, u1, max u3 u2, max u3 u2} R R (Ring.toSemiring.{u1} R _inst_1) (Ring.toSemiring.{u1} R _inst_1) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R _inst_1))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R _inst_1))) (finsuppLEquivDirectSum._proof_1.{u1} R _inst_1) (finsuppLEquivDirectSum._proof_2.{u1} R _inst_1) (Finsupp.{u3, u2} ι M (AddZeroClass.toHasZero.{u2} M (AddMonoid.toAddZeroClass.{u2} M (SubNegMonoid.toAddMonoid.{u2} M (AddGroup.toSubNegMonoid.{u2} M (AddCommGroup.toAddGroup.{u2} M _inst_2)))))) (DirectSum.{u3, u2} ι (fun (i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u2} M _inst_2)) (Finsupp.addCommMonoid.{u3, u2} ι M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2)) (DirectSum.addCommMonoid.{u3, u2} ι (fun (i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u2} M _inst_2)) (Finsupp.module.{u3, u2, u1} ι M R (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3) (DirectSum.module.{u1, u3, u2} R (Ring.toSemiring.{u1} R _inst_1) ι (fun (i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (fun (i : ι) => _inst_3))) => (Finsupp.{u3, u2} ι M (AddZeroClass.toHasZero.{u2} M (AddMonoid.toAddZeroClass.{u2} M (SubNegMonoid.toAddMonoid.{u2} M (AddGroup.toSubNegMonoid.{u2} M (AddCommGroup.toAddGroup.{u2} M _inst_2)))))) -> (DirectSum.{u3, u2} ι (fun (i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u2} M _inst_2))) (LinearEquiv.hasCoeToFun.{u1, u1, max u3 u2, max u3 u2} R R (Finsupp.{u3, u2} ι M (AddZeroClass.toHasZero.{u2} M (AddMonoid.toAddZeroClass.{u2} M (SubNegMonoid.toAddMonoid.{u2} M (AddGroup.toSubNegMonoid.{u2} M (AddCommGroup.toAddGroup.{u2} M _inst_2)))))) (DirectSum.{u3, u2} ι (fun (i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u2} M _inst_2)) (Ring.toSemiring.{u1} R _inst_1) (Ring.toSemiring.{u1} R _inst_1) (Finsupp.addCommMonoid.{u3, u2} ι M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2)) (DirectSum.addCommMonoid.{u3, u2} ι (fun (i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u2} M _inst_2)) (Finsupp.module.{u3, u2, u1} ι M R (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3) (DirectSum.module.{u1, u3, u2} R (Ring.toSemiring.{u1} R _inst_1) ι (fun (i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (fun (i : ι) => _inst_3)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R _inst_1))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R _inst_1))) (finsuppLEquivDirectSum._proof_1.{u1} R _inst_1) (finsuppLEquivDirectSum._proof_2.{u1} R _inst_1)) (finsuppLEquivDirectSum.{u1, u2, u3} R M _inst_1 _inst_2 _inst_3 ι (fun (a : ι) (b : ι) => _inst_4 a b)) (Finsupp.single.{u3, u2} ι M (AddZeroClass.toHasZero.{u2} M (AddMonoid.toAddZeroClass.{u2} M (SubNegMonoid.toAddMonoid.{u2} M (AddGroup.toSubNegMonoid.{u2} M (AddCommGroup.toAddGroup.{u2} M _inst_2))))) i m)) (coeFn.{max (succ u2) (succ (max u3 u2)), max (succ u2) (succ (max u3 u2))} (LinearMap.{u1, u1, u2, max u3 u2} R R (Ring.toSemiring.{u1} R _inst_1) (Ring.toSemiring.{u1} R _inst_1) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R _inst_1))) M (DirectSum.{u3, u2} ι (fun (i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u2} M _inst_2)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (DirectSum.addCommMonoid.{u3, u2} ι (fun (i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u2} M _inst_2)) _inst_3 (DirectSum.module.{u1, u3, u2} R (Ring.toSemiring.{u1} R _inst_1) ι (fun (i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (fun (i : ι) => _inst_3))) (fun (_x : LinearMap.{u1, u1, u2, max u3 u2} R R (Ring.toSemiring.{u1} R _inst_1) (Ring.toSemiring.{u1} R _inst_1) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R _inst_1))) M (DirectSum.{u3, u2} ι (fun (i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u2} M _inst_2)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (DirectSum.addCommMonoid.{u3, u2} ι (fun (i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u2} M _inst_2)) _inst_3 (DirectSum.module.{u1, u3, u2} R (Ring.toSemiring.{u1} R _inst_1) ι (fun (i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (fun (i : ι) => _inst_3))) => M -> (DirectSum.{u3, u2} ι (fun (i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u2} M _inst_2))) (LinearMap.hasCoeToFun.{u1, u1, u2, max u3 u2} R R M (DirectSum.{u3, u2} ι (fun (i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u2} M _inst_2)) (Ring.toSemiring.{u1} R _inst_1) (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (DirectSum.addCommMonoid.{u3, u2} ι (fun (i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u2} M _inst_2)) _inst_3 (DirectSum.module.{u1, u3, u2} R (Ring.toSemiring.{u1} R _inst_1) ι (fun (i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (fun (i : ι) => _inst_3)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R _inst_1)))) (DirectSum.lof.{u1, u3, u2} R (Ring.toSemiring.{u1} R _inst_1) ι (fun (a : ι) (b : ι) => _inst_4 a b) (fun (i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (fun (i : ι) => _inst_3) i) m)
but is expected to have type
- forall (R : Type.{u2}) (M : Type.{u3}) [_inst_1 : Ring.{u2} R] [_inst_2 : AddCommGroup.{u3} M] [_inst_3 : Module.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2)] (ι : Type.{u1}) [_inst_4 : DecidableEq.{succ u1} ι] (i : ι) (m : M), Eq.{max (succ u3) (succ u1)} ((fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : Finsupp.{u1, u3} ι M (NegZeroClass.toZero.{u3} M (SubNegZeroMonoid.toNegZeroClass.{u3} M (SubtractionMonoid.toSubNegZeroMonoid.{u3} M (SubtractionCommMonoid.toSubtractionMonoid.{u3} M (AddCommGroup.toDivisionAddCommMonoid.{u3} M _inst_2)))))) => DirectSum.{u1, u3} ι (fun (_i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2)) (Finsupp.single.{u1, u3} ι M (NegZeroClass.toZero.{u3} M (SubNegZeroMonoid.toNegZeroClass.{u3} M (SubtractionMonoid.toSubNegZeroMonoid.{u3} M (SubtractionCommMonoid.toSubtractionMonoid.{u3} M (AddCommGroup.toDivisionAddCommMonoid.{u3} M _inst_2))))) i m)) (FunLike.coe.{max (succ u3) (succ u1), max (succ u3) (succ u1), max (succ u3) (succ u1)} (LinearEquiv.{u2, u2, max u3 u1, max u3 u1} R R (Ring.toSemiring.{u2} R _inst_1) (Ring.toSemiring.{u2} R _inst_1) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (Ring.toSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R (Ring.toSemiring.{u2} R _inst_1)) (Finsupp.{u1, u3} ι M (NegZeroClass.toZero.{u3} M (SubNegZeroMonoid.toNegZeroClass.{u3} M (SubtractionMonoid.toSubNegZeroMonoid.{u3} M (SubtractionCommMonoid.toSubtractionMonoid.{u3} M (AddCommGroup.toDivisionAddCommMonoid.{u3} M _inst_2)))))) (DirectSum.{u1, u3} ι (fun (_i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2)) (Finsupp.addCommMonoid.{u1, u3} ι M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2)) (instAddCommMonoidDirectSum.{u1, u3} ι (fun (_i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2)) (Finsupp.module.{u1, u3, u2} ι M R (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_3) (DirectSum.instModuleDirectSumInstAddCommMonoidDirectSum.{u2, u1, u3} R (Ring.toSemiring.{u2} R _inst_1) ι (fun (_i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2) (fun (i : ι) => _inst_3))) (Finsupp.{u1, u3} ι M (NegZeroClass.toZero.{u3} M (SubNegZeroMonoid.toNegZeroClass.{u3} M (SubtractionMonoid.toSubNegZeroMonoid.{u3} M (SubtractionCommMonoid.toSubtractionMonoid.{u3} M (AddCommGroup.toDivisionAddCommMonoid.{u3} M _inst_2)))))) (fun (_x : Finsupp.{u1, u3} ι M (NegZeroClass.toZero.{u3} M (SubNegZeroMonoid.toNegZeroClass.{u3} M (SubtractionMonoid.toSubNegZeroMonoid.{u3} M (SubtractionCommMonoid.toSubtractionMonoid.{u3} M (AddCommGroup.toDivisionAddCommMonoid.{u3} M _inst_2)))))) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : Finsupp.{u1, u3} ι M (NegZeroClass.toZero.{u3} M (SubNegZeroMonoid.toNegZeroClass.{u3} M (SubtractionMonoid.toSubNegZeroMonoid.{u3} M (SubtractionCommMonoid.toSubtractionMonoid.{u3} M (AddCommGroup.toDivisionAddCommMonoid.{u3} M _inst_2)))))) => DirectSum.{u1, u3} ι (fun (_i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2)) _x) (SMulHomClass.toFunLike.{max u3 u1, u2, max u3 u1, max u3 u1} (LinearEquiv.{u2, u2, max u3 u1, max u3 u1} R R (Ring.toSemiring.{u2} R _inst_1) (Ring.toSemiring.{u2} R _inst_1) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (Ring.toSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R (Ring.toSemiring.{u2} R _inst_1)) (Finsupp.{u1, u3} ι M (NegZeroClass.toZero.{u3} M (SubNegZeroMonoid.toNegZeroClass.{u3} M (SubtractionMonoid.toSubNegZeroMonoid.{u3} M (SubtractionCommMonoid.toSubtractionMonoid.{u3} M (AddCommGroup.toDivisionAddCommMonoid.{u3} M _inst_2)))))) (DirectSum.{u1, u3} ι (fun (_i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2)) (Finsupp.addCommMonoid.{u1, u3} ι M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2)) (instAddCommMonoidDirectSum.{u1, u3} ι (fun (_i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2)) (Finsupp.module.{u1, u3, u2} ι M R (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_3) (DirectSum.instModuleDirectSumInstAddCommMonoidDirectSum.{u2, u1, u3} R (Ring.toSemiring.{u2} R _inst_1) ι (fun (_i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2) (fun (i : ι) => _inst_3))) R (Finsupp.{u1, u3} ι M (NegZeroClass.toZero.{u3} M (SubNegZeroMonoid.toNegZeroClass.{u3} M (SubtractionMonoid.toSubNegZeroMonoid.{u3} M (SubtractionCommMonoid.toSubtractionMonoid.{u3} M (AddCommGroup.toDivisionAddCommMonoid.{u3} M _inst_2)))))) (DirectSum.{u1, u3} ι (fun (_i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2)) (SMulZeroClass.toSMul.{u2, max u3 u1} R (Finsupp.{u1, u3} ι M (NegZeroClass.toZero.{u3} M (SubNegZeroMonoid.toNegZeroClass.{u3} M (SubtractionMonoid.toSubNegZeroMonoid.{u3} M (SubtractionCommMonoid.toSubtractionMonoid.{u3} M (AddCommGroup.toDivisionAddCommMonoid.{u3} M _inst_2)))))) (AddMonoid.toZero.{max u3 u1} (Finsupp.{u1, u3} ι M (NegZeroClass.toZero.{u3} M (SubNegZeroMonoid.toNegZeroClass.{u3} M (SubtractionMonoid.toSubNegZeroMonoid.{u3} M (SubtractionCommMonoid.toSubtractionMonoid.{u3} M (AddCommGroup.toDivisionAddCommMonoid.{u3} M _inst_2)))))) (AddCommMonoid.toAddMonoid.{max u3 u1} (Finsupp.{u1, u3} ι M (NegZeroClass.toZero.{u3} M (SubNegZeroMonoid.toNegZeroClass.{u3} M (SubtractionMonoid.toSubNegZeroMonoid.{u3} M (SubtractionCommMonoid.toSubtractionMonoid.{u3} M (AddCommGroup.toDivisionAddCommMonoid.{u3} M _inst_2)))))) (Finsupp.addCommMonoid.{u1, u3} ι M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2)))) (DistribSMul.toSMulZeroClass.{u2, max u3 u1} R (Finsupp.{u1, u3} ι M (NegZeroClass.toZero.{u3} M (SubNegZeroMonoid.toNegZeroClass.{u3} M (SubtractionMonoid.toSubNegZeroMonoid.{u3} M (SubtractionCommMonoid.toSubtractionMonoid.{u3} M (AddCommGroup.toDivisionAddCommMonoid.{u3} M _inst_2)))))) (AddMonoid.toAddZeroClass.{max u3 u1} (Finsupp.{u1, u3} ι M (NegZeroClass.toZero.{u3} M (SubNegZeroMonoid.toNegZeroClass.{u3} M (SubtractionMonoid.toSubNegZeroMonoid.{u3} M (SubtractionCommMonoid.toSubtractionMonoid.{u3} M (AddCommGroup.toDivisionAddCommMonoid.{u3} M _inst_2)))))) (AddCommMonoid.toAddMonoid.{max u3 u1} (Finsupp.{u1, u3} ι M (NegZeroClass.toZero.{u3} M (SubNegZeroMonoid.toNegZeroClass.{u3} M (SubtractionMonoid.toSubNegZeroMonoid.{u3} M (SubtractionCommMonoid.toSubtractionMonoid.{u3} M (AddCommGroup.toDivisionAddCommMonoid.{u3} M _inst_2)))))) (Finsupp.addCommMonoid.{u1, u3} ι M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2)))) (DistribMulAction.toDistribSMul.{u2, max u3 u1} R (Finsupp.{u1, u3} ι M (NegZeroClass.toZero.{u3} M (SubNegZeroMonoid.toNegZeroClass.{u3} M (SubtractionMonoid.toSubNegZeroMonoid.{u3} M (SubtractionCommMonoid.toSubtractionMonoid.{u3} M (AddCommGroup.toDivisionAddCommMonoid.{u3} M _inst_2)))))) (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u3 u1} (Finsupp.{u1, u3} ι M (NegZeroClass.toZero.{u3} M (SubNegZeroMonoid.toNegZeroClass.{u3} M (SubtractionMonoid.toSubNegZeroMonoid.{u3} M (SubtractionCommMonoid.toSubtractionMonoid.{u3} M (AddCommGroup.toDivisionAddCommMonoid.{u3} M _inst_2)))))) (Finsupp.addCommMonoid.{u1, u3} ι M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2))) (Module.toDistribMulAction.{u2, max u3 u1} R (Finsupp.{u1, u3} ι M (NegZeroClass.toZero.{u3} M (SubNegZeroMonoid.toNegZeroClass.{u3} M (SubtractionMonoid.toSubNegZeroMonoid.{u3} M (SubtractionCommMonoid.toSubtractionMonoid.{u3} M (AddCommGroup.toDivisionAddCommMonoid.{u3} M _inst_2)))))) (Ring.toSemiring.{u2} R _inst_1) (Finsupp.addCommMonoid.{u1, u3} ι M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2)) (Finsupp.module.{u1, u3, u2} ι M R (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_3))))) (SMulZeroClass.toSMul.{u2, max u3 u1} R (DirectSum.{u1, u3} ι (fun (_i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2)) (AddMonoid.toZero.{max u3 u1} (DirectSum.{u1, u3} ι (fun (_i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2)) (AddCommMonoid.toAddMonoid.{max u3 u1} (DirectSum.{u1, u3} ι (fun (_i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2)) (instAddCommMonoidDirectSum.{u1, u3} ι (fun (_i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2)))) (DistribSMul.toSMulZeroClass.{u2, max u3 u1} R (DirectSum.{u1, u3} ι (fun (_i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2)) (AddMonoid.toAddZeroClass.{max u3 u1} (DirectSum.{u1, u3} ι (fun (_i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2)) (AddCommMonoid.toAddMonoid.{max u3 u1} (DirectSum.{u1, u3} ι (fun (_i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2)) (instAddCommMonoidDirectSum.{u1, u3} ι (fun (_i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2)))) (DistribMulAction.toDistribSMul.{u2, max u3 u1} R (DirectSum.{u1, u3} ι (fun (_i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2)) (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u3 u1} (DirectSum.{u1, u3} ι (fun (_i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2)) (instAddCommMonoidDirectSum.{u1, u3} ι (fun (_i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2))) (Module.toDistribMulAction.{u2, max u3 u1} R (DirectSum.{u1, u3} ι (fun (_i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2)) (Ring.toSemiring.{u2} R _inst_1) (instAddCommMonoidDirectSum.{u1, u3} ι (fun (_i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2)) (DirectSum.instModuleDirectSumInstAddCommMonoidDirectSum.{u2, u1, u3} R (Ring.toSemiring.{u2} R _inst_1) ι (fun (_i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2) (fun (i : ι) => _inst_3)))))) (DistribMulActionHomClass.toSMulHomClass.{max u3 u1, u2, max u3 u1, max u3 u1} (LinearEquiv.{u2, u2, max u3 u1, max u3 u1} R R (Ring.toSemiring.{u2} R _inst_1) (Ring.toSemiring.{u2} R _inst_1) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (Ring.toSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R (Ring.toSemiring.{u2} R _inst_1)) (Finsupp.{u1, u3} ι M (NegZeroClass.toZero.{u3} M (SubNegZeroMonoid.toNegZeroClass.{u3} M (SubtractionMonoid.toSubNegZeroMonoid.{u3} M (SubtractionCommMonoid.toSubtractionMonoid.{u3} M (AddCommGroup.toDivisionAddCommMonoid.{u3} M _inst_2)))))) (DirectSum.{u1, u3} ι (fun (_i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2)) (Finsupp.addCommMonoid.{u1, u3} ι M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2)) (instAddCommMonoidDirectSum.{u1, u3} ι (fun (_i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2)) (Finsupp.module.{u1, u3, u2} ι M R (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_3) (DirectSum.instModuleDirectSumInstAddCommMonoidDirectSum.{u2, u1, u3} R (Ring.toSemiring.{u2} R _inst_1) ι (fun (_i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2) (fun (i : ι) => _inst_3))) R (Finsupp.{u1, u3} ι M (NegZeroClass.toZero.{u3} M (SubNegZeroMonoid.toNegZeroClass.{u3} M (SubtractionMonoid.toSubNegZeroMonoid.{u3} M (SubtractionCommMonoid.toSubtractionMonoid.{u3} M (AddCommGroup.toDivisionAddCommMonoid.{u3} M _inst_2)))))) (DirectSum.{u1, u3} ι (fun (_i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2)) (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u3 u1} (Finsupp.{u1, u3} ι M (NegZeroClass.toZero.{u3} M (SubNegZeroMonoid.toNegZeroClass.{u3} M (SubtractionMonoid.toSubNegZeroMonoid.{u3} M (SubtractionCommMonoid.toSubtractionMonoid.{u3} M (AddCommGroup.toDivisionAddCommMonoid.{u3} M _inst_2)))))) (Finsupp.addCommMonoid.{u1, u3} ι M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2))) (AddCommMonoid.toAddMonoid.{max u3 u1} (DirectSum.{u1, u3} ι (fun (_i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2)) (instAddCommMonoidDirectSum.{u1, u3} ι (fun (_i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2))) (Module.toDistribMulAction.{u2, max u3 u1} R (Finsupp.{u1, u3} ι M (NegZeroClass.toZero.{u3} M (SubNegZeroMonoid.toNegZeroClass.{u3} M (SubtractionMonoid.toSubNegZeroMonoid.{u3} M (SubtractionCommMonoid.toSubtractionMonoid.{u3} M (AddCommGroup.toDivisionAddCommMonoid.{u3} M _inst_2)))))) (Ring.toSemiring.{u2} R _inst_1) (Finsupp.addCommMonoid.{u1, u3} ι M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2)) (Finsupp.module.{u1, u3, u2} ι M R (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_3)) (Module.toDistribMulAction.{u2, max u3 u1} R (DirectSum.{u1, u3} ι (fun (_i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2)) (Ring.toSemiring.{u2} R _inst_1) (instAddCommMonoidDirectSum.{u1, u3} ι (fun (_i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2)) (DirectSum.instModuleDirectSumInstAddCommMonoidDirectSum.{u2, u1, u3} R (Ring.toSemiring.{u2} R _inst_1) ι (fun (_i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2) (fun (i : ι) => _inst_3))) (SemilinearMapClass.distribMulActionHomClass.{u2, max u3 u1, max u3 u1, max u3 u1} R (Finsupp.{u1, u3} ι M (NegZeroClass.toZero.{u3} M (SubNegZeroMonoid.toNegZeroClass.{u3} M (SubtractionMonoid.toSubNegZeroMonoid.{u3} M (SubtractionCommMonoid.toSubtractionMonoid.{u3} M (AddCommGroup.toDivisionAddCommMonoid.{u3} M _inst_2)))))) (DirectSum.{u1, u3} ι (fun (_i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2)) (LinearEquiv.{u2, u2, max u3 u1, max u3 u1} R R (Ring.toSemiring.{u2} R _inst_1) (Ring.toSemiring.{u2} R _inst_1) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (Ring.toSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R (Ring.toSemiring.{u2} R _inst_1)) (Finsupp.{u1, u3} ι M (NegZeroClass.toZero.{u3} M (SubNegZeroMonoid.toNegZeroClass.{u3} M (SubtractionMonoid.toSubNegZeroMonoid.{u3} M (SubtractionCommMonoid.toSubtractionMonoid.{u3} M (AddCommGroup.toDivisionAddCommMonoid.{u3} M _inst_2)))))) (DirectSum.{u1, u3} ι (fun (_i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2)) (Finsupp.addCommMonoid.{u1, u3} ι M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2)) (instAddCommMonoidDirectSum.{u1, u3} ι (fun (_i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2)) (Finsupp.module.{u1, u3, u2} ι M R (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_3) (DirectSum.instModuleDirectSumInstAddCommMonoidDirectSum.{u2, u1, u3} R (Ring.toSemiring.{u2} R _inst_1) ι (fun (_i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2) (fun (i : ι) => _inst_3))) (Ring.toSemiring.{u2} R _inst_1) (Finsupp.addCommMonoid.{u1, u3} ι M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2)) (instAddCommMonoidDirectSum.{u1, u3} ι (fun (_i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2)) (Finsupp.module.{u1, u3, u2} ι M R (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_3) (DirectSum.instModuleDirectSumInstAddCommMonoidDirectSum.{u2, u1, u3} R (Ring.toSemiring.{u2} R _inst_1) ι (fun (_i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2) (fun (i : ι) => _inst_3)) (SemilinearEquivClass.instSemilinearMapClass.{u2, u2, max u3 u1, max u3 u1, max u3 u1} R R (Finsupp.{u1, u3} ι M (NegZeroClass.toZero.{u3} M (SubNegZeroMonoid.toNegZeroClass.{u3} M (SubtractionMonoid.toSubNegZeroMonoid.{u3} M (SubtractionCommMonoid.toSubtractionMonoid.{u3} M (AddCommGroup.toDivisionAddCommMonoid.{u3} M _inst_2)))))) (DirectSum.{u1, u3} ι (fun (_i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2)) (LinearEquiv.{u2, u2, max u3 u1, max u3 u1} R R (Ring.toSemiring.{u2} R _inst_1) (Ring.toSemiring.{u2} R _inst_1) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (Ring.toSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R (Ring.toSemiring.{u2} R _inst_1)) (Finsupp.{u1, u3} ι M (NegZeroClass.toZero.{u3} M (SubNegZeroMonoid.toNegZeroClass.{u3} M (SubtractionMonoid.toSubNegZeroMonoid.{u3} M (SubtractionCommMonoid.toSubtractionMonoid.{u3} M (AddCommGroup.toDivisionAddCommMonoid.{u3} M _inst_2)))))) (DirectSum.{u1, u3} ι (fun (_i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2)) (Finsupp.addCommMonoid.{u1, u3} ι M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2)) (instAddCommMonoidDirectSum.{u1, u3} ι (fun (_i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2)) (Finsupp.module.{u1, u3, u2} ι M R (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_3) (DirectSum.instModuleDirectSumInstAddCommMonoidDirectSum.{u2, u1, u3} R (Ring.toSemiring.{u2} R _inst_1) ι (fun (_i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2) (fun (i : ι) => _inst_3))) (Ring.toSemiring.{u2} R _inst_1) (Ring.toSemiring.{u2} R _inst_1) (Finsupp.addCommMonoid.{u1, u3} ι M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2)) (instAddCommMonoidDirectSum.{u1, u3} ι (fun (_i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2)) (Finsupp.module.{u1, u3, u2} ι M R (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_3) (DirectSum.instModuleDirectSumInstAddCommMonoidDirectSum.{u2, u1, u3} R (Ring.toSemiring.{u2} R _inst_1) ι (fun (_i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2) (fun (i : ι) => _inst_3)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (Ring.toSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R (Ring.toSemiring.{u2} R _inst_1)) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u2, u2, max u3 u1, max u3 u1} R R (Finsupp.{u1, u3} ι M (NegZeroClass.toZero.{u3} M (SubNegZeroMonoid.toNegZeroClass.{u3} M (SubtractionMonoid.toSubNegZeroMonoid.{u3} M (SubtractionCommMonoid.toSubtractionMonoid.{u3} M (AddCommGroup.toDivisionAddCommMonoid.{u3} M _inst_2)))))) (DirectSum.{u1, u3} ι (fun (_i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2)) (Ring.toSemiring.{u2} R _inst_1) (Ring.toSemiring.{u2} R _inst_1) (Finsupp.addCommMonoid.{u1, u3} ι M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2)) (instAddCommMonoidDirectSum.{u1, u3} ι (fun (_i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2)) (Finsupp.module.{u1, u3, u2} ι M R (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_3) (DirectSum.instModuleDirectSumInstAddCommMonoidDirectSum.{u2, u1, u3} R (Ring.toSemiring.{u2} R _inst_1) ι (fun (_i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2) (fun (i : ι) => _inst_3)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (Ring.toSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R (Ring.toSemiring.{u2} R _inst_1))))))) (finsuppLEquivDirectSum.{u2, u3, u1} R M _inst_1 _inst_2 _inst_3 ι (fun (a : ι) (b : ι) => _inst_4 a b)) (Finsupp.single.{u1, u3} ι M (NegZeroClass.toZero.{u3} M (SubNegZeroMonoid.toNegZeroClass.{u3} M (SubtractionMonoid.toSubNegZeroMonoid.{u3} M (SubtractionCommMonoid.toSubtractionMonoid.{u3} M (AddCommGroup.toDivisionAddCommMonoid.{u3} M _inst_2))))) i m)) (FunLike.coe.{max (succ u1) (succ u3), succ u3, max (succ u1) (succ u3)} (LinearMap.{u2, u2, u3, max u3 u1} R R (Ring.toSemiring.{u2} R _inst_1) (Ring.toSemiring.{u2} R _inst_1) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))) M (DirectSum.{u1, u3} ι (fun (i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2)) (AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2) (instAddCommMonoidDirectSum.{u1, u3} ι (fun (i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2)) _inst_3 (DirectSum.instModuleDirectSumInstAddCommMonoidDirectSum.{u2, u1, u3} R (Ring.toSemiring.{u2} R _inst_1) ι (fun (i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2) (fun (i : ι) => _inst_3))) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6191 : M) => DirectSum.{u1, u3} ι (fun (i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2)) _x) (LinearMap.instFunLikeLinearMap.{u2, u2, u3, max u1 u3} R R M (DirectSum.{u1, u3} ι (fun (i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2)) (Ring.toSemiring.{u2} R _inst_1) (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2) (instAddCommMonoidDirectSum.{u1, u3} ι (fun (i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2)) _inst_3 (DirectSum.instModuleDirectSumInstAddCommMonoidDirectSum.{u2, u1, u3} R (Ring.toSemiring.{u2} R _inst_1) ι (fun (i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2) (fun (i : ι) => _inst_3)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (DirectSum.lof.{u2, u1, u3} R (Ring.toSemiring.{u2} R _inst_1) ι (fun (a : ι) (b : ι) => _inst_4 a b) (fun (i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2) (fun (i : ι) => _inst_3) i) m)
+ forall (R : Type.{u2}) (M : Type.{u3}) [_inst_1 : Ring.{u2} R] [_inst_2 : AddCommGroup.{u3} M] [_inst_3 : Module.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2)] (ι : Type.{u1}) [_inst_4 : DecidableEq.{succ u1} ι] (i : ι) (m : M), Eq.{max (succ u3) (succ u1)} ((fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2187 : Finsupp.{u1, u3} ι M (NegZeroClass.toZero.{u3} M (SubNegZeroMonoid.toNegZeroClass.{u3} M (SubtractionMonoid.toSubNegZeroMonoid.{u3} M (SubtractionCommMonoid.toSubtractionMonoid.{u3} M (AddCommGroup.toDivisionAddCommMonoid.{u3} M _inst_2)))))) => DirectSum.{u1, u3} ι (fun (_i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2)) (Finsupp.single.{u1, u3} ι M (NegZeroClass.toZero.{u3} M (SubNegZeroMonoid.toNegZeroClass.{u3} M (SubtractionMonoid.toSubNegZeroMonoid.{u3} M (SubtractionCommMonoid.toSubtractionMonoid.{u3} M (AddCommGroup.toDivisionAddCommMonoid.{u3} M _inst_2))))) i m)) (FunLike.coe.{max (succ u3) (succ u1), max (succ u3) (succ u1), max (succ u3) (succ u1)} (LinearEquiv.{u2, u2, max u3 u1, max u3 u1} R R (Ring.toSemiring.{u2} R _inst_1) (Ring.toSemiring.{u2} R _inst_1) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (Ring.toSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R (Ring.toSemiring.{u2} R _inst_1)) (Finsupp.{u1, u3} ι M (NegZeroClass.toZero.{u3} M (SubNegZeroMonoid.toNegZeroClass.{u3} M (SubtractionMonoid.toSubNegZeroMonoid.{u3} M (SubtractionCommMonoid.toSubtractionMonoid.{u3} M (AddCommGroup.toDivisionAddCommMonoid.{u3} M _inst_2)))))) (DirectSum.{u1, u3} ι (fun (_i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2)) (Finsupp.addCommMonoid.{u1, u3} ι M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2)) (instAddCommMonoidDirectSum.{u1, u3} ι (fun (_i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2)) (Finsupp.module.{u1, u3, u2} ι M R (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_3) (DirectSum.instModuleDirectSumInstAddCommMonoidDirectSum.{u2, u1, u3} R (Ring.toSemiring.{u2} R _inst_1) ι (fun (_i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2) (fun (i : ι) => _inst_3))) (Finsupp.{u1, u3} ι M (NegZeroClass.toZero.{u3} M (SubNegZeroMonoid.toNegZeroClass.{u3} M (SubtractionMonoid.toSubNegZeroMonoid.{u3} M (SubtractionCommMonoid.toSubtractionMonoid.{u3} M (AddCommGroup.toDivisionAddCommMonoid.{u3} M _inst_2)))))) (fun (_x : Finsupp.{u1, u3} ι M (NegZeroClass.toZero.{u3} M (SubNegZeroMonoid.toNegZeroClass.{u3} M (SubtractionMonoid.toSubNegZeroMonoid.{u3} M (SubtractionCommMonoid.toSubtractionMonoid.{u3} M (AddCommGroup.toDivisionAddCommMonoid.{u3} M _inst_2)))))) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2187 : Finsupp.{u1, u3} ι M (NegZeroClass.toZero.{u3} M (SubNegZeroMonoid.toNegZeroClass.{u3} M (SubtractionMonoid.toSubNegZeroMonoid.{u3} M (SubtractionCommMonoid.toSubtractionMonoid.{u3} M (AddCommGroup.toDivisionAddCommMonoid.{u3} M _inst_2)))))) => DirectSum.{u1, u3} ι (fun (_i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2)) _x) (SMulHomClass.toFunLike.{max u3 u1, u2, max u3 u1, max u3 u1} (LinearEquiv.{u2, u2, max u3 u1, max u3 u1} R R (Ring.toSemiring.{u2} R _inst_1) (Ring.toSemiring.{u2} R _inst_1) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (Ring.toSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R (Ring.toSemiring.{u2} R _inst_1)) (Finsupp.{u1, u3} ι M (NegZeroClass.toZero.{u3} M (SubNegZeroMonoid.toNegZeroClass.{u3} M (SubtractionMonoid.toSubNegZeroMonoid.{u3} M (SubtractionCommMonoid.toSubtractionMonoid.{u3} M (AddCommGroup.toDivisionAddCommMonoid.{u3} M _inst_2)))))) (DirectSum.{u1, u3} ι (fun (_i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2)) (Finsupp.addCommMonoid.{u1, u3} ι M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2)) (instAddCommMonoidDirectSum.{u1, u3} ι (fun (_i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2)) (Finsupp.module.{u1, u3, u2} ι M R (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_3) (DirectSum.instModuleDirectSumInstAddCommMonoidDirectSum.{u2, u1, u3} R (Ring.toSemiring.{u2} R _inst_1) ι (fun (_i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2) (fun (i : ι) => _inst_3))) R (Finsupp.{u1, u3} ι M (NegZeroClass.toZero.{u3} M (SubNegZeroMonoid.toNegZeroClass.{u3} M (SubtractionMonoid.toSubNegZeroMonoid.{u3} M (SubtractionCommMonoid.toSubtractionMonoid.{u3} M (AddCommGroup.toDivisionAddCommMonoid.{u3} M _inst_2)))))) (DirectSum.{u1, u3} ι (fun (_i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2)) (SMulZeroClass.toSMul.{u2, max u3 u1} R (Finsupp.{u1, u3} ι M (NegZeroClass.toZero.{u3} M (SubNegZeroMonoid.toNegZeroClass.{u3} M (SubtractionMonoid.toSubNegZeroMonoid.{u3} M (SubtractionCommMonoid.toSubtractionMonoid.{u3} M (AddCommGroup.toDivisionAddCommMonoid.{u3} M _inst_2)))))) (AddMonoid.toZero.{max u3 u1} (Finsupp.{u1, u3} ι M (NegZeroClass.toZero.{u3} M (SubNegZeroMonoid.toNegZeroClass.{u3} M (SubtractionMonoid.toSubNegZeroMonoid.{u3} M (SubtractionCommMonoid.toSubtractionMonoid.{u3} M (AddCommGroup.toDivisionAddCommMonoid.{u3} M _inst_2)))))) (AddCommMonoid.toAddMonoid.{max u3 u1} (Finsupp.{u1, u3} ι M (NegZeroClass.toZero.{u3} M (SubNegZeroMonoid.toNegZeroClass.{u3} M (SubtractionMonoid.toSubNegZeroMonoid.{u3} M (SubtractionCommMonoid.toSubtractionMonoid.{u3} M (AddCommGroup.toDivisionAddCommMonoid.{u3} M _inst_2)))))) (Finsupp.addCommMonoid.{u1, u3} ι M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2)))) (DistribSMul.toSMulZeroClass.{u2, max u3 u1} R (Finsupp.{u1, u3} ι M (NegZeroClass.toZero.{u3} M (SubNegZeroMonoid.toNegZeroClass.{u3} M (SubtractionMonoid.toSubNegZeroMonoid.{u3} M (SubtractionCommMonoid.toSubtractionMonoid.{u3} M (AddCommGroup.toDivisionAddCommMonoid.{u3} M _inst_2)))))) (AddMonoid.toAddZeroClass.{max u3 u1} (Finsupp.{u1, u3} ι M (NegZeroClass.toZero.{u3} M (SubNegZeroMonoid.toNegZeroClass.{u3} M (SubtractionMonoid.toSubNegZeroMonoid.{u3} M (SubtractionCommMonoid.toSubtractionMonoid.{u3} M (AddCommGroup.toDivisionAddCommMonoid.{u3} M _inst_2)))))) (AddCommMonoid.toAddMonoid.{max u3 u1} (Finsupp.{u1, u3} ι M (NegZeroClass.toZero.{u3} M (SubNegZeroMonoid.toNegZeroClass.{u3} M (SubtractionMonoid.toSubNegZeroMonoid.{u3} M (SubtractionCommMonoid.toSubtractionMonoid.{u3} M (AddCommGroup.toDivisionAddCommMonoid.{u3} M _inst_2)))))) (Finsupp.addCommMonoid.{u1, u3} ι M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2)))) (DistribMulAction.toDistribSMul.{u2, max u3 u1} R (Finsupp.{u1, u3} ι M (NegZeroClass.toZero.{u3} M (SubNegZeroMonoid.toNegZeroClass.{u3} M (SubtractionMonoid.toSubNegZeroMonoid.{u3} M (SubtractionCommMonoid.toSubtractionMonoid.{u3} M (AddCommGroup.toDivisionAddCommMonoid.{u3} M _inst_2)))))) (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u3 u1} (Finsupp.{u1, u3} ι M (NegZeroClass.toZero.{u3} M (SubNegZeroMonoid.toNegZeroClass.{u3} M (SubtractionMonoid.toSubNegZeroMonoid.{u3} M (SubtractionCommMonoid.toSubtractionMonoid.{u3} M (AddCommGroup.toDivisionAddCommMonoid.{u3} M _inst_2)))))) (Finsupp.addCommMonoid.{u1, u3} ι M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2))) (Module.toDistribMulAction.{u2, max u3 u1} R (Finsupp.{u1, u3} ι M (NegZeroClass.toZero.{u3} M (SubNegZeroMonoid.toNegZeroClass.{u3} M (SubtractionMonoid.toSubNegZeroMonoid.{u3} M (SubtractionCommMonoid.toSubtractionMonoid.{u3} M (AddCommGroup.toDivisionAddCommMonoid.{u3} M _inst_2)))))) (Ring.toSemiring.{u2} R _inst_1) (Finsupp.addCommMonoid.{u1, u3} ι M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2)) (Finsupp.module.{u1, u3, u2} ι M R (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_3))))) (SMulZeroClass.toSMul.{u2, max u3 u1} R (DirectSum.{u1, u3} ι (fun (_i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2)) (AddMonoid.toZero.{max u3 u1} (DirectSum.{u1, u3} ι (fun (_i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2)) (AddCommMonoid.toAddMonoid.{max u3 u1} (DirectSum.{u1, u3} ι (fun (_i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2)) (instAddCommMonoidDirectSum.{u1, u3} ι (fun (_i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2)))) (DistribSMul.toSMulZeroClass.{u2, max u3 u1} R (DirectSum.{u1, u3} ι (fun (_i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2)) (AddMonoid.toAddZeroClass.{max u3 u1} (DirectSum.{u1, u3} ι (fun (_i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2)) (AddCommMonoid.toAddMonoid.{max u3 u1} (DirectSum.{u1, u3} ι (fun (_i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2)) (instAddCommMonoidDirectSum.{u1, u3} ι (fun (_i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2)))) (DistribMulAction.toDistribSMul.{u2, max u3 u1} R (DirectSum.{u1, u3} ι (fun (_i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2)) (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u3 u1} (DirectSum.{u1, u3} ι (fun (_i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2)) (instAddCommMonoidDirectSum.{u1, u3} ι (fun (_i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2))) (Module.toDistribMulAction.{u2, max u3 u1} R (DirectSum.{u1, u3} ι (fun (_i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2)) (Ring.toSemiring.{u2} R _inst_1) (instAddCommMonoidDirectSum.{u1, u3} ι (fun (_i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2)) (DirectSum.instModuleDirectSumInstAddCommMonoidDirectSum.{u2, u1, u3} R (Ring.toSemiring.{u2} R _inst_1) ι (fun (_i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2) (fun (i : ι) => _inst_3)))))) (DistribMulActionHomClass.toSMulHomClass.{max u3 u1, u2, max u3 u1, max u3 u1} (LinearEquiv.{u2, u2, max u3 u1, max u3 u1} R R (Ring.toSemiring.{u2} R _inst_1) (Ring.toSemiring.{u2} R _inst_1) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (Ring.toSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R (Ring.toSemiring.{u2} R _inst_1)) (Finsupp.{u1, u3} ι M (NegZeroClass.toZero.{u3} M (SubNegZeroMonoid.toNegZeroClass.{u3} M (SubtractionMonoid.toSubNegZeroMonoid.{u3} M (SubtractionCommMonoid.toSubtractionMonoid.{u3} M (AddCommGroup.toDivisionAddCommMonoid.{u3} M _inst_2)))))) (DirectSum.{u1, u3} ι (fun (_i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2)) (Finsupp.addCommMonoid.{u1, u3} ι M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2)) (instAddCommMonoidDirectSum.{u1, u3} ι (fun (_i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2)) (Finsupp.module.{u1, u3, u2} ι M R (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_3) (DirectSum.instModuleDirectSumInstAddCommMonoidDirectSum.{u2, u1, u3} R (Ring.toSemiring.{u2} R _inst_1) ι (fun (_i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2) (fun (i : ι) => _inst_3))) R (Finsupp.{u1, u3} ι M (NegZeroClass.toZero.{u3} M (SubNegZeroMonoid.toNegZeroClass.{u3} M (SubtractionMonoid.toSubNegZeroMonoid.{u3} M (SubtractionCommMonoid.toSubtractionMonoid.{u3} M (AddCommGroup.toDivisionAddCommMonoid.{u3} M _inst_2)))))) (DirectSum.{u1, u3} ι (fun (_i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2)) (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u3 u1} (Finsupp.{u1, u3} ι M (NegZeroClass.toZero.{u3} M (SubNegZeroMonoid.toNegZeroClass.{u3} M (SubtractionMonoid.toSubNegZeroMonoid.{u3} M (SubtractionCommMonoid.toSubtractionMonoid.{u3} M (AddCommGroup.toDivisionAddCommMonoid.{u3} M _inst_2)))))) (Finsupp.addCommMonoid.{u1, u3} ι M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2))) (AddCommMonoid.toAddMonoid.{max u3 u1} (DirectSum.{u1, u3} ι (fun (_i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2)) (instAddCommMonoidDirectSum.{u1, u3} ι (fun (_i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2))) (Module.toDistribMulAction.{u2, max u3 u1} R (Finsupp.{u1, u3} ι M (NegZeroClass.toZero.{u3} M (SubNegZeroMonoid.toNegZeroClass.{u3} M (SubtractionMonoid.toSubNegZeroMonoid.{u3} M (SubtractionCommMonoid.toSubtractionMonoid.{u3} M (AddCommGroup.toDivisionAddCommMonoid.{u3} M _inst_2)))))) (Ring.toSemiring.{u2} R _inst_1) (Finsupp.addCommMonoid.{u1, u3} ι M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2)) (Finsupp.module.{u1, u3, u2} ι M R (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_3)) (Module.toDistribMulAction.{u2, max u3 u1} R (DirectSum.{u1, u3} ι (fun (_i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2)) (Ring.toSemiring.{u2} R _inst_1) (instAddCommMonoidDirectSum.{u1, u3} ι (fun (_i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2)) (DirectSum.instModuleDirectSumInstAddCommMonoidDirectSum.{u2, u1, u3} R (Ring.toSemiring.{u2} R _inst_1) ι (fun (_i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2) (fun (i : ι) => _inst_3))) (SemilinearMapClass.distribMulActionHomClass.{u2, max u3 u1, max u3 u1, max u3 u1} R (Finsupp.{u1, u3} ι M (NegZeroClass.toZero.{u3} M (SubNegZeroMonoid.toNegZeroClass.{u3} M (SubtractionMonoid.toSubNegZeroMonoid.{u3} M (SubtractionCommMonoid.toSubtractionMonoid.{u3} M (AddCommGroup.toDivisionAddCommMonoid.{u3} M _inst_2)))))) (DirectSum.{u1, u3} ι (fun (_i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2)) (LinearEquiv.{u2, u2, max u3 u1, max u3 u1} R R (Ring.toSemiring.{u2} R _inst_1) (Ring.toSemiring.{u2} R _inst_1) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (Ring.toSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R (Ring.toSemiring.{u2} R _inst_1)) (Finsupp.{u1, u3} ι M (NegZeroClass.toZero.{u3} M (SubNegZeroMonoid.toNegZeroClass.{u3} M (SubtractionMonoid.toSubNegZeroMonoid.{u3} M (SubtractionCommMonoid.toSubtractionMonoid.{u3} M (AddCommGroup.toDivisionAddCommMonoid.{u3} M _inst_2)))))) (DirectSum.{u1, u3} ι (fun (_i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2)) (Finsupp.addCommMonoid.{u1, u3} ι M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2)) (instAddCommMonoidDirectSum.{u1, u3} ι (fun (_i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2)) (Finsupp.module.{u1, u3, u2} ι M R (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_3) (DirectSum.instModuleDirectSumInstAddCommMonoidDirectSum.{u2, u1, u3} R (Ring.toSemiring.{u2} R _inst_1) ι (fun (_i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2) (fun (i : ι) => _inst_3))) (Ring.toSemiring.{u2} R _inst_1) (Finsupp.addCommMonoid.{u1, u3} ι M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2)) (instAddCommMonoidDirectSum.{u1, u3} ι (fun (_i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2)) (Finsupp.module.{u1, u3, u2} ι M R (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_3) (DirectSum.instModuleDirectSumInstAddCommMonoidDirectSum.{u2, u1, u3} R (Ring.toSemiring.{u2} R _inst_1) ι (fun (_i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2) (fun (i : ι) => _inst_3)) (SemilinearEquivClass.instSemilinearMapClass.{u2, u2, max u3 u1, max u3 u1, max u3 u1} R R (Finsupp.{u1, u3} ι M (NegZeroClass.toZero.{u3} M (SubNegZeroMonoid.toNegZeroClass.{u3} M (SubtractionMonoid.toSubNegZeroMonoid.{u3} M (SubtractionCommMonoid.toSubtractionMonoid.{u3} M (AddCommGroup.toDivisionAddCommMonoid.{u3} M _inst_2)))))) (DirectSum.{u1, u3} ι (fun (_i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2)) (LinearEquiv.{u2, u2, max u3 u1, max u3 u1} R R (Ring.toSemiring.{u2} R _inst_1) (Ring.toSemiring.{u2} R _inst_1) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (Ring.toSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R (Ring.toSemiring.{u2} R _inst_1)) (Finsupp.{u1, u3} ι M (NegZeroClass.toZero.{u3} M (SubNegZeroMonoid.toNegZeroClass.{u3} M (SubtractionMonoid.toSubNegZeroMonoid.{u3} M (SubtractionCommMonoid.toSubtractionMonoid.{u3} M (AddCommGroup.toDivisionAddCommMonoid.{u3} M _inst_2)))))) (DirectSum.{u1, u3} ι (fun (_i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2)) (Finsupp.addCommMonoid.{u1, u3} ι M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2)) (instAddCommMonoidDirectSum.{u1, u3} ι (fun (_i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2)) (Finsupp.module.{u1, u3, u2} ι M R (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_3) (DirectSum.instModuleDirectSumInstAddCommMonoidDirectSum.{u2, u1, u3} R (Ring.toSemiring.{u2} R _inst_1) ι (fun (_i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2) (fun (i : ι) => _inst_3))) (Ring.toSemiring.{u2} R _inst_1) (Ring.toSemiring.{u2} R _inst_1) (Finsupp.addCommMonoid.{u1, u3} ι M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2)) (instAddCommMonoidDirectSum.{u1, u3} ι (fun (_i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2)) (Finsupp.module.{u1, u3, u2} ι M R (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_3) (DirectSum.instModuleDirectSumInstAddCommMonoidDirectSum.{u2, u1, u3} R (Ring.toSemiring.{u2} R _inst_1) ι (fun (_i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2) (fun (i : ι) => _inst_3)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (Ring.toSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R (Ring.toSemiring.{u2} R _inst_1)) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u2, u2, max u3 u1, max u3 u1} R R (Finsupp.{u1, u3} ι M (NegZeroClass.toZero.{u3} M (SubNegZeroMonoid.toNegZeroClass.{u3} M (SubtractionMonoid.toSubNegZeroMonoid.{u3} M (SubtractionCommMonoid.toSubtractionMonoid.{u3} M (AddCommGroup.toDivisionAddCommMonoid.{u3} M _inst_2)))))) (DirectSum.{u1, u3} ι (fun (_i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2)) (Ring.toSemiring.{u2} R _inst_1) (Ring.toSemiring.{u2} R _inst_1) (Finsupp.addCommMonoid.{u1, u3} ι M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2)) (instAddCommMonoidDirectSum.{u1, u3} ι (fun (_i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2)) (Finsupp.module.{u1, u3, u2} ι M R (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_3) (DirectSum.instModuleDirectSumInstAddCommMonoidDirectSum.{u2, u1, u3} R (Ring.toSemiring.{u2} R _inst_1) ι (fun (_i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2) (fun (i : ι) => _inst_3)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (Ring.toSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R (Ring.toSemiring.{u2} R _inst_1))))))) (finsuppLEquivDirectSum.{u2, u3, u1} R M _inst_1 _inst_2 _inst_3 ι (fun (a : ι) (b : ι) => _inst_4 a b)) (Finsupp.single.{u1, u3} ι M (NegZeroClass.toZero.{u3} M (SubNegZeroMonoid.toNegZeroClass.{u3} M (SubtractionMonoid.toSubNegZeroMonoid.{u3} M (SubtractionCommMonoid.toSubtractionMonoid.{u3} M (AddCommGroup.toDivisionAddCommMonoid.{u3} M _inst_2))))) i m)) (FunLike.coe.{max (succ u1) (succ u3), succ u3, max (succ u1) (succ u3)} (LinearMap.{u2, u2, u3, max u3 u1} R R (Ring.toSemiring.{u2} R _inst_1) (Ring.toSemiring.{u2} R _inst_1) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))) M (DirectSum.{u1, u3} ι (fun (i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2)) (AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2) (instAddCommMonoidDirectSum.{u1, u3} ι (fun (i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2)) _inst_3 (DirectSum.instModuleDirectSumInstAddCommMonoidDirectSum.{u2, u1, u3} R (Ring.toSemiring.{u2} R _inst_1) ι (fun (i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2) (fun (i : ι) => _inst_3))) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6193 : M) => DirectSum.{u1, u3} ι (fun (i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2)) _x) (LinearMap.instFunLikeLinearMap.{u2, u2, u3, max u1 u3} R R M (DirectSum.{u1, u3} ι (fun (i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2)) (Ring.toSemiring.{u2} R _inst_1) (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2) (instAddCommMonoidDirectSum.{u1, u3} ι (fun (i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2)) _inst_3 (DirectSum.instModuleDirectSumInstAddCommMonoidDirectSum.{u2, u1, u3} R (Ring.toSemiring.{u2} R _inst_1) ι (fun (i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2) (fun (i : ι) => _inst_3)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (DirectSum.lof.{u2, u1, u3} R (Ring.toSemiring.{u2} R _inst_1) ι (fun (a : ι) (b : ι) => _inst_4 a b) (fun (i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2) (fun (i : ι) => _inst_3) i) m)
Case conversion may be inaccurate. Consider using '#align finsupp_lequiv_direct_sum_single finsuppLEquivDirectSum_singleₓ'. -/
@[simp]
theorem finsuppLEquivDirectSum_single (i : ι) (m : M) :
@@ -65,7 +65,7 @@ theorem finsuppLEquivDirectSum_single (i : ι) (m : M) :
lean 3 declaration is
forall (R : Type.{u1}) (M : Type.{u2}) [_inst_1 : Ring.{u1} R] [_inst_2 : AddCommGroup.{u2} M] [_inst_3 : Module.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2)] (ι : Type.{u3}) [_inst_4 : DecidableEq.{succ u3} ι] (i : ι) (m : M), Eq.{max (succ u3) (succ u2)} (Finsupp.{u3, u2} ι M (AddZeroClass.toHasZero.{u2} M (AddMonoid.toAddZeroClass.{u2} M (SubNegMonoid.toAddMonoid.{u2} M (AddGroup.toSubNegMonoid.{u2} M (AddCommGroup.toAddGroup.{u2} M _inst_2)))))) (coeFn.{succ (max u3 u2), succ (max u3 u2)} (LinearEquiv.{u1, u1, max u3 u2, max u3 u2} R R (Ring.toSemiring.{u1} R _inst_1) (Ring.toSemiring.{u1} R _inst_1) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R _inst_1))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R _inst_1))) (finsuppLEquivDirectSum._proof_2.{u1} R _inst_1) (finsuppLEquivDirectSum._proof_1.{u1} R _inst_1) (DirectSum.{u3, u2} ι (fun (i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u2} M _inst_2)) (Finsupp.{u3, u2} ι M (AddZeroClass.toHasZero.{u2} M (AddMonoid.toAddZeroClass.{u2} M (SubNegMonoid.toAddMonoid.{u2} M (AddGroup.toSubNegMonoid.{u2} M (AddCommGroup.toAddGroup.{u2} M _inst_2)))))) (DirectSum.addCommMonoid.{u3, u2} ι (fun (i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u2} M _inst_2)) (Finsupp.addCommMonoid.{u3, u2} ι M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2)) (DirectSum.module.{u1, u3, u2} R (Ring.toSemiring.{u1} R _inst_1) ι (fun (i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (fun (i : ι) => _inst_3)) (Finsupp.module.{u3, u2, u1} ι M R (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3)) (fun (_x : LinearEquiv.{u1, u1, max u3 u2, max u3 u2} R R (Ring.toSemiring.{u1} R _inst_1) (Ring.toSemiring.{u1} R _inst_1) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R _inst_1))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R _inst_1))) (finsuppLEquivDirectSum._proof_2.{u1} R _inst_1) (finsuppLEquivDirectSum._proof_1.{u1} R _inst_1) (DirectSum.{u3, u2} ι (fun (i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u2} M _inst_2)) (Finsupp.{u3, u2} ι M (AddZeroClass.toHasZero.{u2} M (AddMonoid.toAddZeroClass.{u2} M (SubNegMonoid.toAddMonoid.{u2} M (AddGroup.toSubNegMonoid.{u2} M (AddCommGroup.toAddGroup.{u2} M _inst_2)))))) (DirectSum.addCommMonoid.{u3, u2} ι (fun (i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u2} M _inst_2)) (Finsupp.addCommMonoid.{u3, u2} ι M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2)) (DirectSum.module.{u1, u3, u2} R (Ring.toSemiring.{u1} R _inst_1) ι (fun (i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (fun (i : ι) => _inst_3)) (Finsupp.module.{u3, u2, u1} ι M R (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3)) => (DirectSum.{u3, u2} ι (fun (i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u2} M _inst_2)) -> (Finsupp.{u3, u2} ι M (AddZeroClass.toHasZero.{u2} M (AddMonoid.toAddZeroClass.{u2} M (SubNegMonoid.toAddMonoid.{u2} M (AddGroup.toSubNegMonoid.{u2} M (AddCommGroup.toAddGroup.{u2} M _inst_2))))))) (LinearEquiv.hasCoeToFun.{u1, u1, max u3 u2, max u3 u2} R R (DirectSum.{u3, u2} ι (fun (i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u2} M _inst_2)) (Finsupp.{u3, u2} ι M (AddZeroClass.toHasZero.{u2} M (AddMonoid.toAddZeroClass.{u2} M (SubNegMonoid.toAddMonoid.{u2} M (AddGroup.toSubNegMonoid.{u2} M (AddCommGroup.toAddGroup.{u2} M _inst_2)))))) (Ring.toSemiring.{u1} R _inst_1) (Ring.toSemiring.{u1} R _inst_1) (DirectSum.addCommMonoid.{u3, u2} ι (fun (i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u2} M _inst_2)) (Finsupp.addCommMonoid.{u3, u2} ι M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2)) (DirectSum.module.{u1, u3, u2} R (Ring.toSemiring.{u1} R _inst_1) ι (fun (i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (fun (i : ι) => _inst_3)) (Finsupp.module.{u3, u2, u1} ι M R (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R _inst_1))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R _inst_1))) (finsuppLEquivDirectSum._proof_2.{u1} R _inst_1) (finsuppLEquivDirectSum._proof_1.{u1} R _inst_1)) (LinearEquiv.symm.{u1, u1, max u3 u2, max u3 u2} R R (Finsupp.{u3, u2} ι M (AddZeroClass.toHasZero.{u2} M (AddMonoid.toAddZeroClass.{u2} M (SubNegMonoid.toAddMonoid.{u2} M (AddGroup.toSubNegMonoid.{u2} M (AddCommGroup.toAddGroup.{u2} M _inst_2)))))) (DirectSum.{u3, u2} ι (fun (i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u2} M _inst_2)) (Ring.toSemiring.{u1} R _inst_1) (Ring.toSemiring.{u1} R _inst_1) (Finsupp.addCommMonoid.{u3, u2} ι M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2)) (DirectSum.addCommMonoid.{u3, u2} ι (fun (i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u2} M _inst_2)) (Finsupp.module.{u3, u2, u1} ι M R (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3) (DirectSum.module.{u1, u3, u2} R (Ring.toSemiring.{u1} R _inst_1) ι (fun (i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (fun (i : ι) => _inst_3)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R _inst_1))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R _inst_1))) (finsuppLEquivDirectSum._proof_1.{u1} R _inst_1) (finsuppLEquivDirectSum._proof_2.{u1} R _inst_1) (finsuppLEquivDirectSum.{u1, u2, u3} R M _inst_1 _inst_2 _inst_3 ι (fun (a : ι) (b : ι) => _inst_4 a b))) (coeFn.{max (succ u2) (succ (max u3 u2)), max (succ u2) (succ (max u3 u2))} (LinearMap.{u1, u1, u2, max u3 u2} R R (Ring.toSemiring.{u1} R _inst_1) (Ring.toSemiring.{u1} R _inst_1) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R _inst_1))) M (DirectSum.{u3, u2} ι (fun (i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u2} M _inst_2)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (DirectSum.addCommMonoid.{u3, u2} ι (fun (i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u2} M _inst_2)) _inst_3 (DirectSum.module.{u1, u3, u2} R (Ring.toSemiring.{u1} R _inst_1) ι (fun (i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (fun (i : ι) => _inst_3))) (fun (_x : LinearMap.{u1, u1, u2, max u3 u2} R R (Ring.toSemiring.{u1} R _inst_1) (Ring.toSemiring.{u1} R _inst_1) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R _inst_1))) M (DirectSum.{u3, u2} ι (fun (i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u2} M _inst_2)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (DirectSum.addCommMonoid.{u3, u2} ι (fun (i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u2} M _inst_2)) _inst_3 (DirectSum.module.{u1, u3, u2} R (Ring.toSemiring.{u1} R _inst_1) ι (fun (i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (fun (i : ι) => _inst_3))) => M -> (DirectSum.{u3, u2} ι (fun (i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u2} M _inst_2))) (LinearMap.hasCoeToFun.{u1, u1, u2, max u3 u2} R R M (DirectSum.{u3, u2} ι (fun (i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u2} M _inst_2)) (Ring.toSemiring.{u1} R _inst_1) (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (DirectSum.addCommMonoid.{u3, u2} ι (fun (i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u2} M _inst_2)) _inst_3 (DirectSum.module.{u1, u3, u2} R (Ring.toSemiring.{u1} R _inst_1) ι (fun (i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (fun (i : ι) => _inst_3)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R _inst_1)))) (DirectSum.lof.{u1, u3, u2} R (Ring.toSemiring.{u1} R _inst_1) ι (fun (a : ι) (b : ι) => _inst_4 a b) (fun (i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (fun (i : ι) => _inst_3) i) m)) (Finsupp.single.{u3, u2} ι M (AddZeroClass.toHasZero.{u2} M (AddMonoid.toAddZeroClass.{u2} M (SubNegMonoid.toAddMonoid.{u2} M (AddGroup.toSubNegMonoid.{u2} M (AddCommGroup.toAddGroup.{u2} M _inst_2))))) i m)
but is expected to have type
- forall (R : Type.{u2}) (M : Type.{u3}) [_inst_1 : Ring.{u2} R] [_inst_2 : AddCommGroup.{u3} M] [_inst_3 : Module.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2)] (ι : Type.{u1}) [_inst_4 : DecidableEq.{succ u1} ι] (i : ι) (m : M), Eq.{max (succ u3) (succ u1)} ((fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : DirectSum.{u1, u3} ι (fun (_i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2)) => Finsupp.{u1, u3} ι M (NegZeroClass.toZero.{u3} M (SubNegZeroMonoid.toNegZeroClass.{u3} M (SubtractionMonoid.toSubNegZeroMonoid.{u3} M (SubtractionCommMonoid.toSubtractionMonoid.{u3} M (AddCommGroup.toDivisionAddCommMonoid.{u3} M _inst_2)))))) (FunLike.coe.{max (succ u1) (succ u3), succ u3, max (succ u1) (succ u3)} (LinearMap.{u2, u2, u3, max u3 u1} R R (Ring.toSemiring.{u2} R _inst_1) (Ring.toSemiring.{u2} R _inst_1) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))) M (DirectSum.{u1, u3} ι (fun (i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2)) (AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2) (instAddCommMonoidDirectSum.{u1, u3} ι (fun (i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2)) _inst_3 (DirectSum.instModuleDirectSumInstAddCommMonoidDirectSum.{u2, u1, u3} R (Ring.toSemiring.{u2} R _inst_1) ι (fun (i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2) (fun (i : ι) => _inst_3))) M (fun (a : M) => (fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6191 : M) => DirectSum.{u1, u3} ι (fun (i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2)) a) (LinearMap.instFunLikeLinearMap.{u2, u2, u3, max u1 u3} R R M (DirectSum.{u1, u3} ι (fun (i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2)) (Ring.toSemiring.{u2} R _inst_1) (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2) (instAddCommMonoidDirectSum.{u1, u3} ι (fun (i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2)) _inst_3 (DirectSum.instModuleDirectSumInstAddCommMonoidDirectSum.{u2, u1, u3} R (Ring.toSemiring.{u2} R _inst_1) ι (fun (i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2) (fun (i : ι) => _inst_3)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (DirectSum.lof.{u2, u1, u3} R (Ring.toSemiring.{u2} R _inst_1) ι (fun (a : ι) (b : ι) => _inst_4 a b) (fun (_i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2) (fun (i : ι) => _inst_3) i) m)) (FunLike.coe.{max (succ u3) (succ u1), max (succ u3) (succ u1), max (succ u3) (succ u1)} (LinearEquiv.{u2, u2, max u3 u1, max u3 u1} R R (Ring.toSemiring.{u2} R _inst_1) (Ring.toSemiring.{u2} R _inst_1) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (Ring.toSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R (Ring.toSemiring.{u2} R _inst_1)) (DirectSum.{u1, u3} ι (fun (_i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2)) (Finsupp.{u1, u3} ι M (NegZeroClass.toZero.{u3} M (SubNegZeroMonoid.toNegZeroClass.{u3} M (SubtractionMonoid.toSubNegZeroMonoid.{u3} M (SubtractionCommMonoid.toSubtractionMonoid.{u3} M (AddCommGroup.toDivisionAddCommMonoid.{u3} M _inst_2)))))) (instAddCommMonoidDirectSum.{u1, u3} ι (fun (_i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2)) (Finsupp.addCommMonoid.{u1, u3} ι M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2)) (DirectSum.instModuleDirectSumInstAddCommMonoidDirectSum.{u2, u1, u3} R (Ring.toSemiring.{u2} R _inst_1) ι (fun (_i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2) (fun (i : ι) => _inst_3)) (Finsupp.module.{u1, u3, u2} ι M R (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_3)) (DirectSum.{u1, u3} ι (fun (_i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2)) (fun (_x : DirectSum.{u1, u3} ι (fun (_i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2)) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : DirectSum.{u1, u3} ι (fun (_i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2)) => Finsupp.{u1, u3} ι M (NegZeroClass.toZero.{u3} M (SubNegZeroMonoid.toNegZeroClass.{u3} M (SubtractionMonoid.toSubNegZeroMonoid.{u3} M (SubtractionCommMonoid.toSubtractionMonoid.{u3} M (AddCommGroup.toDivisionAddCommMonoid.{u3} M _inst_2)))))) _x) (SMulHomClass.toFunLike.{max u3 u1, u2, max u3 u1, max u3 u1} (LinearEquiv.{u2, u2, max u3 u1, max u3 u1} R R (Ring.toSemiring.{u2} R _inst_1) (Ring.toSemiring.{u2} R _inst_1) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (Ring.toSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R (Ring.toSemiring.{u2} R _inst_1)) (DirectSum.{u1, u3} ι (fun (_i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2)) (Finsupp.{u1, u3} ι M (NegZeroClass.toZero.{u3} M (SubNegZeroMonoid.toNegZeroClass.{u3} M (SubtractionMonoid.toSubNegZeroMonoid.{u3} M (SubtractionCommMonoid.toSubtractionMonoid.{u3} M (AddCommGroup.toDivisionAddCommMonoid.{u3} M _inst_2)))))) (instAddCommMonoidDirectSum.{u1, u3} ι (fun (_i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2)) (Finsupp.addCommMonoid.{u1, u3} ι M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2)) (DirectSum.instModuleDirectSumInstAddCommMonoidDirectSum.{u2, u1, u3} R (Ring.toSemiring.{u2} R _inst_1) ι (fun (_i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2) (fun (i : ι) => _inst_3)) (Finsupp.module.{u1, u3, u2} ι M R (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_3)) R (DirectSum.{u1, u3} ι (fun (_i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2)) (Finsupp.{u1, u3} ι M (NegZeroClass.toZero.{u3} M (SubNegZeroMonoid.toNegZeroClass.{u3} M (SubtractionMonoid.toSubNegZeroMonoid.{u3} M (SubtractionCommMonoid.toSubtractionMonoid.{u3} M (AddCommGroup.toDivisionAddCommMonoid.{u3} M _inst_2)))))) (SMulZeroClass.toSMul.{u2, max u3 u1} R (DirectSum.{u1, u3} ι (fun (_i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2)) (AddMonoid.toZero.{max u3 u1} (DirectSum.{u1, u3} ι (fun (_i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2)) (AddCommMonoid.toAddMonoid.{max u3 u1} (DirectSum.{u1, u3} ι (fun (_i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2)) (instAddCommMonoidDirectSum.{u1, u3} ι (fun (_i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2)))) (DistribSMul.toSMulZeroClass.{u2, max u3 u1} R (DirectSum.{u1, u3} ι (fun (_i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2)) (AddMonoid.toAddZeroClass.{max u3 u1} (DirectSum.{u1, u3} ι (fun (_i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2)) (AddCommMonoid.toAddMonoid.{max u3 u1} (DirectSum.{u1, u3} ι (fun (_i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2)) (instAddCommMonoidDirectSum.{u1, u3} ι (fun (_i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2)))) (DistribMulAction.toDistribSMul.{u2, max u3 u1} R (DirectSum.{u1, u3} ι (fun (_i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2)) (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u3 u1} (DirectSum.{u1, u3} ι (fun (_i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2)) (instAddCommMonoidDirectSum.{u1, u3} ι (fun (_i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2))) (Module.toDistribMulAction.{u2, max u3 u1} R (DirectSum.{u1, u3} ι (fun (_i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2)) (Ring.toSemiring.{u2} R _inst_1) (instAddCommMonoidDirectSum.{u1, u3} ι (fun (_i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2)) (DirectSum.instModuleDirectSumInstAddCommMonoidDirectSum.{u2, u1, u3} R (Ring.toSemiring.{u2} R _inst_1) ι (fun (_i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2) (fun (i : ι) => _inst_3)))))) (SMulZeroClass.toSMul.{u2, max u3 u1} R (Finsupp.{u1, u3} ι M (NegZeroClass.toZero.{u3} M (SubNegZeroMonoid.toNegZeroClass.{u3} M (SubtractionMonoid.toSubNegZeroMonoid.{u3} M (SubtractionCommMonoid.toSubtractionMonoid.{u3} M (AddCommGroup.toDivisionAddCommMonoid.{u3} M _inst_2)))))) (AddMonoid.toZero.{max u3 u1} (Finsupp.{u1, u3} ι M (NegZeroClass.toZero.{u3} M (SubNegZeroMonoid.toNegZeroClass.{u3} M (SubtractionMonoid.toSubNegZeroMonoid.{u3} M (SubtractionCommMonoid.toSubtractionMonoid.{u3} M (AddCommGroup.toDivisionAddCommMonoid.{u3} M _inst_2)))))) (AddCommMonoid.toAddMonoid.{max u3 u1} (Finsupp.{u1, u3} ι M (NegZeroClass.toZero.{u3} M (SubNegZeroMonoid.toNegZeroClass.{u3} M (SubtractionMonoid.toSubNegZeroMonoid.{u3} M (SubtractionCommMonoid.toSubtractionMonoid.{u3} M (AddCommGroup.toDivisionAddCommMonoid.{u3} M _inst_2)))))) (Finsupp.addCommMonoid.{u1, u3} ι M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2)))) (DistribSMul.toSMulZeroClass.{u2, max u3 u1} R (Finsupp.{u1, u3} ι M (NegZeroClass.toZero.{u3} M (SubNegZeroMonoid.toNegZeroClass.{u3} M (SubtractionMonoid.toSubNegZeroMonoid.{u3} M (SubtractionCommMonoid.toSubtractionMonoid.{u3} M (AddCommGroup.toDivisionAddCommMonoid.{u3} M _inst_2)))))) (AddMonoid.toAddZeroClass.{max u3 u1} (Finsupp.{u1, u3} ι M (NegZeroClass.toZero.{u3} M (SubNegZeroMonoid.toNegZeroClass.{u3} M (SubtractionMonoid.toSubNegZeroMonoid.{u3} M (SubtractionCommMonoid.toSubtractionMonoid.{u3} M (AddCommGroup.toDivisionAddCommMonoid.{u3} M _inst_2)))))) (AddCommMonoid.toAddMonoid.{max u3 u1} (Finsupp.{u1, u3} ι M (NegZeroClass.toZero.{u3} M (SubNegZeroMonoid.toNegZeroClass.{u3} M (SubtractionMonoid.toSubNegZeroMonoid.{u3} M (SubtractionCommMonoid.toSubtractionMonoid.{u3} M (AddCommGroup.toDivisionAddCommMonoid.{u3} M _inst_2)))))) (Finsupp.addCommMonoid.{u1, u3} ι M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2)))) (DistribMulAction.toDistribSMul.{u2, max u3 u1} R (Finsupp.{u1, u3} ι M (NegZeroClass.toZero.{u3} M (SubNegZeroMonoid.toNegZeroClass.{u3} M (SubtractionMonoid.toSubNegZeroMonoid.{u3} M (SubtractionCommMonoid.toSubtractionMonoid.{u3} M (AddCommGroup.toDivisionAddCommMonoid.{u3} M _inst_2)))))) (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u3 u1} (Finsupp.{u1, u3} ι M (NegZeroClass.toZero.{u3} M (SubNegZeroMonoid.toNegZeroClass.{u3} M (SubtractionMonoid.toSubNegZeroMonoid.{u3} M (SubtractionCommMonoid.toSubtractionMonoid.{u3} M (AddCommGroup.toDivisionAddCommMonoid.{u3} M _inst_2)))))) (Finsupp.addCommMonoid.{u1, u3} ι M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2))) (Module.toDistribMulAction.{u2, max u3 u1} R (Finsupp.{u1, u3} ι M (NegZeroClass.toZero.{u3} M (SubNegZeroMonoid.toNegZeroClass.{u3} M (SubtractionMonoid.toSubNegZeroMonoid.{u3} M (SubtractionCommMonoid.toSubtractionMonoid.{u3} M (AddCommGroup.toDivisionAddCommMonoid.{u3} M _inst_2)))))) (Ring.toSemiring.{u2} R _inst_1) (Finsupp.addCommMonoid.{u1, u3} ι M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2)) (Finsupp.module.{u1, u3, u2} ι M R (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_3))))) (DistribMulActionHomClass.toSMulHomClass.{max u3 u1, u2, max u3 u1, max u3 u1} (LinearEquiv.{u2, u2, max u3 u1, max u3 u1} R R (Ring.toSemiring.{u2} R _inst_1) (Ring.toSemiring.{u2} R _inst_1) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (Ring.toSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R (Ring.toSemiring.{u2} R _inst_1)) (DirectSum.{u1, u3} ι (fun (_i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2)) (Finsupp.{u1, u3} ι M (NegZeroClass.toZero.{u3} M (SubNegZeroMonoid.toNegZeroClass.{u3} M (SubtractionMonoid.toSubNegZeroMonoid.{u3} M (SubtractionCommMonoid.toSubtractionMonoid.{u3} M (AddCommGroup.toDivisionAddCommMonoid.{u3} M _inst_2)))))) (instAddCommMonoidDirectSum.{u1, u3} ι (fun (_i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2)) (Finsupp.addCommMonoid.{u1, u3} ι M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2)) (DirectSum.instModuleDirectSumInstAddCommMonoidDirectSum.{u2, u1, u3} R (Ring.toSemiring.{u2} R _inst_1) ι (fun (_i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2) (fun (i : ι) => _inst_3)) (Finsupp.module.{u1, u3, u2} ι M R (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_3)) R (DirectSum.{u1, u3} ι (fun (_i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2)) (Finsupp.{u1, u3} ι M (NegZeroClass.toZero.{u3} M (SubNegZeroMonoid.toNegZeroClass.{u3} M (SubtractionMonoid.toSubNegZeroMonoid.{u3} M (SubtractionCommMonoid.toSubtractionMonoid.{u3} M (AddCommGroup.toDivisionAddCommMonoid.{u3} M _inst_2)))))) (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u3 u1} (DirectSum.{u1, u3} ι (fun (_i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2)) (instAddCommMonoidDirectSum.{u1, u3} ι (fun (_i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2))) (AddCommMonoid.toAddMonoid.{max u3 u1} (Finsupp.{u1, u3} ι M (NegZeroClass.toZero.{u3} M (SubNegZeroMonoid.toNegZeroClass.{u3} M (SubtractionMonoid.toSubNegZeroMonoid.{u3} M (SubtractionCommMonoid.toSubtractionMonoid.{u3} M (AddCommGroup.toDivisionAddCommMonoid.{u3} M _inst_2)))))) (Finsupp.addCommMonoid.{u1, u3} ι M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2))) (Module.toDistribMulAction.{u2, max u3 u1} R (DirectSum.{u1, u3} ι (fun (_i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2)) (Ring.toSemiring.{u2} R _inst_1) (instAddCommMonoidDirectSum.{u1, u3} ι (fun (_i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2)) (DirectSum.instModuleDirectSumInstAddCommMonoidDirectSum.{u2, u1, u3} R (Ring.toSemiring.{u2} R _inst_1) ι (fun (_i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2) (fun (i : ι) => _inst_3))) (Module.toDistribMulAction.{u2, max u3 u1} R (Finsupp.{u1, u3} ι M (NegZeroClass.toZero.{u3} M (SubNegZeroMonoid.toNegZeroClass.{u3} M (SubtractionMonoid.toSubNegZeroMonoid.{u3} M (SubtractionCommMonoid.toSubtractionMonoid.{u3} M (AddCommGroup.toDivisionAddCommMonoid.{u3} M _inst_2)))))) (Ring.toSemiring.{u2} R _inst_1) (Finsupp.addCommMonoid.{u1, u3} ι M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2)) (Finsupp.module.{u1, u3, u2} ι M R (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_3)) (SemilinearMapClass.distribMulActionHomClass.{u2, max u3 u1, max u3 u1, max u3 u1} R (DirectSum.{u1, u3} ι (fun (_i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2)) (Finsupp.{u1, u3} ι M (NegZeroClass.toZero.{u3} M (SubNegZeroMonoid.toNegZeroClass.{u3} M (SubtractionMonoid.toSubNegZeroMonoid.{u3} M (SubtractionCommMonoid.toSubtractionMonoid.{u3} M (AddCommGroup.toDivisionAddCommMonoid.{u3} M _inst_2)))))) (LinearEquiv.{u2, u2, max u3 u1, max u3 u1} R R (Ring.toSemiring.{u2} R _inst_1) (Ring.toSemiring.{u2} R _inst_1) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (Ring.toSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R (Ring.toSemiring.{u2} R _inst_1)) (DirectSum.{u1, u3} ι (fun (_i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2)) (Finsupp.{u1, u3} ι M (NegZeroClass.toZero.{u3} M (SubNegZeroMonoid.toNegZeroClass.{u3} M (SubtractionMonoid.toSubNegZeroMonoid.{u3} M (SubtractionCommMonoid.toSubtractionMonoid.{u3} M (AddCommGroup.toDivisionAddCommMonoid.{u3} M _inst_2)))))) (instAddCommMonoidDirectSum.{u1, u3} ι (fun (_i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2)) (Finsupp.addCommMonoid.{u1, u3} ι M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2)) (DirectSum.instModuleDirectSumInstAddCommMonoidDirectSum.{u2, u1, u3} R (Ring.toSemiring.{u2} R _inst_1) ι (fun (_i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2) (fun (i : ι) => _inst_3)) (Finsupp.module.{u1, u3, u2} ι M R (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_3)) (Ring.toSemiring.{u2} R _inst_1) (instAddCommMonoidDirectSum.{u1, u3} ι (fun (_i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2)) (Finsupp.addCommMonoid.{u1, u3} ι M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2)) (DirectSum.instModuleDirectSumInstAddCommMonoidDirectSum.{u2, u1, u3} R (Ring.toSemiring.{u2} R _inst_1) ι (fun (_i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2) (fun (i : ι) => _inst_3)) (Finsupp.module.{u1, u3, u2} ι M R (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_3) (SemilinearEquivClass.instSemilinearMapClass.{u2, u2, max u3 u1, max u3 u1, max u3 u1} R R (DirectSum.{u1, u3} ι (fun (_i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2)) (Finsupp.{u1, u3} ι M (NegZeroClass.toZero.{u3} M (SubNegZeroMonoid.toNegZeroClass.{u3} M (SubtractionMonoid.toSubNegZeroMonoid.{u3} M (SubtractionCommMonoid.toSubtractionMonoid.{u3} M (AddCommGroup.toDivisionAddCommMonoid.{u3} M _inst_2)))))) (LinearEquiv.{u2, u2, max u3 u1, max u3 u1} R R (Ring.toSemiring.{u2} R _inst_1) (Ring.toSemiring.{u2} R _inst_1) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (Ring.toSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R (Ring.toSemiring.{u2} R _inst_1)) (DirectSum.{u1, u3} ι (fun (_i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2)) (Finsupp.{u1, u3} ι M (NegZeroClass.toZero.{u3} M (SubNegZeroMonoid.toNegZeroClass.{u3} M (SubtractionMonoid.toSubNegZeroMonoid.{u3} M (SubtractionCommMonoid.toSubtractionMonoid.{u3} M (AddCommGroup.toDivisionAddCommMonoid.{u3} M _inst_2)))))) (instAddCommMonoidDirectSum.{u1, u3} ι (fun (_i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2)) (Finsupp.addCommMonoid.{u1, u3} ι M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2)) (DirectSum.instModuleDirectSumInstAddCommMonoidDirectSum.{u2, u1, u3} R (Ring.toSemiring.{u2} R _inst_1) ι (fun (_i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2) (fun (i : ι) => _inst_3)) (Finsupp.module.{u1, u3, u2} ι M R (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_3)) (Ring.toSemiring.{u2} R _inst_1) (Ring.toSemiring.{u2} R _inst_1) (instAddCommMonoidDirectSum.{u1, u3} ι (fun (_i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2)) (Finsupp.addCommMonoid.{u1, u3} ι M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2)) (DirectSum.instModuleDirectSumInstAddCommMonoidDirectSum.{u2, u1, u3} R (Ring.toSemiring.{u2} R _inst_1) ι (fun (_i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2) (fun (i : ι) => _inst_3)) (Finsupp.module.{u1, u3, u2} ι M R (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_3) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (Ring.toSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R (Ring.toSemiring.{u2} R _inst_1)) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u2, u2, max u3 u1, max u3 u1} R R (DirectSum.{u1, u3} ι (fun (_i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2)) (Finsupp.{u1, u3} ι M (NegZeroClass.toZero.{u3} M (SubNegZeroMonoid.toNegZeroClass.{u3} M (SubtractionMonoid.toSubNegZeroMonoid.{u3} M (SubtractionCommMonoid.toSubtractionMonoid.{u3} M (AddCommGroup.toDivisionAddCommMonoid.{u3} M _inst_2)))))) (Ring.toSemiring.{u2} R _inst_1) (Ring.toSemiring.{u2} R _inst_1) (instAddCommMonoidDirectSum.{u1, u3} ι (fun (_i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2)) (Finsupp.addCommMonoid.{u1, u3} ι M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2)) (DirectSum.instModuleDirectSumInstAddCommMonoidDirectSum.{u2, u1, u3} R (Ring.toSemiring.{u2} R _inst_1) ι (fun (_i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2) (fun (i : ι) => _inst_3)) (Finsupp.module.{u1, u3, u2} ι M R (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_3) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (Ring.toSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R (Ring.toSemiring.{u2} R _inst_1))))))) (LinearEquiv.symm.{u2, u2, max u3 u1, max u3 u1} R R (Finsupp.{u1, u3} ι M (NegZeroClass.toZero.{u3} M (SubNegZeroMonoid.toNegZeroClass.{u3} M (SubtractionMonoid.toSubNegZeroMonoid.{u3} M (SubtractionCommMonoid.toSubtractionMonoid.{u3} M (AddCommGroup.toDivisionAddCommMonoid.{u3} M _inst_2)))))) (DirectSum.{u1, u3} ι (fun (i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2)) (Ring.toSemiring.{u2} R _inst_1) (Ring.toSemiring.{u2} R _inst_1) (Finsupp.addCommMonoid.{u1, u3} ι M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2)) (instAddCommMonoidDirectSum.{u1, u3} ι (fun (i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2)) (Finsupp.module.{u1, u3, u2} ι M R (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_3) (DirectSum.instModuleDirectSumInstAddCommMonoidDirectSum.{u2, u1, u3} R (Ring.toSemiring.{u2} R _inst_1) ι (fun (i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2) (fun (i : ι) => _inst_3)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (Ring.toSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R (Ring.toSemiring.{u2} R _inst_1)) (finsuppLEquivDirectSum.{u2, u3, u1} R M _inst_1 _inst_2 _inst_3 ι (fun (a : ι) (b : ι) => _inst_4 a b))) (FunLike.coe.{max (succ u1) (succ u3), succ u3, max (succ u1) (succ u3)} (LinearMap.{u2, u2, u3, max u3 u1} R R (Ring.toSemiring.{u2} R _inst_1) (Ring.toSemiring.{u2} R _inst_1) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))) M (DirectSum.{u1, u3} ι (fun (i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2)) (AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2) (instAddCommMonoidDirectSum.{u1, u3} ι (fun (i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2)) _inst_3 (DirectSum.instModuleDirectSumInstAddCommMonoidDirectSum.{u2, u1, u3} R (Ring.toSemiring.{u2} R _inst_1) ι (fun (i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2) (fun (i : ι) => _inst_3))) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6191 : M) => DirectSum.{u1, u3} ι (fun (i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2)) _x) (LinearMap.instFunLikeLinearMap.{u2, u2, u3, max u1 u3} R R M (DirectSum.{u1, u3} ι (fun (i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2)) (Ring.toSemiring.{u2} R _inst_1) (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2) (instAddCommMonoidDirectSum.{u1, u3} ι (fun (i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2)) _inst_3 (DirectSum.instModuleDirectSumInstAddCommMonoidDirectSum.{u2, u1, u3} R (Ring.toSemiring.{u2} R _inst_1) ι (fun (i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2) (fun (i : ι) => _inst_3)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (DirectSum.lof.{u2, u1, u3} R (Ring.toSemiring.{u2} R _inst_1) ι (fun (a : ι) (b : ι) => _inst_4 a b) (fun (i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2) (fun (i : ι) => _inst_3) i) m)) (Finsupp.single.{u1, u3} ι M (NegZeroClass.toZero.{u3} M (SubNegZeroMonoid.toNegZeroClass.{u3} M (SubtractionMonoid.toSubNegZeroMonoid.{u3} M (SubtractionCommMonoid.toSubtractionMonoid.{u3} M (AddCommGroup.toDivisionAddCommMonoid.{u3} M _inst_2))))) i m)
+ forall (R : Type.{u2}) (M : Type.{u3}) [_inst_1 : Ring.{u2} R] [_inst_2 : AddCommGroup.{u3} M] [_inst_3 : Module.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2)] (ι : Type.{u1}) [_inst_4 : DecidableEq.{succ u1} ι] (i : ι) (m : M), Eq.{max (succ u3) (succ u1)} ((fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2187 : DirectSum.{u1, u3} ι (fun (_i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2)) => Finsupp.{u1, u3} ι M (NegZeroClass.toZero.{u3} M (SubNegZeroMonoid.toNegZeroClass.{u3} M (SubtractionMonoid.toSubNegZeroMonoid.{u3} M (SubtractionCommMonoid.toSubtractionMonoid.{u3} M (AddCommGroup.toDivisionAddCommMonoid.{u3} M _inst_2)))))) (FunLike.coe.{max (succ u1) (succ u3), succ u3, max (succ u1) (succ u3)} (LinearMap.{u2, u2, u3, max u3 u1} R R (Ring.toSemiring.{u2} R _inst_1) (Ring.toSemiring.{u2} R _inst_1) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))) M (DirectSum.{u1, u3} ι (fun (i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2)) (AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2) (instAddCommMonoidDirectSum.{u1, u3} ι (fun (i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2)) _inst_3 (DirectSum.instModuleDirectSumInstAddCommMonoidDirectSum.{u2, u1, u3} R (Ring.toSemiring.{u2} R _inst_1) ι (fun (i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2) (fun (i : ι) => _inst_3))) M (fun (a : M) => (fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6193 : M) => DirectSum.{u1, u3} ι (fun (i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2)) a) (LinearMap.instFunLikeLinearMap.{u2, u2, u3, max u1 u3} R R M (DirectSum.{u1, u3} ι (fun (i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2)) (Ring.toSemiring.{u2} R _inst_1) (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2) (instAddCommMonoidDirectSum.{u1, u3} ι (fun (i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2)) _inst_3 (DirectSum.instModuleDirectSumInstAddCommMonoidDirectSum.{u2, u1, u3} R (Ring.toSemiring.{u2} R _inst_1) ι (fun (i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2) (fun (i : ι) => _inst_3)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (DirectSum.lof.{u2, u1, u3} R (Ring.toSemiring.{u2} R _inst_1) ι (fun (a : ι) (b : ι) => _inst_4 a b) (fun (_i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2) (fun (i : ι) => _inst_3) i) m)) (FunLike.coe.{max (succ u3) (succ u1), max (succ u3) (succ u1), max (succ u3) (succ u1)} (LinearEquiv.{u2, u2, max u3 u1, max u3 u1} R R (Ring.toSemiring.{u2} R _inst_1) (Ring.toSemiring.{u2} R _inst_1) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (Ring.toSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R (Ring.toSemiring.{u2} R _inst_1)) (DirectSum.{u1, u3} ι (fun (_i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2)) (Finsupp.{u1, u3} ι M (NegZeroClass.toZero.{u3} M (SubNegZeroMonoid.toNegZeroClass.{u3} M (SubtractionMonoid.toSubNegZeroMonoid.{u3} M (SubtractionCommMonoid.toSubtractionMonoid.{u3} M (AddCommGroup.toDivisionAddCommMonoid.{u3} M _inst_2)))))) (instAddCommMonoidDirectSum.{u1, u3} ι (fun (_i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2)) (Finsupp.addCommMonoid.{u1, u3} ι M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2)) (DirectSum.instModuleDirectSumInstAddCommMonoidDirectSum.{u2, u1, u3} R (Ring.toSemiring.{u2} R _inst_1) ι (fun (_i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2) (fun (i : ι) => _inst_3)) (Finsupp.module.{u1, u3, u2} ι M R (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_3)) (DirectSum.{u1, u3} ι (fun (_i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2)) (fun (_x : DirectSum.{u1, u3} ι (fun (_i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2)) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2187 : DirectSum.{u1, u3} ι (fun (_i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2)) => Finsupp.{u1, u3} ι M (NegZeroClass.toZero.{u3} M (SubNegZeroMonoid.toNegZeroClass.{u3} M (SubtractionMonoid.toSubNegZeroMonoid.{u3} M (SubtractionCommMonoid.toSubtractionMonoid.{u3} M (AddCommGroup.toDivisionAddCommMonoid.{u3} M _inst_2)))))) _x) (SMulHomClass.toFunLike.{max u3 u1, u2, max u3 u1, max u3 u1} (LinearEquiv.{u2, u2, max u3 u1, max u3 u1} R R (Ring.toSemiring.{u2} R _inst_1) (Ring.toSemiring.{u2} R _inst_1) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (Ring.toSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R (Ring.toSemiring.{u2} R _inst_1)) (DirectSum.{u1, u3} ι (fun (_i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2)) (Finsupp.{u1, u3} ι M (NegZeroClass.toZero.{u3} M (SubNegZeroMonoid.toNegZeroClass.{u3} M (SubtractionMonoid.toSubNegZeroMonoid.{u3} M (SubtractionCommMonoid.toSubtractionMonoid.{u3} M (AddCommGroup.toDivisionAddCommMonoid.{u3} M _inst_2)))))) (instAddCommMonoidDirectSum.{u1, u3} ι (fun (_i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2)) (Finsupp.addCommMonoid.{u1, u3} ι M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2)) (DirectSum.instModuleDirectSumInstAddCommMonoidDirectSum.{u2, u1, u3} R (Ring.toSemiring.{u2} R _inst_1) ι (fun (_i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2) (fun (i : ι) => _inst_3)) (Finsupp.module.{u1, u3, u2} ι M R (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_3)) R (DirectSum.{u1, u3} ι (fun (_i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2)) (Finsupp.{u1, u3} ι M (NegZeroClass.toZero.{u3} M (SubNegZeroMonoid.toNegZeroClass.{u3} M (SubtractionMonoid.toSubNegZeroMonoid.{u3} M (SubtractionCommMonoid.toSubtractionMonoid.{u3} M (AddCommGroup.toDivisionAddCommMonoid.{u3} M _inst_2)))))) (SMulZeroClass.toSMul.{u2, max u3 u1} R (DirectSum.{u1, u3} ι (fun (_i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2)) (AddMonoid.toZero.{max u3 u1} (DirectSum.{u1, u3} ι (fun (_i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2)) (AddCommMonoid.toAddMonoid.{max u3 u1} (DirectSum.{u1, u3} ι (fun (_i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2)) (instAddCommMonoidDirectSum.{u1, u3} ι (fun (_i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2)))) (DistribSMul.toSMulZeroClass.{u2, max u3 u1} R (DirectSum.{u1, u3} ι (fun (_i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2)) (AddMonoid.toAddZeroClass.{max u3 u1} (DirectSum.{u1, u3} ι (fun (_i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2)) (AddCommMonoid.toAddMonoid.{max u3 u1} (DirectSum.{u1, u3} ι (fun (_i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2)) (instAddCommMonoidDirectSum.{u1, u3} ι (fun (_i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2)))) (DistribMulAction.toDistribSMul.{u2, max u3 u1} R (DirectSum.{u1, u3} ι (fun (_i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2)) (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u3 u1} (DirectSum.{u1, u3} ι (fun (_i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2)) (instAddCommMonoidDirectSum.{u1, u3} ι (fun (_i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2))) (Module.toDistribMulAction.{u2, max u3 u1} R (DirectSum.{u1, u3} ι (fun (_i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2)) (Ring.toSemiring.{u2} R _inst_1) (instAddCommMonoidDirectSum.{u1, u3} ι (fun (_i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2)) (DirectSum.instModuleDirectSumInstAddCommMonoidDirectSum.{u2, u1, u3} R (Ring.toSemiring.{u2} R _inst_1) ι (fun (_i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2) (fun (i : ι) => _inst_3)))))) (SMulZeroClass.toSMul.{u2, max u3 u1} R (Finsupp.{u1, u3} ι M (NegZeroClass.toZero.{u3} M (SubNegZeroMonoid.toNegZeroClass.{u3} M (SubtractionMonoid.toSubNegZeroMonoid.{u3} M (SubtractionCommMonoid.toSubtractionMonoid.{u3} M (AddCommGroup.toDivisionAddCommMonoid.{u3} M _inst_2)))))) (AddMonoid.toZero.{max u3 u1} (Finsupp.{u1, u3} ι M (NegZeroClass.toZero.{u3} M (SubNegZeroMonoid.toNegZeroClass.{u3} M (SubtractionMonoid.toSubNegZeroMonoid.{u3} M (SubtractionCommMonoid.toSubtractionMonoid.{u3} M (AddCommGroup.toDivisionAddCommMonoid.{u3} M _inst_2)))))) (AddCommMonoid.toAddMonoid.{max u3 u1} (Finsupp.{u1, u3} ι M (NegZeroClass.toZero.{u3} M (SubNegZeroMonoid.toNegZeroClass.{u3} M (SubtractionMonoid.toSubNegZeroMonoid.{u3} M (SubtractionCommMonoid.toSubtractionMonoid.{u3} M (AddCommGroup.toDivisionAddCommMonoid.{u3} M _inst_2)))))) (Finsupp.addCommMonoid.{u1, u3} ι M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2)))) (DistribSMul.toSMulZeroClass.{u2, max u3 u1} R (Finsupp.{u1, u3} ι M (NegZeroClass.toZero.{u3} M (SubNegZeroMonoid.toNegZeroClass.{u3} M (SubtractionMonoid.toSubNegZeroMonoid.{u3} M (SubtractionCommMonoid.toSubtractionMonoid.{u3} M (AddCommGroup.toDivisionAddCommMonoid.{u3} M _inst_2)))))) (AddMonoid.toAddZeroClass.{max u3 u1} (Finsupp.{u1, u3} ι M (NegZeroClass.toZero.{u3} M (SubNegZeroMonoid.toNegZeroClass.{u3} M (SubtractionMonoid.toSubNegZeroMonoid.{u3} M (SubtractionCommMonoid.toSubtractionMonoid.{u3} M (AddCommGroup.toDivisionAddCommMonoid.{u3} M _inst_2)))))) (AddCommMonoid.toAddMonoid.{max u3 u1} (Finsupp.{u1, u3} ι M (NegZeroClass.toZero.{u3} M (SubNegZeroMonoid.toNegZeroClass.{u3} M (SubtractionMonoid.toSubNegZeroMonoid.{u3} M (SubtractionCommMonoid.toSubtractionMonoid.{u3} M (AddCommGroup.toDivisionAddCommMonoid.{u3} M _inst_2)))))) (Finsupp.addCommMonoid.{u1, u3} ι M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2)))) (DistribMulAction.toDistribSMul.{u2, max u3 u1} R (Finsupp.{u1, u3} ι M (NegZeroClass.toZero.{u3} M (SubNegZeroMonoid.toNegZeroClass.{u3} M (SubtractionMonoid.toSubNegZeroMonoid.{u3} M (SubtractionCommMonoid.toSubtractionMonoid.{u3} M (AddCommGroup.toDivisionAddCommMonoid.{u3} M _inst_2)))))) (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u3 u1} (Finsupp.{u1, u3} ι M (NegZeroClass.toZero.{u3} M (SubNegZeroMonoid.toNegZeroClass.{u3} M (SubtractionMonoid.toSubNegZeroMonoid.{u3} M (SubtractionCommMonoid.toSubtractionMonoid.{u3} M (AddCommGroup.toDivisionAddCommMonoid.{u3} M _inst_2)))))) (Finsupp.addCommMonoid.{u1, u3} ι M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2))) (Module.toDistribMulAction.{u2, max u3 u1} R (Finsupp.{u1, u3} ι M (NegZeroClass.toZero.{u3} M (SubNegZeroMonoid.toNegZeroClass.{u3} M (SubtractionMonoid.toSubNegZeroMonoid.{u3} M (SubtractionCommMonoid.toSubtractionMonoid.{u3} M (AddCommGroup.toDivisionAddCommMonoid.{u3} M _inst_2)))))) (Ring.toSemiring.{u2} R _inst_1) (Finsupp.addCommMonoid.{u1, u3} ι M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2)) (Finsupp.module.{u1, u3, u2} ι M R (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_3))))) (DistribMulActionHomClass.toSMulHomClass.{max u3 u1, u2, max u3 u1, max u3 u1} (LinearEquiv.{u2, u2, max u3 u1, max u3 u1} R R (Ring.toSemiring.{u2} R _inst_1) (Ring.toSemiring.{u2} R _inst_1) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (Ring.toSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R (Ring.toSemiring.{u2} R _inst_1)) (DirectSum.{u1, u3} ι (fun (_i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2)) (Finsupp.{u1, u3} ι M (NegZeroClass.toZero.{u3} M (SubNegZeroMonoid.toNegZeroClass.{u3} M (SubtractionMonoid.toSubNegZeroMonoid.{u3} M (SubtractionCommMonoid.toSubtractionMonoid.{u3} M (AddCommGroup.toDivisionAddCommMonoid.{u3} M _inst_2)))))) (instAddCommMonoidDirectSum.{u1, u3} ι (fun (_i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2)) (Finsupp.addCommMonoid.{u1, u3} ι M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2)) (DirectSum.instModuleDirectSumInstAddCommMonoidDirectSum.{u2, u1, u3} R (Ring.toSemiring.{u2} R _inst_1) ι (fun (_i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2) (fun (i : ι) => _inst_3)) (Finsupp.module.{u1, u3, u2} ι M R (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_3)) R (DirectSum.{u1, u3} ι (fun (_i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2)) (Finsupp.{u1, u3} ι M (NegZeroClass.toZero.{u3} M (SubNegZeroMonoid.toNegZeroClass.{u3} M (SubtractionMonoid.toSubNegZeroMonoid.{u3} M (SubtractionCommMonoid.toSubtractionMonoid.{u3} M (AddCommGroup.toDivisionAddCommMonoid.{u3} M _inst_2)))))) (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u3 u1} (DirectSum.{u1, u3} ι (fun (_i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2)) (instAddCommMonoidDirectSum.{u1, u3} ι (fun (_i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2))) (AddCommMonoid.toAddMonoid.{max u3 u1} (Finsupp.{u1, u3} ι M (NegZeroClass.toZero.{u3} M (SubNegZeroMonoid.toNegZeroClass.{u3} M (SubtractionMonoid.toSubNegZeroMonoid.{u3} M (SubtractionCommMonoid.toSubtractionMonoid.{u3} M (AddCommGroup.toDivisionAddCommMonoid.{u3} M _inst_2)))))) (Finsupp.addCommMonoid.{u1, u3} ι M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2))) (Module.toDistribMulAction.{u2, max u3 u1} R (DirectSum.{u1, u3} ι (fun (_i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2)) (Ring.toSemiring.{u2} R _inst_1) (instAddCommMonoidDirectSum.{u1, u3} ι (fun (_i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2)) (DirectSum.instModuleDirectSumInstAddCommMonoidDirectSum.{u2, u1, u3} R (Ring.toSemiring.{u2} R _inst_1) ι (fun (_i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2) (fun (i : ι) => _inst_3))) (Module.toDistribMulAction.{u2, max u3 u1} R (Finsupp.{u1, u3} ι M (NegZeroClass.toZero.{u3} M (SubNegZeroMonoid.toNegZeroClass.{u3} M (SubtractionMonoid.toSubNegZeroMonoid.{u3} M (SubtractionCommMonoid.toSubtractionMonoid.{u3} M (AddCommGroup.toDivisionAddCommMonoid.{u3} M _inst_2)))))) (Ring.toSemiring.{u2} R _inst_1) (Finsupp.addCommMonoid.{u1, u3} ι M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2)) (Finsupp.module.{u1, u3, u2} ι M R (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_3)) (SemilinearMapClass.distribMulActionHomClass.{u2, max u3 u1, max u3 u1, max u3 u1} R (DirectSum.{u1, u3} ι (fun (_i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2)) (Finsupp.{u1, u3} ι M (NegZeroClass.toZero.{u3} M (SubNegZeroMonoid.toNegZeroClass.{u3} M (SubtractionMonoid.toSubNegZeroMonoid.{u3} M (SubtractionCommMonoid.toSubtractionMonoid.{u3} M (AddCommGroup.toDivisionAddCommMonoid.{u3} M _inst_2)))))) (LinearEquiv.{u2, u2, max u3 u1, max u3 u1} R R (Ring.toSemiring.{u2} R _inst_1) (Ring.toSemiring.{u2} R _inst_1) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (Ring.toSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R (Ring.toSemiring.{u2} R _inst_1)) (DirectSum.{u1, u3} ι (fun (_i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2)) (Finsupp.{u1, u3} ι M (NegZeroClass.toZero.{u3} M (SubNegZeroMonoid.toNegZeroClass.{u3} M (SubtractionMonoid.toSubNegZeroMonoid.{u3} M (SubtractionCommMonoid.toSubtractionMonoid.{u3} M (AddCommGroup.toDivisionAddCommMonoid.{u3} M _inst_2)))))) (instAddCommMonoidDirectSum.{u1, u3} ι (fun (_i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2)) (Finsupp.addCommMonoid.{u1, u3} ι M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2)) (DirectSum.instModuleDirectSumInstAddCommMonoidDirectSum.{u2, u1, u3} R (Ring.toSemiring.{u2} R _inst_1) ι (fun (_i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2) (fun (i : ι) => _inst_3)) (Finsupp.module.{u1, u3, u2} ι M R (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_3)) (Ring.toSemiring.{u2} R _inst_1) (instAddCommMonoidDirectSum.{u1, u3} ι (fun (_i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2)) (Finsupp.addCommMonoid.{u1, u3} ι M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2)) (DirectSum.instModuleDirectSumInstAddCommMonoidDirectSum.{u2, u1, u3} R (Ring.toSemiring.{u2} R _inst_1) ι (fun (_i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2) (fun (i : ι) => _inst_3)) (Finsupp.module.{u1, u3, u2} ι M R (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_3) (SemilinearEquivClass.instSemilinearMapClass.{u2, u2, max u3 u1, max u3 u1, max u3 u1} R R (DirectSum.{u1, u3} ι (fun (_i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2)) (Finsupp.{u1, u3} ι M (NegZeroClass.toZero.{u3} M (SubNegZeroMonoid.toNegZeroClass.{u3} M (SubtractionMonoid.toSubNegZeroMonoid.{u3} M (SubtractionCommMonoid.toSubtractionMonoid.{u3} M (AddCommGroup.toDivisionAddCommMonoid.{u3} M _inst_2)))))) (LinearEquiv.{u2, u2, max u3 u1, max u3 u1} R R (Ring.toSemiring.{u2} R _inst_1) (Ring.toSemiring.{u2} R _inst_1) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (Ring.toSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R (Ring.toSemiring.{u2} R _inst_1)) (DirectSum.{u1, u3} ι (fun (_i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2)) (Finsupp.{u1, u3} ι M (NegZeroClass.toZero.{u3} M (SubNegZeroMonoid.toNegZeroClass.{u3} M (SubtractionMonoid.toSubNegZeroMonoid.{u3} M (SubtractionCommMonoid.toSubtractionMonoid.{u3} M (AddCommGroup.toDivisionAddCommMonoid.{u3} M _inst_2)))))) (instAddCommMonoidDirectSum.{u1, u3} ι (fun (_i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2)) (Finsupp.addCommMonoid.{u1, u3} ι M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2)) (DirectSum.instModuleDirectSumInstAddCommMonoidDirectSum.{u2, u1, u3} R (Ring.toSemiring.{u2} R _inst_1) ι (fun (_i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2) (fun (i : ι) => _inst_3)) (Finsupp.module.{u1, u3, u2} ι M R (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_3)) (Ring.toSemiring.{u2} R _inst_1) (Ring.toSemiring.{u2} R _inst_1) (instAddCommMonoidDirectSum.{u1, u3} ι (fun (_i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2)) (Finsupp.addCommMonoid.{u1, u3} ι M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2)) (DirectSum.instModuleDirectSumInstAddCommMonoidDirectSum.{u2, u1, u3} R (Ring.toSemiring.{u2} R _inst_1) ι (fun (_i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2) (fun (i : ι) => _inst_3)) (Finsupp.module.{u1, u3, u2} ι M R (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_3) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (Ring.toSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R (Ring.toSemiring.{u2} R _inst_1)) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u2, u2, max u3 u1, max u3 u1} R R (DirectSum.{u1, u3} ι (fun (_i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2)) (Finsupp.{u1, u3} ι M (NegZeroClass.toZero.{u3} M (SubNegZeroMonoid.toNegZeroClass.{u3} M (SubtractionMonoid.toSubNegZeroMonoid.{u3} M (SubtractionCommMonoid.toSubtractionMonoid.{u3} M (AddCommGroup.toDivisionAddCommMonoid.{u3} M _inst_2)))))) (Ring.toSemiring.{u2} R _inst_1) (Ring.toSemiring.{u2} R _inst_1) (instAddCommMonoidDirectSum.{u1, u3} ι (fun (_i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2)) (Finsupp.addCommMonoid.{u1, u3} ι M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2)) (DirectSum.instModuleDirectSumInstAddCommMonoidDirectSum.{u2, u1, u3} R (Ring.toSemiring.{u2} R _inst_1) ι (fun (_i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2) (fun (i : ι) => _inst_3)) (Finsupp.module.{u1, u3, u2} ι M R (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_3) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (Ring.toSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R (Ring.toSemiring.{u2} R _inst_1))))))) (LinearEquiv.symm.{u2, u2, max u3 u1, max u3 u1} R R (Finsupp.{u1, u3} ι M (NegZeroClass.toZero.{u3} M (SubNegZeroMonoid.toNegZeroClass.{u3} M (SubtractionMonoid.toSubNegZeroMonoid.{u3} M (SubtractionCommMonoid.toSubtractionMonoid.{u3} M (AddCommGroup.toDivisionAddCommMonoid.{u3} M _inst_2)))))) (DirectSum.{u1, u3} ι (fun (i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2)) (Ring.toSemiring.{u2} R _inst_1) (Ring.toSemiring.{u2} R _inst_1) (Finsupp.addCommMonoid.{u1, u3} ι M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2)) (instAddCommMonoidDirectSum.{u1, u3} ι (fun (i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2)) (Finsupp.module.{u1, u3, u2} ι M R (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_3) (DirectSum.instModuleDirectSumInstAddCommMonoidDirectSum.{u2, u1, u3} R (Ring.toSemiring.{u2} R _inst_1) ι (fun (i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2) (fun (i : ι) => _inst_3)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (Ring.toSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R (Ring.toSemiring.{u2} R _inst_1)) (finsuppLEquivDirectSum.{u2, u3, u1} R M _inst_1 _inst_2 _inst_3 ι (fun (a : ι) (b : ι) => _inst_4 a b))) (FunLike.coe.{max (succ u1) (succ u3), succ u3, max (succ u1) (succ u3)} (LinearMap.{u2, u2, u3, max u3 u1} R R (Ring.toSemiring.{u2} R _inst_1) (Ring.toSemiring.{u2} R _inst_1) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))) M (DirectSum.{u1, u3} ι (fun (i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2)) (AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2) (instAddCommMonoidDirectSum.{u1, u3} ι (fun (i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2)) _inst_3 (DirectSum.instModuleDirectSumInstAddCommMonoidDirectSum.{u2, u1, u3} R (Ring.toSemiring.{u2} R _inst_1) ι (fun (i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2) (fun (i : ι) => _inst_3))) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6193 : M) => DirectSum.{u1, u3} ι (fun (i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2)) _x) (LinearMap.instFunLikeLinearMap.{u2, u2, u3, max u1 u3} R R M (DirectSum.{u1, u3} ι (fun (i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2)) (Ring.toSemiring.{u2} R _inst_1) (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2) (instAddCommMonoidDirectSum.{u1, u3} ι (fun (i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2)) _inst_3 (DirectSum.instModuleDirectSumInstAddCommMonoidDirectSum.{u2, u1, u3} R (Ring.toSemiring.{u2} R _inst_1) ι (fun (i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2) (fun (i : ι) => _inst_3)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (DirectSum.lof.{u2, u1, u3} R (Ring.toSemiring.{u2} R _inst_1) ι (fun (a : ι) (b : ι) => _inst_4 a b) (fun (i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2) (fun (i : ι) => _inst_3) i) m)) (Finsupp.single.{u1, u3} ι M (NegZeroClass.toZero.{u3} M (SubNegZeroMonoid.toNegZeroClass.{u3} M (SubtractionMonoid.toSubNegZeroMonoid.{u3} M (SubtractionCommMonoid.toSubtractionMonoid.{u3} M (AddCommGroup.toDivisionAddCommMonoid.{u3} M _inst_2))))) i m)
Case conversion may be inaccurate. Consider using '#align finsupp_lequiv_direct_sum_symm_lof finsuppLEquivDirectSum_symm_lofₓ'. -/
@[simp]
theorem finsuppLEquivDirectSum_symm_lof (i : ι) (m : M) :
mathlib commit https://github.com/leanprover-community/mathlib/commit/c89fe2d59ae06402c3f55f978016d1ada444f57e
@@ -53,7 +53,7 @@ def finsuppLEquivDirectSum : (ι →₀ M) ≃ₗ[R] ⨁ i : ι, M :=
lean 3 declaration is
forall (R : Type.{u1}) (M : Type.{u2}) [_inst_1 : Ring.{u1} R] [_inst_2 : AddCommGroup.{u2} M] [_inst_3 : Module.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2)] (ι : Type.{u3}) [_inst_4 : DecidableEq.{succ u3} ι] (i : ι) (m : M), Eq.{succ (max u3 u2)} (DirectSum.{u3, u2} ι (fun (i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u2} M _inst_2)) (coeFn.{succ (max u3 u2), succ (max u3 u2)} (LinearEquiv.{u1, u1, max u3 u2, max u3 u2} R R (Ring.toSemiring.{u1} R _inst_1) (Ring.toSemiring.{u1} R _inst_1) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R _inst_1))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R _inst_1))) (finsuppLEquivDirectSum._proof_1.{u1} R _inst_1) (finsuppLEquivDirectSum._proof_2.{u1} R _inst_1) (Finsupp.{u3, u2} ι M (AddZeroClass.toHasZero.{u2} M (AddMonoid.toAddZeroClass.{u2} M (SubNegMonoid.toAddMonoid.{u2} M (AddGroup.toSubNegMonoid.{u2} M (AddCommGroup.toAddGroup.{u2} M _inst_2)))))) (DirectSum.{u3, u2} ι (fun (i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u2} M _inst_2)) (Finsupp.addCommMonoid.{u3, u2} ι M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2)) (DirectSum.addCommMonoid.{u3, u2} ι (fun (i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u2} M _inst_2)) (Finsupp.module.{u3, u2, u1} ι M R (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3) (DirectSum.module.{u1, u3, u2} R (Ring.toSemiring.{u1} R _inst_1) ι (fun (i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (fun (i : ι) => _inst_3))) (fun (_x : LinearEquiv.{u1, u1, max u3 u2, max u3 u2} R R (Ring.toSemiring.{u1} R _inst_1) (Ring.toSemiring.{u1} R _inst_1) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R _inst_1))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R _inst_1))) (finsuppLEquivDirectSum._proof_1.{u1} R _inst_1) (finsuppLEquivDirectSum._proof_2.{u1} R _inst_1) (Finsupp.{u3, u2} ι M (AddZeroClass.toHasZero.{u2} M (AddMonoid.toAddZeroClass.{u2} M (SubNegMonoid.toAddMonoid.{u2} M (AddGroup.toSubNegMonoid.{u2} M (AddCommGroup.toAddGroup.{u2} M _inst_2)))))) (DirectSum.{u3, u2} ι (fun (i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u2} M _inst_2)) (Finsupp.addCommMonoid.{u3, u2} ι M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2)) (DirectSum.addCommMonoid.{u3, u2} ι (fun (i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u2} M _inst_2)) (Finsupp.module.{u3, u2, u1} ι M R (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3) (DirectSum.module.{u1, u3, u2} R (Ring.toSemiring.{u1} R _inst_1) ι (fun (i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (fun (i : ι) => _inst_3))) => (Finsupp.{u3, u2} ι M (AddZeroClass.toHasZero.{u2} M (AddMonoid.toAddZeroClass.{u2} M (SubNegMonoid.toAddMonoid.{u2} M (AddGroup.toSubNegMonoid.{u2} M (AddCommGroup.toAddGroup.{u2} M _inst_2)))))) -> (DirectSum.{u3, u2} ι (fun (i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u2} M _inst_2))) (LinearEquiv.hasCoeToFun.{u1, u1, max u3 u2, max u3 u2} R R (Finsupp.{u3, u2} ι M (AddZeroClass.toHasZero.{u2} M (AddMonoid.toAddZeroClass.{u2} M (SubNegMonoid.toAddMonoid.{u2} M (AddGroup.toSubNegMonoid.{u2} M (AddCommGroup.toAddGroup.{u2} M _inst_2)))))) (DirectSum.{u3, u2} ι (fun (i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u2} M _inst_2)) (Ring.toSemiring.{u1} R _inst_1) (Ring.toSemiring.{u1} R _inst_1) (Finsupp.addCommMonoid.{u3, u2} ι M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2)) (DirectSum.addCommMonoid.{u3, u2} ι (fun (i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u2} M _inst_2)) (Finsupp.module.{u3, u2, u1} ι M R (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3) (DirectSum.module.{u1, u3, u2} R (Ring.toSemiring.{u1} R _inst_1) ι (fun (i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (fun (i : ι) => _inst_3)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R _inst_1))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R _inst_1))) (finsuppLEquivDirectSum._proof_1.{u1} R _inst_1) (finsuppLEquivDirectSum._proof_2.{u1} R _inst_1)) (finsuppLEquivDirectSum.{u1, u2, u3} R M _inst_1 _inst_2 _inst_3 ι (fun (a : ι) (b : ι) => _inst_4 a b)) (Finsupp.single.{u3, u2} ι M (AddZeroClass.toHasZero.{u2} M (AddMonoid.toAddZeroClass.{u2} M (SubNegMonoid.toAddMonoid.{u2} M (AddGroup.toSubNegMonoid.{u2} M (AddCommGroup.toAddGroup.{u2} M _inst_2))))) i m)) (coeFn.{max (succ u2) (succ (max u3 u2)), max (succ u2) (succ (max u3 u2))} (LinearMap.{u1, u1, u2, max u3 u2} R R (Ring.toSemiring.{u1} R _inst_1) (Ring.toSemiring.{u1} R _inst_1) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R _inst_1))) M (DirectSum.{u3, u2} ι (fun (i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u2} M _inst_2)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (DirectSum.addCommMonoid.{u3, u2} ι (fun (i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u2} M _inst_2)) _inst_3 (DirectSum.module.{u1, u3, u2} R (Ring.toSemiring.{u1} R _inst_1) ι (fun (i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (fun (i : ι) => _inst_3))) (fun (_x : LinearMap.{u1, u1, u2, max u3 u2} R R (Ring.toSemiring.{u1} R _inst_1) (Ring.toSemiring.{u1} R _inst_1) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R _inst_1))) M (DirectSum.{u3, u2} ι (fun (i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u2} M _inst_2)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (DirectSum.addCommMonoid.{u3, u2} ι (fun (i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u2} M _inst_2)) _inst_3 (DirectSum.module.{u1, u3, u2} R (Ring.toSemiring.{u1} R _inst_1) ι (fun (i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (fun (i : ι) => _inst_3))) => M -> (DirectSum.{u3, u2} ι (fun (i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u2} M _inst_2))) (LinearMap.hasCoeToFun.{u1, u1, u2, max u3 u2} R R M (DirectSum.{u3, u2} ι (fun (i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u2} M _inst_2)) (Ring.toSemiring.{u1} R _inst_1) (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (DirectSum.addCommMonoid.{u3, u2} ι (fun (i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u2} M _inst_2)) _inst_3 (DirectSum.module.{u1, u3, u2} R (Ring.toSemiring.{u1} R _inst_1) ι (fun (i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (fun (i : ι) => _inst_3)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R _inst_1)))) (DirectSum.lof.{u1, u3, u2} R (Ring.toSemiring.{u1} R _inst_1) ι (fun (a : ι) (b : ι) => _inst_4 a b) (fun (i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (fun (i : ι) => _inst_3) i) m)
but is expected to have type
- forall (R : Type.{u2}) (M : Type.{u3}) [_inst_1 : Ring.{u2} R] [_inst_2 : AddCommGroup.{u3} M] [_inst_3 : Module.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2)] (ι : Type.{u1}) [_inst_4 : DecidableEq.{succ u1} ι] (i : ι) (m : M), Eq.{max (succ u3) (succ u1)} ((fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : Finsupp.{u1, u3} ι M (NegZeroClass.toZero.{u3} M (SubNegZeroMonoid.toNegZeroClass.{u3} M (SubtractionMonoid.toSubNegZeroMonoid.{u3} M (SubtractionCommMonoid.toSubtractionMonoid.{u3} M (AddCommGroup.toDivisionAddCommMonoid.{u3} M _inst_2)))))) => DirectSum.{u1, u3} ι (fun (_i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2)) (Finsupp.single.{u1, u3} ι M (NegZeroClass.toZero.{u3} M (SubNegZeroMonoid.toNegZeroClass.{u3} M (SubtractionMonoid.toSubNegZeroMonoid.{u3} M (SubtractionCommMonoid.toSubtractionMonoid.{u3} M (AddCommGroup.toDivisionAddCommMonoid.{u3} M _inst_2))))) i m)) (FunLike.coe.{max (succ u3) (succ u1), max (succ u3) (succ u1), max (succ u3) (succ u1)} (LinearEquiv.{u2, u2, max u3 u1, max u3 u1} R R (Ring.toSemiring.{u2} R _inst_1) (Ring.toSemiring.{u2} R _inst_1) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (Ring.toSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R (Ring.toSemiring.{u2} R _inst_1)) (Finsupp.{u1, u3} ι M (NegZeroClass.toZero.{u3} M (SubNegZeroMonoid.toNegZeroClass.{u3} M (SubtractionMonoid.toSubNegZeroMonoid.{u3} M (SubtractionCommMonoid.toSubtractionMonoid.{u3} M (AddCommGroup.toDivisionAddCommMonoid.{u3} M _inst_2)))))) (DirectSum.{u1, u3} ι (fun (_i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2)) (Finsupp.addCommMonoid.{u1, u3} ι M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2)) (instAddCommMonoidDirectSum.{u1, u3} ι (fun (_i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2)) (Finsupp.module.{u1, u3, u2} ι M R (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_3) (DirectSum.instModuleDirectSumInstAddCommMonoidDirectSum.{u2, u1, u3} R (Ring.toSemiring.{u2} R _inst_1) ι (fun (_i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2) (fun (i : ι) => _inst_3))) (Finsupp.{u1, u3} ι M (NegZeroClass.toZero.{u3} M (SubNegZeroMonoid.toNegZeroClass.{u3} M (SubtractionMonoid.toSubNegZeroMonoid.{u3} M (SubtractionCommMonoid.toSubtractionMonoid.{u3} M (AddCommGroup.toDivisionAddCommMonoid.{u3} M _inst_2)))))) (fun (_x : Finsupp.{u1, u3} ι M (NegZeroClass.toZero.{u3} M (SubNegZeroMonoid.toNegZeroClass.{u3} M (SubtractionMonoid.toSubNegZeroMonoid.{u3} M (SubtractionCommMonoid.toSubtractionMonoid.{u3} M (AddCommGroup.toDivisionAddCommMonoid.{u3} M _inst_2)))))) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : Finsupp.{u1, u3} ι M (NegZeroClass.toZero.{u3} M (SubNegZeroMonoid.toNegZeroClass.{u3} M (SubtractionMonoid.toSubNegZeroMonoid.{u3} M (SubtractionCommMonoid.toSubtractionMonoid.{u3} M (AddCommGroup.toDivisionAddCommMonoid.{u3} M _inst_2)))))) => DirectSum.{u1, u3} ι (fun (_i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2)) _x) (SMulHomClass.toFunLike.{max u3 u1, u2, max u3 u1, max u3 u1} (LinearEquiv.{u2, u2, max u3 u1, max u3 u1} R R (Ring.toSemiring.{u2} R _inst_1) (Ring.toSemiring.{u2} R _inst_1) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (Ring.toSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R (Ring.toSemiring.{u2} R _inst_1)) (Finsupp.{u1, u3} ι M (NegZeroClass.toZero.{u3} M (SubNegZeroMonoid.toNegZeroClass.{u3} M (SubtractionMonoid.toSubNegZeroMonoid.{u3} M (SubtractionCommMonoid.toSubtractionMonoid.{u3} M (AddCommGroup.toDivisionAddCommMonoid.{u3} M _inst_2)))))) (DirectSum.{u1, u3} ι (fun (_i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2)) (Finsupp.addCommMonoid.{u1, u3} ι M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2)) (instAddCommMonoidDirectSum.{u1, u3} ι (fun (_i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2)) (Finsupp.module.{u1, u3, u2} ι M R (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_3) (DirectSum.instModuleDirectSumInstAddCommMonoidDirectSum.{u2, u1, u3} R (Ring.toSemiring.{u2} R _inst_1) ι (fun (_i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2) (fun (i : ι) => _inst_3))) R (Finsupp.{u1, u3} ι M (NegZeroClass.toZero.{u3} M (SubNegZeroMonoid.toNegZeroClass.{u3} M (SubtractionMonoid.toSubNegZeroMonoid.{u3} M (SubtractionCommMonoid.toSubtractionMonoid.{u3} M (AddCommGroup.toDivisionAddCommMonoid.{u3} M _inst_2)))))) (DirectSum.{u1, u3} ι (fun (_i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2)) (SMulZeroClass.toSMul.{u2, max u3 u1} R (Finsupp.{u1, u3} ι M (NegZeroClass.toZero.{u3} M (SubNegZeroMonoid.toNegZeroClass.{u3} M (SubtractionMonoid.toSubNegZeroMonoid.{u3} M (SubtractionCommMonoid.toSubtractionMonoid.{u3} M (AddCommGroup.toDivisionAddCommMonoid.{u3} M _inst_2)))))) (AddMonoid.toZero.{max u3 u1} (Finsupp.{u1, u3} ι M (NegZeroClass.toZero.{u3} M (SubNegZeroMonoid.toNegZeroClass.{u3} M (SubtractionMonoid.toSubNegZeroMonoid.{u3} M (SubtractionCommMonoid.toSubtractionMonoid.{u3} M (AddCommGroup.toDivisionAddCommMonoid.{u3} M _inst_2)))))) (AddCommMonoid.toAddMonoid.{max u3 u1} (Finsupp.{u1, u3} ι M (NegZeroClass.toZero.{u3} M (SubNegZeroMonoid.toNegZeroClass.{u3} M (SubtractionMonoid.toSubNegZeroMonoid.{u3} M (SubtractionCommMonoid.toSubtractionMonoid.{u3} M (AddCommGroup.toDivisionAddCommMonoid.{u3} M _inst_2)))))) (Finsupp.addCommMonoid.{u1, u3} ι M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2)))) (DistribSMul.toSMulZeroClass.{u2, max u3 u1} R (Finsupp.{u1, u3} ι M (NegZeroClass.toZero.{u3} M (SubNegZeroMonoid.toNegZeroClass.{u3} M (SubtractionMonoid.toSubNegZeroMonoid.{u3} M (SubtractionCommMonoid.toSubtractionMonoid.{u3} M (AddCommGroup.toDivisionAddCommMonoid.{u3} M _inst_2)))))) (AddMonoid.toAddZeroClass.{max u3 u1} (Finsupp.{u1, u3} ι M (NegZeroClass.toZero.{u3} M (SubNegZeroMonoid.toNegZeroClass.{u3} M (SubtractionMonoid.toSubNegZeroMonoid.{u3} M (SubtractionCommMonoid.toSubtractionMonoid.{u3} M (AddCommGroup.toDivisionAddCommMonoid.{u3} M _inst_2)))))) (AddCommMonoid.toAddMonoid.{max u3 u1} (Finsupp.{u1, u3} ι M (NegZeroClass.toZero.{u3} M (SubNegZeroMonoid.toNegZeroClass.{u3} M (SubtractionMonoid.toSubNegZeroMonoid.{u3} M (SubtractionCommMonoid.toSubtractionMonoid.{u3} M (AddCommGroup.toDivisionAddCommMonoid.{u3} M _inst_2)))))) (Finsupp.addCommMonoid.{u1, u3} ι M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2)))) (DistribMulAction.toDistribSMul.{u2, max u3 u1} R (Finsupp.{u1, u3} ι M (NegZeroClass.toZero.{u3} M (SubNegZeroMonoid.toNegZeroClass.{u3} M (SubtractionMonoid.toSubNegZeroMonoid.{u3} M (SubtractionCommMonoid.toSubtractionMonoid.{u3} M (AddCommGroup.toDivisionAddCommMonoid.{u3} M _inst_2)))))) (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u3 u1} (Finsupp.{u1, u3} ι M (NegZeroClass.toZero.{u3} M (SubNegZeroMonoid.toNegZeroClass.{u3} M (SubtractionMonoid.toSubNegZeroMonoid.{u3} M (SubtractionCommMonoid.toSubtractionMonoid.{u3} M (AddCommGroup.toDivisionAddCommMonoid.{u3} M _inst_2)))))) (Finsupp.addCommMonoid.{u1, u3} ι M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2))) (Module.toDistribMulAction.{u2, max u3 u1} R (Finsupp.{u1, u3} ι M (NegZeroClass.toZero.{u3} M (SubNegZeroMonoid.toNegZeroClass.{u3} M (SubtractionMonoid.toSubNegZeroMonoid.{u3} M (SubtractionCommMonoid.toSubtractionMonoid.{u3} M (AddCommGroup.toDivisionAddCommMonoid.{u3} M _inst_2)))))) (Ring.toSemiring.{u2} R _inst_1) (Finsupp.addCommMonoid.{u1, u3} ι M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2)) (Finsupp.module.{u1, u3, u2} ι M R (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_3))))) (SMulZeroClass.toSMul.{u2, max u3 u1} R (DirectSum.{u1, u3} ι (fun (_i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2)) (AddMonoid.toZero.{max u3 u1} (DirectSum.{u1, u3} ι (fun (_i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2)) (AddCommMonoid.toAddMonoid.{max u3 u1} (DirectSum.{u1, u3} ι (fun (_i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2)) (instAddCommMonoidDirectSum.{u1, u3} ι (fun (_i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2)))) (DistribSMul.toSMulZeroClass.{u2, max u3 u1} R (DirectSum.{u1, u3} ι (fun (_i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2)) (AddMonoid.toAddZeroClass.{max u3 u1} (DirectSum.{u1, u3} ι (fun (_i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2)) (AddCommMonoid.toAddMonoid.{max u3 u1} (DirectSum.{u1, u3} ι (fun (_i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2)) (instAddCommMonoidDirectSum.{u1, u3} ι (fun (_i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2)))) (DistribMulAction.toDistribSMul.{u2, max u3 u1} R (DirectSum.{u1, u3} ι (fun (_i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2)) (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u3 u1} (DirectSum.{u1, u3} ι (fun (_i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2)) (instAddCommMonoidDirectSum.{u1, u3} ι (fun (_i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2))) (Module.toDistribMulAction.{u2, max u3 u1} R (DirectSum.{u1, u3} ι (fun (_i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2)) (Ring.toSemiring.{u2} R _inst_1) (instAddCommMonoidDirectSum.{u1, u3} ι (fun (_i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2)) (DirectSum.instModuleDirectSumInstAddCommMonoidDirectSum.{u2, u1, u3} R (Ring.toSemiring.{u2} R _inst_1) ι (fun (_i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2) (fun (i : ι) => _inst_3)))))) (DistribMulActionHomClass.toSMulHomClass.{max u3 u1, u2, max u3 u1, max u3 u1} (LinearEquiv.{u2, u2, max u3 u1, max u3 u1} R R (Ring.toSemiring.{u2} R _inst_1) (Ring.toSemiring.{u2} R _inst_1) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (Ring.toSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R (Ring.toSemiring.{u2} R _inst_1)) (Finsupp.{u1, u3} ι M (NegZeroClass.toZero.{u3} M (SubNegZeroMonoid.toNegZeroClass.{u3} M (SubtractionMonoid.toSubNegZeroMonoid.{u3} M (SubtractionCommMonoid.toSubtractionMonoid.{u3} M (AddCommGroup.toDivisionAddCommMonoid.{u3} M _inst_2)))))) (DirectSum.{u1, u3} ι (fun (_i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2)) (Finsupp.addCommMonoid.{u1, u3} ι M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2)) (instAddCommMonoidDirectSum.{u1, u3} ι (fun (_i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2)) (Finsupp.module.{u1, u3, u2} ι M R (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_3) (DirectSum.instModuleDirectSumInstAddCommMonoidDirectSum.{u2, u1, u3} R (Ring.toSemiring.{u2} R _inst_1) ι (fun (_i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2) (fun (i : ι) => _inst_3))) R (Finsupp.{u1, u3} ι M (NegZeroClass.toZero.{u3} M (SubNegZeroMonoid.toNegZeroClass.{u3} M (SubtractionMonoid.toSubNegZeroMonoid.{u3} M (SubtractionCommMonoid.toSubtractionMonoid.{u3} M (AddCommGroup.toDivisionAddCommMonoid.{u3} M _inst_2)))))) (DirectSum.{u1, u3} ι (fun (_i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2)) (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u3 u1} (Finsupp.{u1, u3} ι M (NegZeroClass.toZero.{u3} M (SubNegZeroMonoid.toNegZeroClass.{u3} M (SubtractionMonoid.toSubNegZeroMonoid.{u3} M (SubtractionCommMonoid.toSubtractionMonoid.{u3} M (AddCommGroup.toDivisionAddCommMonoid.{u3} M _inst_2)))))) (Finsupp.addCommMonoid.{u1, u3} ι M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2))) (AddCommMonoid.toAddMonoid.{max u3 u1} (DirectSum.{u1, u3} ι (fun (_i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2)) (instAddCommMonoidDirectSum.{u1, u3} ι (fun (_i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2))) (Module.toDistribMulAction.{u2, max u3 u1} R (Finsupp.{u1, u3} ι M (NegZeroClass.toZero.{u3} M (SubNegZeroMonoid.toNegZeroClass.{u3} M (SubtractionMonoid.toSubNegZeroMonoid.{u3} M (SubtractionCommMonoid.toSubtractionMonoid.{u3} M (AddCommGroup.toDivisionAddCommMonoid.{u3} M _inst_2)))))) (Ring.toSemiring.{u2} R _inst_1) (Finsupp.addCommMonoid.{u1, u3} ι M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2)) (Finsupp.module.{u1, u3, u2} ι M R (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_3)) (Module.toDistribMulAction.{u2, max u3 u1} R (DirectSum.{u1, u3} ι (fun (_i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2)) (Ring.toSemiring.{u2} R _inst_1) (instAddCommMonoidDirectSum.{u1, u3} ι (fun (_i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2)) (DirectSum.instModuleDirectSumInstAddCommMonoidDirectSum.{u2, u1, u3} R (Ring.toSemiring.{u2} R _inst_1) ι (fun (_i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2) (fun (i : ι) => _inst_3))) (SemilinearMapClass.distribMulActionHomClass.{u2, max u3 u1, max u3 u1, max u3 u1} R (Finsupp.{u1, u3} ι M (NegZeroClass.toZero.{u3} M (SubNegZeroMonoid.toNegZeroClass.{u3} M (SubtractionMonoid.toSubNegZeroMonoid.{u3} M (SubtractionCommMonoid.toSubtractionMonoid.{u3} M (AddCommGroup.toDivisionAddCommMonoid.{u3} M _inst_2)))))) (DirectSum.{u1, u3} ι (fun (_i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2)) (LinearEquiv.{u2, u2, max u3 u1, max u3 u1} R R (Ring.toSemiring.{u2} R _inst_1) (Ring.toSemiring.{u2} R _inst_1) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (Ring.toSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R (Ring.toSemiring.{u2} R _inst_1)) (Finsupp.{u1, u3} ι M (NegZeroClass.toZero.{u3} M (SubNegZeroMonoid.toNegZeroClass.{u3} M (SubtractionMonoid.toSubNegZeroMonoid.{u3} M (SubtractionCommMonoid.toSubtractionMonoid.{u3} M (AddCommGroup.toDivisionAddCommMonoid.{u3} M _inst_2)))))) (DirectSum.{u1, u3} ι (fun (_i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2)) (Finsupp.addCommMonoid.{u1, u3} ι M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2)) (instAddCommMonoidDirectSum.{u1, u3} ι (fun (_i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2)) (Finsupp.module.{u1, u3, u2} ι M R (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_3) (DirectSum.instModuleDirectSumInstAddCommMonoidDirectSum.{u2, u1, u3} R (Ring.toSemiring.{u2} R _inst_1) ι (fun (_i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2) (fun (i : ι) => _inst_3))) (Ring.toSemiring.{u2} R _inst_1) (Finsupp.addCommMonoid.{u1, u3} ι M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2)) (instAddCommMonoidDirectSum.{u1, u3} ι (fun (_i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2)) (Finsupp.module.{u1, u3, u2} ι M R (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_3) (DirectSum.instModuleDirectSumInstAddCommMonoidDirectSum.{u2, u1, u3} R (Ring.toSemiring.{u2} R _inst_1) ι (fun (_i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2) (fun (i : ι) => _inst_3)) (SemilinearEquivClass.instSemilinearMapClass.{u2, u2, max u3 u1, max u3 u1, max u3 u1} R R (Finsupp.{u1, u3} ι M (NegZeroClass.toZero.{u3} M (SubNegZeroMonoid.toNegZeroClass.{u3} M (SubtractionMonoid.toSubNegZeroMonoid.{u3} M (SubtractionCommMonoid.toSubtractionMonoid.{u3} M (AddCommGroup.toDivisionAddCommMonoid.{u3} M _inst_2)))))) (DirectSum.{u1, u3} ι (fun (_i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2)) (LinearEquiv.{u2, u2, max u3 u1, max u3 u1} R R (Ring.toSemiring.{u2} R _inst_1) (Ring.toSemiring.{u2} R _inst_1) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (Ring.toSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R (Ring.toSemiring.{u2} R _inst_1)) (Finsupp.{u1, u3} ι M (NegZeroClass.toZero.{u3} M (SubNegZeroMonoid.toNegZeroClass.{u3} M (SubtractionMonoid.toSubNegZeroMonoid.{u3} M (SubtractionCommMonoid.toSubtractionMonoid.{u3} M (AddCommGroup.toDivisionAddCommMonoid.{u3} M _inst_2)))))) (DirectSum.{u1, u3} ι (fun (_i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2)) (Finsupp.addCommMonoid.{u1, u3} ι M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2)) (instAddCommMonoidDirectSum.{u1, u3} ι (fun (_i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2)) (Finsupp.module.{u1, u3, u2} ι M R (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_3) (DirectSum.instModuleDirectSumInstAddCommMonoidDirectSum.{u2, u1, u3} R (Ring.toSemiring.{u2} R _inst_1) ι (fun (_i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2) (fun (i : ι) => _inst_3))) (Ring.toSemiring.{u2} R _inst_1) (Ring.toSemiring.{u2} R _inst_1) (Finsupp.addCommMonoid.{u1, u3} ι M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2)) (instAddCommMonoidDirectSum.{u1, u3} ι (fun (_i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2)) (Finsupp.module.{u1, u3, u2} ι M R (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_3) (DirectSum.instModuleDirectSumInstAddCommMonoidDirectSum.{u2, u1, u3} R (Ring.toSemiring.{u2} R _inst_1) ι (fun (_i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2) (fun (i : ι) => _inst_3)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (Ring.toSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R (Ring.toSemiring.{u2} R _inst_1)) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u2, u2, max u3 u1, max u3 u1} R R (Finsupp.{u1, u3} ι M (NegZeroClass.toZero.{u3} M (SubNegZeroMonoid.toNegZeroClass.{u3} M (SubtractionMonoid.toSubNegZeroMonoid.{u3} M (SubtractionCommMonoid.toSubtractionMonoid.{u3} M (AddCommGroup.toDivisionAddCommMonoid.{u3} M _inst_2)))))) (DirectSum.{u1, u3} ι (fun (_i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2)) (Ring.toSemiring.{u2} R _inst_1) (Ring.toSemiring.{u2} R _inst_1) (Finsupp.addCommMonoid.{u1, u3} ι M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2)) (instAddCommMonoidDirectSum.{u1, u3} ι (fun (_i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2)) (Finsupp.module.{u1, u3, u2} ι M R (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_3) (DirectSum.instModuleDirectSumInstAddCommMonoidDirectSum.{u2, u1, u3} R (Ring.toSemiring.{u2} R _inst_1) ι (fun (_i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2) (fun (i : ι) => _inst_3)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (Ring.toSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R (Ring.toSemiring.{u2} R _inst_1))))))) (finsuppLEquivDirectSum.{u2, u3, u1} R M _inst_1 _inst_2 _inst_3 ι (fun (a : ι) (b : ι) => _inst_4 a b)) (Finsupp.single.{u1, u3} ι M (NegZeroClass.toZero.{u3} M (SubNegZeroMonoid.toNegZeroClass.{u3} M (SubtractionMonoid.toSubNegZeroMonoid.{u3} M (SubtractionCommMonoid.toSubtractionMonoid.{u3} M (AddCommGroup.toDivisionAddCommMonoid.{u3} M _inst_2))))) i m)) (FunLike.coe.{max (succ u1) (succ u3), succ u3, max (succ u1) (succ u3)} (LinearMap.{u2, u2, u3, max u3 u1} R R (Ring.toSemiring.{u2} R _inst_1) (Ring.toSemiring.{u2} R _inst_1) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))) M (DirectSum.{u1, u3} ι (fun (i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2)) (AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2) (instAddCommMonoidDirectSum.{u1, u3} ι (fun (i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2)) _inst_3 (DirectSum.instModuleDirectSumInstAddCommMonoidDirectSum.{u2, u1, u3} R (Ring.toSemiring.{u2} R _inst_1) ι (fun (i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2) (fun (i : ι) => _inst_3))) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6190 : M) => DirectSum.{u1, u3} ι (fun (i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2)) _x) (LinearMap.instFunLikeLinearMap.{u2, u2, u3, max u1 u3} R R M (DirectSum.{u1, u3} ι (fun (i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2)) (Ring.toSemiring.{u2} R _inst_1) (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2) (instAddCommMonoidDirectSum.{u1, u3} ι (fun (i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2)) _inst_3 (DirectSum.instModuleDirectSumInstAddCommMonoidDirectSum.{u2, u1, u3} R (Ring.toSemiring.{u2} R _inst_1) ι (fun (i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2) (fun (i : ι) => _inst_3)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (DirectSum.lof.{u2, u1, u3} R (Ring.toSemiring.{u2} R _inst_1) ι (fun (a : ι) (b : ι) => _inst_4 a b) (fun (i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2) (fun (i : ι) => _inst_3) i) m)
+ forall (R : Type.{u2}) (M : Type.{u3}) [_inst_1 : Ring.{u2} R] [_inst_2 : AddCommGroup.{u3} M] [_inst_3 : Module.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2)] (ι : Type.{u1}) [_inst_4 : DecidableEq.{succ u1} ι] (i : ι) (m : M), Eq.{max (succ u3) (succ u1)} ((fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : Finsupp.{u1, u3} ι M (NegZeroClass.toZero.{u3} M (SubNegZeroMonoid.toNegZeroClass.{u3} M (SubtractionMonoid.toSubNegZeroMonoid.{u3} M (SubtractionCommMonoid.toSubtractionMonoid.{u3} M (AddCommGroup.toDivisionAddCommMonoid.{u3} M _inst_2)))))) => DirectSum.{u1, u3} ι (fun (_i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2)) (Finsupp.single.{u1, u3} ι M (NegZeroClass.toZero.{u3} M (SubNegZeroMonoid.toNegZeroClass.{u3} M (SubtractionMonoid.toSubNegZeroMonoid.{u3} M (SubtractionCommMonoid.toSubtractionMonoid.{u3} M (AddCommGroup.toDivisionAddCommMonoid.{u3} M _inst_2))))) i m)) (FunLike.coe.{max (succ u3) (succ u1), max (succ u3) (succ u1), max (succ u3) (succ u1)} (LinearEquiv.{u2, u2, max u3 u1, max u3 u1} R R (Ring.toSemiring.{u2} R _inst_1) (Ring.toSemiring.{u2} R _inst_1) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (Ring.toSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R (Ring.toSemiring.{u2} R _inst_1)) (Finsupp.{u1, u3} ι M (NegZeroClass.toZero.{u3} M (SubNegZeroMonoid.toNegZeroClass.{u3} M (SubtractionMonoid.toSubNegZeroMonoid.{u3} M (SubtractionCommMonoid.toSubtractionMonoid.{u3} M (AddCommGroup.toDivisionAddCommMonoid.{u3} M _inst_2)))))) (DirectSum.{u1, u3} ι (fun (_i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2)) (Finsupp.addCommMonoid.{u1, u3} ι M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2)) (instAddCommMonoidDirectSum.{u1, u3} ι (fun (_i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2)) (Finsupp.module.{u1, u3, u2} ι M R (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_3) (DirectSum.instModuleDirectSumInstAddCommMonoidDirectSum.{u2, u1, u3} R (Ring.toSemiring.{u2} R _inst_1) ι (fun (_i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2) (fun (i : ι) => _inst_3))) (Finsupp.{u1, u3} ι M (NegZeroClass.toZero.{u3} M (SubNegZeroMonoid.toNegZeroClass.{u3} M (SubtractionMonoid.toSubNegZeroMonoid.{u3} M (SubtractionCommMonoid.toSubtractionMonoid.{u3} M (AddCommGroup.toDivisionAddCommMonoid.{u3} M _inst_2)))))) (fun (_x : Finsupp.{u1, u3} ι M (NegZeroClass.toZero.{u3} M (SubNegZeroMonoid.toNegZeroClass.{u3} M (SubtractionMonoid.toSubNegZeroMonoid.{u3} M (SubtractionCommMonoid.toSubtractionMonoid.{u3} M (AddCommGroup.toDivisionAddCommMonoid.{u3} M _inst_2)))))) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : Finsupp.{u1, u3} ι M (NegZeroClass.toZero.{u3} M (SubNegZeroMonoid.toNegZeroClass.{u3} M (SubtractionMonoid.toSubNegZeroMonoid.{u3} M (SubtractionCommMonoid.toSubtractionMonoid.{u3} M (AddCommGroup.toDivisionAddCommMonoid.{u3} M _inst_2)))))) => DirectSum.{u1, u3} ι (fun (_i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2)) _x) (SMulHomClass.toFunLike.{max u3 u1, u2, max u3 u1, max u3 u1} (LinearEquiv.{u2, u2, max u3 u1, max u3 u1} R R (Ring.toSemiring.{u2} R _inst_1) (Ring.toSemiring.{u2} R _inst_1) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (Ring.toSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R (Ring.toSemiring.{u2} R _inst_1)) (Finsupp.{u1, u3} ι M (NegZeroClass.toZero.{u3} M (SubNegZeroMonoid.toNegZeroClass.{u3} M (SubtractionMonoid.toSubNegZeroMonoid.{u3} M (SubtractionCommMonoid.toSubtractionMonoid.{u3} M (AddCommGroup.toDivisionAddCommMonoid.{u3} M _inst_2)))))) (DirectSum.{u1, u3} ι (fun (_i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2)) (Finsupp.addCommMonoid.{u1, u3} ι M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2)) (instAddCommMonoidDirectSum.{u1, u3} ι (fun (_i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2)) (Finsupp.module.{u1, u3, u2} ι M R (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_3) (DirectSum.instModuleDirectSumInstAddCommMonoidDirectSum.{u2, u1, u3} R (Ring.toSemiring.{u2} R _inst_1) ι (fun (_i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2) (fun (i : ι) => _inst_3))) R (Finsupp.{u1, u3} ι M (NegZeroClass.toZero.{u3} M (SubNegZeroMonoid.toNegZeroClass.{u3} M (SubtractionMonoid.toSubNegZeroMonoid.{u3} M (SubtractionCommMonoid.toSubtractionMonoid.{u3} M (AddCommGroup.toDivisionAddCommMonoid.{u3} M _inst_2)))))) (DirectSum.{u1, u3} ι (fun (_i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2)) (SMulZeroClass.toSMul.{u2, max u3 u1} R (Finsupp.{u1, u3} ι M (NegZeroClass.toZero.{u3} M (SubNegZeroMonoid.toNegZeroClass.{u3} M (SubtractionMonoid.toSubNegZeroMonoid.{u3} M (SubtractionCommMonoid.toSubtractionMonoid.{u3} M (AddCommGroup.toDivisionAddCommMonoid.{u3} M _inst_2)))))) (AddMonoid.toZero.{max u3 u1} (Finsupp.{u1, u3} ι M (NegZeroClass.toZero.{u3} M (SubNegZeroMonoid.toNegZeroClass.{u3} M (SubtractionMonoid.toSubNegZeroMonoid.{u3} M (SubtractionCommMonoid.toSubtractionMonoid.{u3} M (AddCommGroup.toDivisionAddCommMonoid.{u3} M _inst_2)))))) (AddCommMonoid.toAddMonoid.{max u3 u1} (Finsupp.{u1, u3} ι M (NegZeroClass.toZero.{u3} M (SubNegZeroMonoid.toNegZeroClass.{u3} M (SubtractionMonoid.toSubNegZeroMonoid.{u3} M (SubtractionCommMonoid.toSubtractionMonoid.{u3} M (AddCommGroup.toDivisionAddCommMonoid.{u3} M _inst_2)))))) (Finsupp.addCommMonoid.{u1, u3} ι M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2)))) (DistribSMul.toSMulZeroClass.{u2, max u3 u1} R (Finsupp.{u1, u3} ι M (NegZeroClass.toZero.{u3} M (SubNegZeroMonoid.toNegZeroClass.{u3} M (SubtractionMonoid.toSubNegZeroMonoid.{u3} M (SubtractionCommMonoid.toSubtractionMonoid.{u3} M (AddCommGroup.toDivisionAddCommMonoid.{u3} M _inst_2)))))) (AddMonoid.toAddZeroClass.{max u3 u1} (Finsupp.{u1, u3} ι M (NegZeroClass.toZero.{u3} M (SubNegZeroMonoid.toNegZeroClass.{u3} M (SubtractionMonoid.toSubNegZeroMonoid.{u3} M (SubtractionCommMonoid.toSubtractionMonoid.{u3} M (AddCommGroup.toDivisionAddCommMonoid.{u3} M _inst_2)))))) (AddCommMonoid.toAddMonoid.{max u3 u1} (Finsupp.{u1, u3} ι M (NegZeroClass.toZero.{u3} M (SubNegZeroMonoid.toNegZeroClass.{u3} M (SubtractionMonoid.toSubNegZeroMonoid.{u3} M (SubtractionCommMonoid.toSubtractionMonoid.{u3} M (AddCommGroup.toDivisionAddCommMonoid.{u3} M _inst_2)))))) (Finsupp.addCommMonoid.{u1, u3} ι M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2)))) (DistribMulAction.toDistribSMul.{u2, max u3 u1} R (Finsupp.{u1, u3} ι M (NegZeroClass.toZero.{u3} M (SubNegZeroMonoid.toNegZeroClass.{u3} M (SubtractionMonoid.toSubNegZeroMonoid.{u3} M (SubtractionCommMonoid.toSubtractionMonoid.{u3} M (AddCommGroup.toDivisionAddCommMonoid.{u3} M _inst_2)))))) (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u3 u1} (Finsupp.{u1, u3} ι M (NegZeroClass.toZero.{u3} M (SubNegZeroMonoid.toNegZeroClass.{u3} M (SubtractionMonoid.toSubNegZeroMonoid.{u3} M (SubtractionCommMonoid.toSubtractionMonoid.{u3} M (AddCommGroup.toDivisionAddCommMonoid.{u3} M _inst_2)))))) (Finsupp.addCommMonoid.{u1, u3} ι M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2))) (Module.toDistribMulAction.{u2, max u3 u1} R (Finsupp.{u1, u3} ι M (NegZeroClass.toZero.{u3} M (SubNegZeroMonoid.toNegZeroClass.{u3} M (SubtractionMonoid.toSubNegZeroMonoid.{u3} M (SubtractionCommMonoid.toSubtractionMonoid.{u3} M (AddCommGroup.toDivisionAddCommMonoid.{u3} M _inst_2)))))) (Ring.toSemiring.{u2} R _inst_1) (Finsupp.addCommMonoid.{u1, u3} ι M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2)) (Finsupp.module.{u1, u3, u2} ι M R (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_3))))) (SMulZeroClass.toSMul.{u2, max u3 u1} R (DirectSum.{u1, u3} ι (fun (_i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2)) (AddMonoid.toZero.{max u3 u1} (DirectSum.{u1, u3} ι (fun (_i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2)) (AddCommMonoid.toAddMonoid.{max u3 u1} (DirectSum.{u1, u3} ι (fun (_i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2)) (instAddCommMonoidDirectSum.{u1, u3} ι (fun (_i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2)))) (DistribSMul.toSMulZeroClass.{u2, max u3 u1} R (DirectSum.{u1, u3} ι (fun (_i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2)) (AddMonoid.toAddZeroClass.{max u3 u1} (DirectSum.{u1, u3} ι (fun (_i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2)) (AddCommMonoid.toAddMonoid.{max u3 u1} (DirectSum.{u1, u3} ι (fun (_i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2)) (instAddCommMonoidDirectSum.{u1, u3} ι (fun (_i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2)))) (DistribMulAction.toDistribSMul.{u2, max u3 u1} R (DirectSum.{u1, u3} ι (fun (_i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2)) (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u3 u1} (DirectSum.{u1, u3} ι (fun (_i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2)) (instAddCommMonoidDirectSum.{u1, u3} ι (fun (_i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2))) (Module.toDistribMulAction.{u2, max u3 u1} R (DirectSum.{u1, u3} ι (fun (_i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2)) (Ring.toSemiring.{u2} R _inst_1) (instAddCommMonoidDirectSum.{u1, u3} ι (fun (_i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2)) (DirectSum.instModuleDirectSumInstAddCommMonoidDirectSum.{u2, u1, u3} R (Ring.toSemiring.{u2} R _inst_1) ι (fun (_i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2) (fun (i : ι) => _inst_3)))))) (DistribMulActionHomClass.toSMulHomClass.{max u3 u1, u2, max u3 u1, max u3 u1} (LinearEquiv.{u2, u2, max u3 u1, max u3 u1} R R (Ring.toSemiring.{u2} R _inst_1) (Ring.toSemiring.{u2} R _inst_1) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (Ring.toSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R (Ring.toSemiring.{u2} R _inst_1)) (Finsupp.{u1, u3} ι M (NegZeroClass.toZero.{u3} M (SubNegZeroMonoid.toNegZeroClass.{u3} M (SubtractionMonoid.toSubNegZeroMonoid.{u3} M (SubtractionCommMonoid.toSubtractionMonoid.{u3} M (AddCommGroup.toDivisionAddCommMonoid.{u3} M _inst_2)))))) (DirectSum.{u1, u3} ι (fun (_i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2)) (Finsupp.addCommMonoid.{u1, u3} ι M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2)) (instAddCommMonoidDirectSum.{u1, u3} ι (fun (_i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2)) (Finsupp.module.{u1, u3, u2} ι M R (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_3) (DirectSum.instModuleDirectSumInstAddCommMonoidDirectSum.{u2, u1, u3} R (Ring.toSemiring.{u2} R _inst_1) ι (fun (_i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2) (fun (i : ι) => _inst_3))) R (Finsupp.{u1, u3} ι M (NegZeroClass.toZero.{u3} M (SubNegZeroMonoid.toNegZeroClass.{u3} M (SubtractionMonoid.toSubNegZeroMonoid.{u3} M (SubtractionCommMonoid.toSubtractionMonoid.{u3} M (AddCommGroup.toDivisionAddCommMonoid.{u3} M _inst_2)))))) (DirectSum.{u1, u3} ι (fun (_i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2)) (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u3 u1} (Finsupp.{u1, u3} ι M (NegZeroClass.toZero.{u3} M (SubNegZeroMonoid.toNegZeroClass.{u3} M (SubtractionMonoid.toSubNegZeroMonoid.{u3} M (SubtractionCommMonoid.toSubtractionMonoid.{u3} M (AddCommGroup.toDivisionAddCommMonoid.{u3} M _inst_2)))))) (Finsupp.addCommMonoid.{u1, u3} ι M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2))) (AddCommMonoid.toAddMonoid.{max u3 u1} (DirectSum.{u1, u3} ι (fun (_i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2)) (instAddCommMonoidDirectSum.{u1, u3} ι (fun (_i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2))) (Module.toDistribMulAction.{u2, max u3 u1} R (Finsupp.{u1, u3} ι M (NegZeroClass.toZero.{u3} M (SubNegZeroMonoid.toNegZeroClass.{u3} M (SubtractionMonoid.toSubNegZeroMonoid.{u3} M (SubtractionCommMonoid.toSubtractionMonoid.{u3} M (AddCommGroup.toDivisionAddCommMonoid.{u3} M _inst_2)))))) (Ring.toSemiring.{u2} R _inst_1) (Finsupp.addCommMonoid.{u1, u3} ι M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2)) (Finsupp.module.{u1, u3, u2} ι M R (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_3)) (Module.toDistribMulAction.{u2, max u3 u1} R (DirectSum.{u1, u3} ι (fun (_i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2)) (Ring.toSemiring.{u2} R _inst_1) (instAddCommMonoidDirectSum.{u1, u3} ι (fun (_i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2)) (DirectSum.instModuleDirectSumInstAddCommMonoidDirectSum.{u2, u1, u3} R (Ring.toSemiring.{u2} R _inst_1) ι (fun (_i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2) (fun (i : ι) => _inst_3))) (SemilinearMapClass.distribMulActionHomClass.{u2, max u3 u1, max u3 u1, max u3 u1} R (Finsupp.{u1, u3} ι M (NegZeroClass.toZero.{u3} M (SubNegZeroMonoid.toNegZeroClass.{u3} M (SubtractionMonoid.toSubNegZeroMonoid.{u3} M (SubtractionCommMonoid.toSubtractionMonoid.{u3} M (AddCommGroup.toDivisionAddCommMonoid.{u3} M _inst_2)))))) (DirectSum.{u1, u3} ι (fun (_i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2)) (LinearEquiv.{u2, u2, max u3 u1, max u3 u1} R R (Ring.toSemiring.{u2} R _inst_1) (Ring.toSemiring.{u2} R _inst_1) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (Ring.toSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R (Ring.toSemiring.{u2} R _inst_1)) (Finsupp.{u1, u3} ι M (NegZeroClass.toZero.{u3} M (SubNegZeroMonoid.toNegZeroClass.{u3} M (SubtractionMonoid.toSubNegZeroMonoid.{u3} M (SubtractionCommMonoid.toSubtractionMonoid.{u3} M (AddCommGroup.toDivisionAddCommMonoid.{u3} M _inst_2)))))) (DirectSum.{u1, u3} ι (fun (_i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2)) (Finsupp.addCommMonoid.{u1, u3} ι M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2)) (instAddCommMonoidDirectSum.{u1, u3} ι (fun (_i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2)) (Finsupp.module.{u1, u3, u2} ι M R (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_3) (DirectSum.instModuleDirectSumInstAddCommMonoidDirectSum.{u2, u1, u3} R (Ring.toSemiring.{u2} R _inst_1) ι (fun (_i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2) (fun (i : ι) => _inst_3))) (Ring.toSemiring.{u2} R _inst_1) (Finsupp.addCommMonoid.{u1, u3} ι M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2)) (instAddCommMonoidDirectSum.{u1, u3} ι (fun (_i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2)) (Finsupp.module.{u1, u3, u2} ι M R (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_3) (DirectSum.instModuleDirectSumInstAddCommMonoidDirectSum.{u2, u1, u3} R (Ring.toSemiring.{u2} R _inst_1) ι (fun (_i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2) (fun (i : ι) => _inst_3)) (SemilinearEquivClass.instSemilinearMapClass.{u2, u2, max u3 u1, max u3 u1, max u3 u1} R R (Finsupp.{u1, u3} ι M (NegZeroClass.toZero.{u3} M (SubNegZeroMonoid.toNegZeroClass.{u3} M (SubtractionMonoid.toSubNegZeroMonoid.{u3} M (SubtractionCommMonoid.toSubtractionMonoid.{u3} M (AddCommGroup.toDivisionAddCommMonoid.{u3} M _inst_2)))))) (DirectSum.{u1, u3} ι (fun (_i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2)) (LinearEquiv.{u2, u2, max u3 u1, max u3 u1} R R (Ring.toSemiring.{u2} R _inst_1) (Ring.toSemiring.{u2} R _inst_1) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (Ring.toSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R (Ring.toSemiring.{u2} R _inst_1)) (Finsupp.{u1, u3} ι M (NegZeroClass.toZero.{u3} M (SubNegZeroMonoid.toNegZeroClass.{u3} M (SubtractionMonoid.toSubNegZeroMonoid.{u3} M (SubtractionCommMonoid.toSubtractionMonoid.{u3} M (AddCommGroup.toDivisionAddCommMonoid.{u3} M _inst_2)))))) (DirectSum.{u1, u3} ι (fun (_i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2)) (Finsupp.addCommMonoid.{u1, u3} ι M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2)) (instAddCommMonoidDirectSum.{u1, u3} ι (fun (_i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2)) (Finsupp.module.{u1, u3, u2} ι M R (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_3) (DirectSum.instModuleDirectSumInstAddCommMonoidDirectSum.{u2, u1, u3} R (Ring.toSemiring.{u2} R _inst_1) ι (fun (_i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2) (fun (i : ι) => _inst_3))) (Ring.toSemiring.{u2} R _inst_1) (Ring.toSemiring.{u2} R _inst_1) (Finsupp.addCommMonoid.{u1, u3} ι M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2)) (instAddCommMonoidDirectSum.{u1, u3} ι (fun (_i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2)) (Finsupp.module.{u1, u3, u2} ι M R (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_3) (DirectSum.instModuleDirectSumInstAddCommMonoidDirectSum.{u2, u1, u3} R (Ring.toSemiring.{u2} R _inst_1) ι (fun (_i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2) (fun (i : ι) => _inst_3)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (Ring.toSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R (Ring.toSemiring.{u2} R _inst_1)) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u2, u2, max u3 u1, max u3 u1} R R (Finsupp.{u1, u3} ι M (NegZeroClass.toZero.{u3} M (SubNegZeroMonoid.toNegZeroClass.{u3} M (SubtractionMonoid.toSubNegZeroMonoid.{u3} M (SubtractionCommMonoid.toSubtractionMonoid.{u3} M (AddCommGroup.toDivisionAddCommMonoid.{u3} M _inst_2)))))) (DirectSum.{u1, u3} ι (fun (_i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2)) (Ring.toSemiring.{u2} R _inst_1) (Ring.toSemiring.{u2} R _inst_1) (Finsupp.addCommMonoid.{u1, u3} ι M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2)) (instAddCommMonoidDirectSum.{u1, u3} ι (fun (_i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2)) (Finsupp.module.{u1, u3, u2} ι M R (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_3) (DirectSum.instModuleDirectSumInstAddCommMonoidDirectSum.{u2, u1, u3} R (Ring.toSemiring.{u2} R _inst_1) ι (fun (_i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2) (fun (i : ι) => _inst_3)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (Ring.toSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R (Ring.toSemiring.{u2} R _inst_1))))))) (finsuppLEquivDirectSum.{u2, u3, u1} R M _inst_1 _inst_2 _inst_3 ι (fun (a : ι) (b : ι) => _inst_4 a b)) (Finsupp.single.{u1, u3} ι M (NegZeroClass.toZero.{u3} M (SubNegZeroMonoid.toNegZeroClass.{u3} M (SubtractionMonoid.toSubNegZeroMonoid.{u3} M (SubtractionCommMonoid.toSubtractionMonoid.{u3} M (AddCommGroup.toDivisionAddCommMonoid.{u3} M _inst_2))))) i m)) (FunLike.coe.{max (succ u1) (succ u3), succ u3, max (succ u1) (succ u3)} (LinearMap.{u2, u2, u3, max u3 u1} R R (Ring.toSemiring.{u2} R _inst_1) (Ring.toSemiring.{u2} R _inst_1) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))) M (DirectSum.{u1, u3} ι (fun (i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2)) (AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2) (instAddCommMonoidDirectSum.{u1, u3} ι (fun (i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2)) _inst_3 (DirectSum.instModuleDirectSumInstAddCommMonoidDirectSum.{u2, u1, u3} R (Ring.toSemiring.{u2} R _inst_1) ι (fun (i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2) (fun (i : ι) => _inst_3))) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6191 : M) => DirectSum.{u1, u3} ι (fun (i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2)) _x) (LinearMap.instFunLikeLinearMap.{u2, u2, u3, max u1 u3} R R M (DirectSum.{u1, u3} ι (fun (i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2)) (Ring.toSemiring.{u2} R _inst_1) (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2) (instAddCommMonoidDirectSum.{u1, u3} ι (fun (i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2)) _inst_3 (DirectSum.instModuleDirectSumInstAddCommMonoidDirectSum.{u2, u1, u3} R (Ring.toSemiring.{u2} R _inst_1) ι (fun (i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2) (fun (i : ι) => _inst_3)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (DirectSum.lof.{u2, u1, u3} R (Ring.toSemiring.{u2} R _inst_1) ι (fun (a : ι) (b : ι) => _inst_4 a b) (fun (i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2) (fun (i : ι) => _inst_3) i) m)
Case conversion may be inaccurate. Consider using '#align finsupp_lequiv_direct_sum_single finsuppLEquivDirectSum_singleₓ'. -/
@[simp]
theorem finsuppLEquivDirectSum_single (i : ι) (m : M) :
@@ -65,7 +65,7 @@ theorem finsuppLEquivDirectSum_single (i : ι) (m : M) :
lean 3 declaration is
forall (R : Type.{u1}) (M : Type.{u2}) [_inst_1 : Ring.{u1} R] [_inst_2 : AddCommGroup.{u2} M] [_inst_3 : Module.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2)] (ι : Type.{u3}) [_inst_4 : DecidableEq.{succ u3} ι] (i : ι) (m : M), Eq.{max (succ u3) (succ u2)} (Finsupp.{u3, u2} ι M (AddZeroClass.toHasZero.{u2} M (AddMonoid.toAddZeroClass.{u2} M (SubNegMonoid.toAddMonoid.{u2} M (AddGroup.toSubNegMonoid.{u2} M (AddCommGroup.toAddGroup.{u2} M _inst_2)))))) (coeFn.{succ (max u3 u2), succ (max u3 u2)} (LinearEquiv.{u1, u1, max u3 u2, max u3 u2} R R (Ring.toSemiring.{u1} R _inst_1) (Ring.toSemiring.{u1} R _inst_1) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R _inst_1))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R _inst_1))) (finsuppLEquivDirectSum._proof_2.{u1} R _inst_1) (finsuppLEquivDirectSum._proof_1.{u1} R _inst_1) (DirectSum.{u3, u2} ι (fun (i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u2} M _inst_2)) (Finsupp.{u3, u2} ι M (AddZeroClass.toHasZero.{u2} M (AddMonoid.toAddZeroClass.{u2} M (SubNegMonoid.toAddMonoid.{u2} M (AddGroup.toSubNegMonoid.{u2} M (AddCommGroup.toAddGroup.{u2} M _inst_2)))))) (DirectSum.addCommMonoid.{u3, u2} ι (fun (i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u2} M _inst_2)) (Finsupp.addCommMonoid.{u3, u2} ι M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2)) (DirectSum.module.{u1, u3, u2} R (Ring.toSemiring.{u1} R _inst_1) ι (fun (i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (fun (i : ι) => _inst_3)) (Finsupp.module.{u3, u2, u1} ι M R (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3)) (fun (_x : LinearEquiv.{u1, u1, max u3 u2, max u3 u2} R R (Ring.toSemiring.{u1} R _inst_1) (Ring.toSemiring.{u1} R _inst_1) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R _inst_1))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R _inst_1))) (finsuppLEquivDirectSum._proof_2.{u1} R _inst_1) (finsuppLEquivDirectSum._proof_1.{u1} R _inst_1) (DirectSum.{u3, u2} ι (fun (i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u2} M _inst_2)) (Finsupp.{u3, u2} ι M (AddZeroClass.toHasZero.{u2} M (AddMonoid.toAddZeroClass.{u2} M (SubNegMonoid.toAddMonoid.{u2} M (AddGroup.toSubNegMonoid.{u2} M (AddCommGroup.toAddGroup.{u2} M _inst_2)))))) (DirectSum.addCommMonoid.{u3, u2} ι (fun (i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u2} M _inst_2)) (Finsupp.addCommMonoid.{u3, u2} ι M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2)) (DirectSum.module.{u1, u3, u2} R (Ring.toSemiring.{u1} R _inst_1) ι (fun (i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (fun (i : ι) => _inst_3)) (Finsupp.module.{u3, u2, u1} ι M R (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3)) => (DirectSum.{u3, u2} ι (fun (i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u2} M _inst_2)) -> (Finsupp.{u3, u2} ι M (AddZeroClass.toHasZero.{u2} M (AddMonoid.toAddZeroClass.{u2} M (SubNegMonoid.toAddMonoid.{u2} M (AddGroup.toSubNegMonoid.{u2} M (AddCommGroup.toAddGroup.{u2} M _inst_2))))))) (LinearEquiv.hasCoeToFun.{u1, u1, max u3 u2, max u3 u2} R R (DirectSum.{u3, u2} ι (fun (i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u2} M _inst_2)) (Finsupp.{u3, u2} ι M (AddZeroClass.toHasZero.{u2} M (AddMonoid.toAddZeroClass.{u2} M (SubNegMonoid.toAddMonoid.{u2} M (AddGroup.toSubNegMonoid.{u2} M (AddCommGroup.toAddGroup.{u2} M _inst_2)))))) (Ring.toSemiring.{u1} R _inst_1) (Ring.toSemiring.{u1} R _inst_1) (DirectSum.addCommMonoid.{u3, u2} ι (fun (i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u2} M _inst_2)) (Finsupp.addCommMonoid.{u3, u2} ι M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2)) (DirectSum.module.{u1, u3, u2} R (Ring.toSemiring.{u1} R _inst_1) ι (fun (i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (fun (i : ι) => _inst_3)) (Finsupp.module.{u3, u2, u1} ι M R (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R _inst_1))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R _inst_1))) (finsuppLEquivDirectSum._proof_2.{u1} R _inst_1) (finsuppLEquivDirectSum._proof_1.{u1} R _inst_1)) (LinearEquiv.symm.{u1, u1, max u3 u2, max u3 u2} R R (Finsupp.{u3, u2} ι M (AddZeroClass.toHasZero.{u2} M (AddMonoid.toAddZeroClass.{u2} M (SubNegMonoid.toAddMonoid.{u2} M (AddGroup.toSubNegMonoid.{u2} M (AddCommGroup.toAddGroup.{u2} M _inst_2)))))) (DirectSum.{u3, u2} ι (fun (i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u2} M _inst_2)) (Ring.toSemiring.{u1} R _inst_1) (Ring.toSemiring.{u1} R _inst_1) (Finsupp.addCommMonoid.{u3, u2} ι M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2)) (DirectSum.addCommMonoid.{u3, u2} ι (fun (i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u2} M _inst_2)) (Finsupp.module.{u3, u2, u1} ι M R (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3) (DirectSum.module.{u1, u3, u2} R (Ring.toSemiring.{u1} R _inst_1) ι (fun (i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (fun (i : ι) => _inst_3)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R _inst_1))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R _inst_1))) (finsuppLEquivDirectSum._proof_1.{u1} R _inst_1) (finsuppLEquivDirectSum._proof_2.{u1} R _inst_1) (finsuppLEquivDirectSum.{u1, u2, u3} R M _inst_1 _inst_2 _inst_3 ι (fun (a : ι) (b : ι) => _inst_4 a b))) (coeFn.{max (succ u2) (succ (max u3 u2)), max (succ u2) (succ (max u3 u2))} (LinearMap.{u1, u1, u2, max u3 u2} R R (Ring.toSemiring.{u1} R _inst_1) (Ring.toSemiring.{u1} R _inst_1) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R _inst_1))) M (DirectSum.{u3, u2} ι (fun (i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u2} M _inst_2)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (DirectSum.addCommMonoid.{u3, u2} ι (fun (i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u2} M _inst_2)) _inst_3 (DirectSum.module.{u1, u3, u2} R (Ring.toSemiring.{u1} R _inst_1) ι (fun (i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (fun (i : ι) => _inst_3))) (fun (_x : LinearMap.{u1, u1, u2, max u3 u2} R R (Ring.toSemiring.{u1} R _inst_1) (Ring.toSemiring.{u1} R _inst_1) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R _inst_1))) M (DirectSum.{u3, u2} ι (fun (i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u2} M _inst_2)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (DirectSum.addCommMonoid.{u3, u2} ι (fun (i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u2} M _inst_2)) _inst_3 (DirectSum.module.{u1, u3, u2} R (Ring.toSemiring.{u1} R _inst_1) ι (fun (i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (fun (i : ι) => _inst_3))) => M -> (DirectSum.{u3, u2} ι (fun (i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u2} M _inst_2))) (LinearMap.hasCoeToFun.{u1, u1, u2, max u3 u2} R R M (DirectSum.{u3, u2} ι (fun (i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u2} M _inst_2)) (Ring.toSemiring.{u1} R _inst_1) (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (DirectSum.addCommMonoid.{u3, u2} ι (fun (i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u2} M _inst_2)) _inst_3 (DirectSum.module.{u1, u3, u2} R (Ring.toSemiring.{u1} R _inst_1) ι (fun (i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (fun (i : ι) => _inst_3)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R _inst_1)))) (DirectSum.lof.{u1, u3, u2} R (Ring.toSemiring.{u1} R _inst_1) ι (fun (a : ι) (b : ι) => _inst_4 a b) (fun (i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (fun (i : ι) => _inst_3) i) m)) (Finsupp.single.{u3, u2} ι M (AddZeroClass.toHasZero.{u2} M (AddMonoid.toAddZeroClass.{u2} M (SubNegMonoid.toAddMonoid.{u2} M (AddGroup.toSubNegMonoid.{u2} M (AddCommGroup.toAddGroup.{u2} M _inst_2))))) i m)
but is expected to have type
- forall (R : Type.{u2}) (M : Type.{u3}) [_inst_1 : Ring.{u2} R] [_inst_2 : AddCommGroup.{u3} M] [_inst_3 : Module.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2)] (ι : Type.{u1}) [_inst_4 : DecidableEq.{succ u1} ι] (i : ι) (m : M), Eq.{max (succ u3) (succ u1)} ((fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : DirectSum.{u1, u3} ι (fun (_i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2)) => Finsupp.{u1, u3} ι M (NegZeroClass.toZero.{u3} M (SubNegZeroMonoid.toNegZeroClass.{u3} M (SubtractionMonoid.toSubNegZeroMonoid.{u3} M (SubtractionCommMonoid.toSubtractionMonoid.{u3} M (AddCommGroup.toDivisionAddCommMonoid.{u3} M _inst_2)))))) (FunLike.coe.{max (succ u1) (succ u3), succ u3, max (succ u1) (succ u3)} (LinearMap.{u2, u2, u3, max u3 u1} R R (Ring.toSemiring.{u2} R _inst_1) (Ring.toSemiring.{u2} R _inst_1) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))) M (DirectSum.{u1, u3} ι (fun (i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2)) (AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2) (instAddCommMonoidDirectSum.{u1, u3} ι (fun (i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2)) _inst_3 (DirectSum.instModuleDirectSumInstAddCommMonoidDirectSum.{u2, u1, u3} R (Ring.toSemiring.{u2} R _inst_1) ι (fun (i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2) (fun (i : ι) => _inst_3))) M (fun (a : M) => (fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6190 : M) => DirectSum.{u1, u3} ι (fun (i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2)) a) (LinearMap.instFunLikeLinearMap.{u2, u2, u3, max u1 u3} R R M (DirectSum.{u1, u3} ι (fun (i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2)) (Ring.toSemiring.{u2} R _inst_1) (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2) (instAddCommMonoidDirectSum.{u1, u3} ι (fun (i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2)) _inst_3 (DirectSum.instModuleDirectSumInstAddCommMonoidDirectSum.{u2, u1, u3} R (Ring.toSemiring.{u2} R _inst_1) ι (fun (i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2) (fun (i : ι) => _inst_3)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (DirectSum.lof.{u2, u1, u3} R (Ring.toSemiring.{u2} R _inst_1) ι (fun (a : ι) (b : ι) => _inst_4 a b) (fun (_i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2) (fun (i : ι) => _inst_3) i) m)) (FunLike.coe.{max (succ u3) (succ u1), max (succ u3) (succ u1), max (succ u3) (succ u1)} (LinearEquiv.{u2, u2, max u3 u1, max u3 u1} R R (Ring.toSemiring.{u2} R _inst_1) (Ring.toSemiring.{u2} R _inst_1) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (Ring.toSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R (Ring.toSemiring.{u2} R _inst_1)) (DirectSum.{u1, u3} ι (fun (_i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2)) (Finsupp.{u1, u3} ι M (NegZeroClass.toZero.{u3} M (SubNegZeroMonoid.toNegZeroClass.{u3} M (SubtractionMonoid.toSubNegZeroMonoid.{u3} M (SubtractionCommMonoid.toSubtractionMonoid.{u3} M (AddCommGroup.toDivisionAddCommMonoid.{u3} M _inst_2)))))) (instAddCommMonoidDirectSum.{u1, u3} ι (fun (_i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2)) (Finsupp.addCommMonoid.{u1, u3} ι M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2)) (DirectSum.instModuleDirectSumInstAddCommMonoidDirectSum.{u2, u1, u3} R (Ring.toSemiring.{u2} R _inst_1) ι (fun (_i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2) (fun (i : ι) => _inst_3)) (Finsupp.module.{u1, u3, u2} ι M R (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_3)) (DirectSum.{u1, u3} ι (fun (_i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2)) (fun (_x : DirectSum.{u1, u3} ι (fun (_i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2)) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : DirectSum.{u1, u3} ι (fun (_i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2)) => Finsupp.{u1, u3} ι M (NegZeroClass.toZero.{u3} M (SubNegZeroMonoid.toNegZeroClass.{u3} M (SubtractionMonoid.toSubNegZeroMonoid.{u3} M (SubtractionCommMonoid.toSubtractionMonoid.{u3} M (AddCommGroup.toDivisionAddCommMonoid.{u3} M _inst_2)))))) _x) (SMulHomClass.toFunLike.{max u3 u1, u2, max u3 u1, max u3 u1} (LinearEquiv.{u2, u2, max u3 u1, max u3 u1} R R (Ring.toSemiring.{u2} R _inst_1) (Ring.toSemiring.{u2} R _inst_1) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (Ring.toSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R (Ring.toSemiring.{u2} R _inst_1)) (DirectSum.{u1, u3} ι (fun (_i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2)) (Finsupp.{u1, u3} ι M (NegZeroClass.toZero.{u3} M (SubNegZeroMonoid.toNegZeroClass.{u3} M (SubtractionMonoid.toSubNegZeroMonoid.{u3} M (SubtractionCommMonoid.toSubtractionMonoid.{u3} M (AddCommGroup.toDivisionAddCommMonoid.{u3} M _inst_2)))))) (instAddCommMonoidDirectSum.{u1, u3} ι (fun (_i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2)) (Finsupp.addCommMonoid.{u1, u3} ι M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2)) (DirectSum.instModuleDirectSumInstAddCommMonoidDirectSum.{u2, u1, u3} R (Ring.toSemiring.{u2} R _inst_1) ι (fun (_i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2) (fun (i : ι) => _inst_3)) (Finsupp.module.{u1, u3, u2} ι M R (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_3)) R (DirectSum.{u1, u3} ι (fun (_i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2)) (Finsupp.{u1, u3} ι M (NegZeroClass.toZero.{u3} M (SubNegZeroMonoid.toNegZeroClass.{u3} M (SubtractionMonoid.toSubNegZeroMonoid.{u3} M (SubtractionCommMonoid.toSubtractionMonoid.{u3} M (AddCommGroup.toDivisionAddCommMonoid.{u3} M _inst_2)))))) (SMulZeroClass.toSMul.{u2, max u3 u1} R (DirectSum.{u1, u3} ι (fun (_i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2)) (AddMonoid.toZero.{max u3 u1} (DirectSum.{u1, u3} ι (fun (_i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2)) (AddCommMonoid.toAddMonoid.{max u3 u1} (DirectSum.{u1, u3} ι (fun (_i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2)) (instAddCommMonoidDirectSum.{u1, u3} ι (fun (_i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2)))) (DistribSMul.toSMulZeroClass.{u2, max u3 u1} R (DirectSum.{u1, u3} ι (fun (_i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2)) (AddMonoid.toAddZeroClass.{max u3 u1} (DirectSum.{u1, u3} ι (fun (_i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2)) (AddCommMonoid.toAddMonoid.{max u3 u1} (DirectSum.{u1, u3} ι (fun (_i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2)) (instAddCommMonoidDirectSum.{u1, u3} ι (fun (_i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2)))) (DistribMulAction.toDistribSMul.{u2, max u3 u1} R (DirectSum.{u1, u3} ι (fun (_i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2)) (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u3 u1} (DirectSum.{u1, u3} ι (fun (_i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2)) (instAddCommMonoidDirectSum.{u1, u3} ι (fun (_i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2))) (Module.toDistribMulAction.{u2, max u3 u1} R (DirectSum.{u1, u3} ι (fun (_i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2)) (Ring.toSemiring.{u2} R _inst_1) (instAddCommMonoidDirectSum.{u1, u3} ι (fun (_i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2)) (DirectSum.instModuleDirectSumInstAddCommMonoidDirectSum.{u2, u1, u3} R (Ring.toSemiring.{u2} R _inst_1) ι (fun (_i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2) (fun (i : ι) => _inst_3)))))) (SMulZeroClass.toSMul.{u2, max u3 u1} R (Finsupp.{u1, u3} ι M (NegZeroClass.toZero.{u3} M (SubNegZeroMonoid.toNegZeroClass.{u3} M (SubtractionMonoid.toSubNegZeroMonoid.{u3} M (SubtractionCommMonoid.toSubtractionMonoid.{u3} M (AddCommGroup.toDivisionAddCommMonoid.{u3} M _inst_2)))))) (AddMonoid.toZero.{max u3 u1} (Finsupp.{u1, u3} ι M (NegZeroClass.toZero.{u3} M (SubNegZeroMonoid.toNegZeroClass.{u3} M (SubtractionMonoid.toSubNegZeroMonoid.{u3} M (SubtractionCommMonoid.toSubtractionMonoid.{u3} M (AddCommGroup.toDivisionAddCommMonoid.{u3} M _inst_2)))))) (AddCommMonoid.toAddMonoid.{max u3 u1} (Finsupp.{u1, u3} ι M (NegZeroClass.toZero.{u3} M (SubNegZeroMonoid.toNegZeroClass.{u3} M (SubtractionMonoid.toSubNegZeroMonoid.{u3} M (SubtractionCommMonoid.toSubtractionMonoid.{u3} M (AddCommGroup.toDivisionAddCommMonoid.{u3} M _inst_2)))))) (Finsupp.addCommMonoid.{u1, u3} ι M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2)))) (DistribSMul.toSMulZeroClass.{u2, max u3 u1} R (Finsupp.{u1, u3} ι M (NegZeroClass.toZero.{u3} M (SubNegZeroMonoid.toNegZeroClass.{u3} M (SubtractionMonoid.toSubNegZeroMonoid.{u3} M (SubtractionCommMonoid.toSubtractionMonoid.{u3} M (AddCommGroup.toDivisionAddCommMonoid.{u3} M _inst_2)))))) (AddMonoid.toAddZeroClass.{max u3 u1} (Finsupp.{u1, u3} ι M (NegZeroClass.toZero.{u3} M (SubNegZeroMonoid.toNegZeroClass.{u3} M (SubtractionMonoid.toSubNegZeroMonoid.{u3} M (SubtractionCommMonoid.toSubtractionMonoid.{u3} M (AddCommGroup.toDivisionAddCommMonoid.{u3} M _inst_2)))))) (AddCommMonoid.toAddMonoid.{max u3 u1} (Finsupp.{u1, u3} ι M (NegZeroClass.toZero.{u3} M (SubNegZeroMonoid.toNegZeroClass.{u3} M (SubtractionMonoid.toSubNegZeroMonoid.{u3} M (SubtractionCommMonoid.toSubtractionMonoid.{u3} M (AddCommGroup.toDivisionAddCommMonoid.{u3} M _inst_2)))))) (Finsupp.addCommMonoid.{u1, u3} ι M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2)))) (DistribMulAction.toDistribSMul.{u2, max u3 u1} R (Finsupp.{u1, u3} ι M (NegZeroClass.toZero.{u3} M (SubNegZeroMonoid.toNegZeroClass.{u3} M (SubtractionMonoid.toSubNegZeroMonoid.{u3} M (SubtractionCommMonoid.toSubtractionMonoid.{u3} M (AddCommGroup.toDivisionAddCommMonoid.{u3} M _inst_2)))))) (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u3 u1} (Finsupp.{u1, u3} ι M (NegZeroClass.toZero.{u3} M (SubNegZeroMonoid.toNegZeroClass.{u3} M (SubtractionMonoid.toSubNegZeroMonoid.{u3} M (SubtractionCommMonoid.toSubtractionMonoid.{u3} M (AddCommGroup.toDivisionAddCommMonoid.{u3} M _inst_2)))))) (Finsupp.addCommMonoid.{u1, u3} ι M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2))) (Module.toDistribMulAction.{u2, max u3 u1} R (Finsupp.{u1, u3} ι M (NegZeroClass.toZero.{u3} M (SubNegZeroMonoid.toNegZeroClass.{u3} M (SubtractionMonoid.toSubNegZeroMonoid.{u3} M (SubtractionCommMonoid.toSubtractionMonoid.{u3} M (AddCommGroup.toDivisionAddCommMonoid.{u3} M _inst_2)))))) (Ring.toSemiring.{u2} R _inst_1) (Finsupp.addCommMonoid.{u1, u3} ι M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2)) (Finsupp.module.{u1, u3, u2} ι M R (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_3))))) (DistribMulActionHomClass.toSMulHomClass.{max u3 u1, u2, max u3 u1, max u3 u1} (LinearEquiv.{u2, u2, max u3 u1, max u3 u1} R R (Ring.toSemiring.{u2} R _inst_1) (Ring.toSemiring.{u2} R _inst_1) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (Ring.toSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R (Ring.toSemiring.{u2} R _inst_1)) (DirectSum.{u1, u3} ι (fun (_i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2)) (Finsupp.{u1, u3} ι M (NegZeroClass.toZero.{u3} M (SubNegZeroMonoid.toNegZeroClass.{u3} M (SubtractionMonoid.toSubNegZeroMonoid.{u3} M (SubtractionCommMonoid.toSubtractionMonoid.{u3} M (AddCommGroup.toDivisionAddCommMonoid.{u3} M _inst_2)))))) (instAddCommMonoidDirectSum.{u1, u3} ι (fun (_i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2)) (Finsupp.addCommMonoid.{u1, u3} ι M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2)) (DirectSum.instModuleDirectSumInstAddCommMonoidDirectSum.{u2, u1, u3} R (Ring.toSemiring.{u2} R _inst_1) ι (fun (_i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2) (fun (i : ι) => _inst_3)) (Finsupp.module.{u1, u3, u2} ι M R (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_3)) R (DirectSum.{u1, u3} ι (fun (_i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2)) (Finsupp.{u1, u3} ι M (NegZeroClass.toZero.{u3} M (SubNegZeroMonoid.toNegZeroClass.{u3} M (SubtractionMonoid.toSubNegZeroMonoid.{u3} M (SubtractionCommMonoid.toSubtractionMonoid.{u3} M (AddCommGroup.toDivisionAddCommMonoid.{u3} M _inst_2)))))) (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u3 u1} (DirectSum.{u1, u3} ι (fun (_i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2)) (instAddCommMonoidDirectSum.{u1, u3} ι (fun (_i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2))) (AddCommMonoid.toAddMonoid.{max u3 u1} (Finsupp.{u1, u3} ι M (NegZeroClass.toZero.{u3} M (SubNegZeroMonoid.toNegZeroClass.{u3} M (SubtractionMonoid.toSubNegZeroMonoid.{u3} M (SubtractionCommMonoid.toSubtractionMonoid.{u3} M (AddCommGroup.toDivisionAddCommMonoid.{u3} M _inst_2)))))) (Finsupp.addCommMonoid.{u1, u3} ι M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2))) (Module.toDistribMulAction.{u2, max u3 u1} R (DirectSum.{u1, u3} ι (fun (_i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2)) (Ring.toSemiring.{u2} R _inst_1) (instAddCommMonoidDirectSum.{u1, u3} ι (fun (_i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2)) (DirectSum.instModuleDirectSumInstAddCommMonoidDirectSum.{u2, u1, u3} R (Ring.toSemiring.{u2} R _inst_1) ι (fun (_i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2) (fun (i : ι) => _inst_3))) (Module.toDistribMulAction.{u2, max u3 u1} R (Finsupp.{u1, u3} ι M (NegZeroClass.toZero.{u3} M (SubNegZeroMonoid.toNegZeroClass.{u3} M (SubtractionMonoid.toSubNegZeroMonoid.{u3} M (SubtractionCommMonoid.toSubtractionMonoid.{u3} M (AddCommGroup.toDivisionAddCommMonoid.{u3} M _inst_2)))))) (Ring.toSemiring.{u2} R _inst_1) (Finsupp.addCommMonoid.{u1, u3} ι M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2)) (Finsupp.module.{u1, u3, u2} ι M R (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_3)) (SemilinearMapClass.distribMulActionHomClass.{u2, max u3 u1, max u3 u1, max u3 u1} R (DirectSum.{u1, u3} ι (fun (_i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2)) (Finsupp.{u1, u3} ι M (NegZeroClass.toZero.{u3} M (SubNegZeroMonoid.toNegZeroClass.{u3} M (SubtractionMonoid.toSubNegZeroMonoid.{u3} M (SubtractionCommMonoid.toSubtractionMonoid.{u3} M (AddCommGroup.toDivisionAddCommMonoid.{u3} M _inst_2)))))) (LinearEquiv.{u2, u2, max u3 u1, max u3 u1} R R (Ring.toSemiring.{u2} R _inst_1) (Ring.toSemiring.{u2} R _inst_1) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (Ring.toSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R (Ring.toSemiring.{u2} R _inst_1)) (DirectSum.{u1, u3} ι (fun (_i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2)) (Finsupp.{u1, u3} ι M (NegZeroClass.toZero.{u3} M (SubNegZeroMonoid.toNegZeroClass.{u3} M (SubtractionMonoid.toSubNegZeroMonoid.{u3} M (SubtractionCommMonoid.toSubtractionMonoid.{u3} M (AddCommGroup.toDivisionAddCommMonoid.{u3} M _inst_2)))))) (instAddCommMonoidDirectSum.{u1, u3} ι (fun (_i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2)) (Finsupp.addCommMonoid.{u1, u3} ι M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2)) (DirectSum.instModuleDirectSumInstAddCommMonoidDirectSum.{u2, u1, u3} R (Ring.toSemiring.{u2} R _inst_1) ι (fun (_i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2) (fun (i : ι) => _inst_3)) (Finsupp.module.{u1, u3, u2} ι M R (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_3)) (Ring.toSemiring.{u2} R _inst_1) (instAddCommMonoidDirectSum.{u1, u3} ι (fun (_i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2)) (Finsupp.addCommMonoid.{u1, u3} ι M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2)) (DirectSum.instModuleDirectSumInstAddCommMonoidDirectSum.{u2, u1, u3} R (Ring.toSemiring.{u2} R _inst_1) ι (fun (_i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2) (fun (i : ι) => _inst_3)) (Finsupp.module.{u1, u3, u2} ι M R (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_3) (SemilinearEquivClass.instSemilinearMapClass.{u2, u2, max u3 u1, max u3 u1, max u3 u1} R R (DirectSum.{u1, u3} ι (fun (_i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2)) (Finsupp.{u1, u3} ι M (NegZeroClass.toZero.{u3} M (SubNegZeroMonoid.toNegZeroClass.{u3} M (SubtractionMonoid.toSubNegZeroMonoid.{u3} M (SubtractionCommMonoid.toSubtractionMonoid.{u3} M (AddCommGroup.toDivisionAddCommMonoid.{u3} M _inst_2)))))) (LinearEquiv.{u2, u2, max u3 u1, max u3 u1} R R (Ring.toSemiring.{u2} R _inst_1) (Ring.toSemiring.{u2} R _inst_1) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (Ring.toSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R (Ring.toSemiring.{u2} R _inst_1)) (DirectSum.{u1, u3} ι (fun (_i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2)) (Finsupp.{u1, u3} ι M (NegZeroClass.toZero.{u3} M (SubNegZeroMonoid.toNegZeroClass.{u3} M (SubtractionMonoid.toSubNegZeroMonoid.{u3} M (SubtractionCommMonoid.toSubtractionMonoid.{u3} M (AddCommGroup.toDivisionAddCommMonoid.{u3} M _inst_2)))))) (instAddCommMonoidDirectSum.{u1, u3} ι (fun (_i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2)) (Finsupp.addCommMonoid.{u1, u3} ι M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2)) (DirectSum.instModuleDirectSumInstAddCommMonoidDirectSum.{u2, u1, u3} R (Ring.toSemiring.{u2} R _inst_1) ι (fun (_i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2) (fun (i : ι) => _inst_3)) (Finsupp.module.{u1, u3, u2} ι M R (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_3)) (Ring.toSemiring.{u2} R _inst_1) (Ring.toSemiring.{u2} R _inst_1) (instAddCommMonoidDirectSum.{u1, u3} ι (fun (_i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2)) (Finsupp.addCommMonoid.{u1, u3} ι M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2)) (DirectSum.instModuleDirectSumInstAddCommMonoidDirectSum.{u2, u1, u3} R (Ring.toSemiring.{u2} R _inst_1) ι (fun (_i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2) (fun (i : ι) => _inst_3)) (Finsupp.module.{u1, u3, u2} ι M R (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_3) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (Ring.toSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R (Ring.toSemiring.{u2} R _inst_1)) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u2, u2, max u3 u1, max u3 u1} R R (DirectSum.{u1, u3} ι (fun (_i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2)) (Finsupp.{u1, u3} ι M (NegZeroClass.toZero.{u3} M (SubNegZeroMonoid.toNegZeroClass.{u3} M (SubtractionMonoid.toSubNegZeroMonoid.{u3} M (SubtractionCommMonoid.toSubtractionMonoid.{u3} M (AddCommGroup.toDivisionAddCommMonoid.{u3} M _inst_2)))))) (Ring.toSemiring.{u2} R _inst_1) (Ring.toSemiring.{u2} R _inst_1) (instAddCommMonoidDirectSum.{u1, u3} ι (fun (_i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2)) (Finsupp.addCommMonoid.{u1, u3} ι M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2)) (DirectSum.instModuleDirectSumInstAddCommMonoidDirectSum.{u2, u1, u3} R (Ring.toSemiring.{u2} R _inst_1) ι (fun (_i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2) (fun (i : ι) => _inst_3)) (Finsupp.module.{u1, u3, u2} ι M R (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_3) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (Ring.toSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R (Ring.toSemiring.{u2} R _inst_1))))))) (LinearEquiv.symm.{u2, u2, max u3 u1, max u3 u1} R R (Finsupp.{u1, u3} ι M (NegZeroClass.toZero.{u3} M (SubNegZeroMonoid.toNegZeroClass.{u3} M (SubtractionMonoid.toSubNegZeroMonoid.{u3} M (SubtractionCommMonoid.toSubtractionMonoid.{u3} M (AddCommGroup.toDivisionAddCommMonoid.{u3} M _inst_2)))))) (DirectSum.{u1, u3} ι (fun (i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2)) (Ring.toSemiring.{u2} R _inst_1) (Ring.toSemiring.{u2} R _inst_1) (Finsupp.addCommMonoid.{u1, u3} ι M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2)) (instAddCommMonoidDirectSum.{u1, u3} ι (fun (i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2)) (Finsupp.module.{u1, u3, u2} ι M R (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_3) (DirectSum.instModuleDirectSumInstAddCommMonoidDirectSum.{u2, u1, u3} R (Ring.toSemiring.{u2} R _inst_1) ι (fun (i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2) (fun (i : ι) => _inst_3)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (Ring.toSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R (Ring.toSemiring.{u2} R _inst_1)) (finsuppLEquivDirectSum.{u2, u3, u1} R M _inst_1 _inst_2 _inst_3 ι (fun (a : ι) (b : ι) => _inst_4 a b))) (FunLike.coe.{max (succ u1) (succ u3), succ u3, max (succ u1) (succ u3)} (LinearMap.{u2, u2, u3, max u3 u1} R R (Ring.toSemiring.{u2} R _inst_1) (Ring.toSemiring.{u2} R _inst_1) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))) M (DirectSum.{u1, u3} ι (fun (i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2)) (AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2) (instAddCommMonoidDirectSum.{u1, u3} ι (fun (i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2)) _inst_3 (DirectSum.instModuleDirectSumInstAddCommMonoidDirectSum.{u2, u1, u3} R (Ring.toSemiring.{u2} R _inst_1) ι (fun (i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2) (fun (i : ι) => _inst_3))) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6190 : M) => DirectSum.{u1, u3} ι (fun (i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2)) _x) (LinearMap.instFunLikeLinearMap.{u2, u2, u3, max u1 u3} R R M (DirectSum.{u1, u3} ι (fun (i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2)) (Ring.toSemiring.{u2} R _inst_1) (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2) (instAddCommMonoidDirectSum.{u1, u3} ι (fun (i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2)) _inst_3 (DirectSum.instModuleDirectSumInstAddCommMonoidDirectSum.{u2, u1, u3} R (Ring.toSemiring.{u2} R _inst_1) ι (fun (i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2) (fun (i : ι) => _inst_3)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (DirectSum.lof.{u2, u1, u3} R (Ring.toSemiring.{u2} R _inst_1) ι (fun (a : ι) (b : ι) => _inst_4 a b) (fun (i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2) (fun (i : ι) => _inst_3) i) m)) (Finsupp.single.{u1, u3} ι M (NegZeroClass.toZero.{u3} M (SubNegZeroMonoid.toNegZeroClass.{u3} M (SubtractionMonoid.toSubNegZeroMonoid.{u3} M (SubtractionCommMonoid.toSubtractionMonoid.{u3} M (AddCommGroup.toDivisionAddCommMonoid.{u3} M _inst_2))))) i m)
+ forall (R : Type.{u2}) (M : Type.{u3}) [_inst_1 : Ring.{u2} R] [_inst_2 : AddCommGroup.{u3} M] [_inst_3 : Module.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2)] (ι : Type.{u1}) [_inst_4 : DecidableEq.{succ u1} ι] (i : ι) (m : M), Eq.{max (succ u3) (succ u1)} ((fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : DirectSum.{u1, u3} ι (fun (_i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2)) => Finsupp.{u1, u3} ι M (NegZeroClass.toZero.{u3} M (SubNegZeroMonoid.toNegZeroClass.{u3} M (SubtractionMonoid.toSubNegZeroMonoid.{u3} M (SubtractionCommMonoid.toSubtractionMonoid.{u3} M (AddCommGroup.toDivisionAddCommMonoid.{u3} M _inst_2)))))) (FunLike.coe.{max (succ u1) (succ u3), succ u3, max (succ u1) (succ u3)} (LinearMap.{u2, u2, u3, max u3 u1} R R (Ring.toSemiring.{u2} R _inst_1) (Ring.toSemiring.{u2} R _inst_1) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))) M (DirectSum.{u1, u3} ι (fun (i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2)) (AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2) (instAddCommMonoidDirectSum.{u1, u3} ι (fun (i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2)) _inst_3 (DirectSum.instModuleDirectSumInstAddCommMonoidDirectSum.{u2, u1, u3} R (Ring.toSemiring.{u2} R _inst_1) ι (fun (i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2) (fun (i : ι) => _inst_3))) M (fun (a : M) => (fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6191 : M) => DirectSum.{u1, u3} ι (fun (i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2)) a) (LinearMap.instFunLikeLinearMap.{u2, u2, u3, max u1 u3} R R M (DirectSum.{u1, u3} ι (fun (i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2)) (Ring.toSemiring.{u2} R _inst_1) (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2) (instAddCommMonoidDirectSum.{u1, u3} ι (fun (i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2)) _inst_3 (DirectSum.instModuleDirectSumInstAddCommMonoidDirectSum.{u2, u1, u3} R (Ring.toSemiring.{u2} R _inst_1) ι (fun (i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2) (fun (i : ι) => _inst_3)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (DirectSum.lof.{u2, u1, u3} R (Ring.toSemiring.{u2} R _inst_1) ι (fun (a : ι) (b : ι) => _inst_4 a b) (fun (_i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2) (fun (i : ι) => _inst_3) i) m)) (FunLike.coe.{max (succ u3) (succ u1), max (succ u3) (succ u1), max (succ u3) (succ u1)} (LinearEquiv.{u2, u2, max u3 u1, max u3 u1} R R (Ring.toSemiring.{u2} R _inst_1) (Ring.toSemiring.{u2} R _inst_1) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (Ring.toSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R (Ring.toSemiring.{u2} R _inst_1)) (DirectSum.{u1, u3} ι (fun (_i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2)) (Finsupp.{u1, u3} ι M (NegZeroClass.toZero.{u3} M (SubNegZeroMonoid.toNegZeroClass.{u3} M (SubtractionMonoid.toSubNegZeroMonoid.{u3} M (SubtractionCommMonoid.toSubtractionMonoid.{u3} M (AddCommGroup.toDivisionAddCommMonoid.{u3} M _inst_2)))))) (instAddCommMonoidDirectSum.{u1, u3} ι (fun (_i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2)) (Finsupp.addCommMonoid.{u1, u3} ι M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2)) (DirectSum.instModuleDirectSumInstAddCommMonoidDirectSum.{u2, u1, u3} R (Ring.toSemiring.{u2} R _inst_1) ι (fun (_i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2) (fun (i : ι) => _inst_3)) (Finsupp.module.{u1, u3, u2} ι M R (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_3)) (DirectSum.{u1, u3} ι (fun (_i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2)) (fun (_x : DirectSum.{u1, u3} ι (fun (_i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2)) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : DirectSum.{u1, u3} ι (fun (_i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2)) => Finsupp.{u1, u3} ι M (NegZeroClass.toZero.{u3} M (SubNegZeroMonoid.toNegZeroClass.{u3} M (SubtractionMonoid.toSubNegZeroMonoid.{u3} M (SubtractionCommMonoid.toSubtractionMonoid.{u3} M (AddCommGroup.toDivisionAddCommMonoid.{u3} M _inst_2)))))) _x) (SMulHomClass.toFunLike.{max u3 u1, u2, max u3 u1, max u3 u1} (LinearEquiv.{u2, u2, max u3 u1, max u3 u1} R R (Ring.toSemiring.{u2} R _inst_1) (Ring.toSemiring.{u2} R _inst_1) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (Ring.toSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R (Ring.toSemiring.{u2} R _inst_1)) (DirectSum.{u1, u3} ι (fun (_i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2)) (Finsupp.{u1, u3} ι M (NegZeroClass.toZero.{u3} M (SubNegZeroMonoid.toNegZeroClass.{u3} M (SubtractionMonoid.toSubNegZeroMonoid.{u3} M (SubtractionCommMonoid.toSubtractionMonoid.{u3} M (AddCommGroup.toDivisionAddCommMonoid.{u3} M _inst_2)))))) (instAddCommMonoidDirectSum.{u1, u3} ι (fun (_i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2)) (Finsupp.addCommMonoid.{u1, u3} ι M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2)) (DirectSum.instModuleDirectSumInstAddCommMonoidDirectSum.{u2, u1, u3} R (Ring.toSemiring.{u2} R _inst_1) ι (fun (_i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2) (fun (i : ι) => _inst_3)) (Finsupp.module.{u1, u3, u2} ι M R (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_3)) R (DirectSum.{u1, u3} ι (fun (_i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2)) (Finsupp.{u1, u3} ι M (NegZeroClass.toZero.{u3} M (SubNegZeroMonoid.toNegZeroClass.{u3} M (SubtractionMonoid.toSubNegZeroMonoid.{u3} M (SubtractionCommMonoid.toSubtractionMonoid.{u3} M (AddCommGroup.toDivisionAddCommMonoid.{u3} M _inst_2)))))) (SMulZeroClass.toSMul.{u2, max u3 u1} R (DirectSum.{u1, u3} ι (fun (_i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2)) (AddMonoid.toZero.{max u3 u1} (DirectSum.{u1, u3} ι (fun (_i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2)) (AddCommMonoid.toAddMonoid.{max u3 u1} (DirectSum.{u1, u3} ι (fun (_i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2)) (instAddCommMonoidDirectSum.{u1, u3} ι (fun (_i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2)))) (DistribSMul.toSMulZeroClass.{u2, max u3 u1} R (DirectSum.{u1, u3} ι (fun (_i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2)) (AddMonoid.toAddZeroClass.{max u3 u1} (DirectSum.{u1, u3} ι (fun (_i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2)) (AddCommMonoid.toAddMonoid.{max u3 u1} (DirectSum.{u1, u3} ι (fun (_i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2)) (instAddCommMonoidDirectSum.{u1, u3} ι (fun (_i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2)))) (DistribMulAction.toDistribSMul.{u2, max u3 u1} R (DirectSum.{u1, u3} ι (fun (_i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2)) (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u3 u1} (DirectSum.{u1, u3} ι (fun (_i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2)) (instAddCommMonoidDirectSum.{u1, u3} ι (fun (_i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2))) (Module.toDistribMulAction.{u2, max u3 u1} R (DirectSum.{u1, u3} ι (fun (_i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2)) (Ring.toSemiring.{u2} R _inst_1) (instAddCommMonoidDirectSum.{u1, u3} ι (fun (_i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2)) (DirectSum.instModuleDirectSumInstAddCommMonoidDirectSum.{u2, u1, u3} R (Ring.toSemiring.{u2} R _inst_1) ι (fun (_i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2) (fun (i : ι) => _inst_3)))))) (SMulZeroClass.toSMul.{u2, max u3 u1} R (Finsupp.{u1, u3} ι M (NegZeroClass.toZero.{u3} M (SubNegZeroMonoid.toNegZeroClass.{u3} M (SubtractionMonoid.toSubNegZeroMonoid.{u3} M (SubtractionCommMonoid.toSubtractionMonoid.{u3} M (AddCommGroup.toDivisionAddCommMonoid.{u3} M _inst_2)))))) (AddMonoid.toZero.{max u3 u1} (Finsupp.{u1, u3} ι M (NegZeroClass.toZero.{u3} M (SubNegZeroMonoid.toNegZeroClass.{u3} M (SubtractionMonoid.toSubNegZeroMonoid.{u3} M (SubtractionCommMonoid.toSubtractionMonoid.{u3} M (AddCommGroup.toDivisionAddCommMonoid.{u3} M _inst_2)))))) (AddCommMonoid.toAddMonoid.{max u3 u1} (Finsupp.{u1, u3} ι M (NegZeroClass.toZero.{u3} M (SubNegZeroMonoid.toNegZeroClass.{u3} M (SubtractionMonoid.toSubNegZeroMonoid.{u3} M (SubtractionCommMonoid.toSubtractionMonoid.{u3} M (AddCommGroup.toDivisionAddCommMonoid.{u3} M _inst_2)))))) (Finsupp.addCommMonoid.{u1, u3} ι M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2)))) (DistribSMul.toSMulZeroClass.{u2, max u3 u1} R (Finsupp.{u1, u3} ι M (NegZeroClass.toZero.{u3} M (SubNegZeroMonoid.toNegZeroClass.{u3} M (SubtractionMonoid.toSubNegZeroMonoid.{u3} M (SubtractionCommMonoid.toSubtractionMonoid.{u3} M (AddCommGroup.toDivisionAddCommMonoid.{u3} M _inst_2)))))) (AddMonoid.toAddZeroClass.{max u3 u1} (Finsupp.{u1, u3} ι M (NegZeroClass.toZero.{u3} M (SubNegZeroMonoid.toNegZeroClass.{u3} M (SubtractionMonoid.toSubNegZeroMonoid.{u3} M (SubtractionCommMonoid.toSubtractionMonoid.{u3} M (AddCommGroup.toDivisionAddCommMonoid.{u3} M _inst_2)))))) (AddCommMonoid.toAddMonoid.{max u3 u1} (Finsupp.{u1, u3} ι M (NegZeroClass.toZero.{u3} M (SubNegZeroMonoid.toNegZeroClass.{u3} M (SubtractionMonoid.toSubNegZeroMonoid.{u3} M (SubtractionCommMonoid.toSubtractionMonoid.{u3} M (AddCommGroup.toDivisionAddCommMonoid.{u3} M _inst_2)))))) (Finsupp.addCommMonoid.{u1, u3} ι M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2)))) (DistribMulAction.toDistribSMul.{u2, max u3 u1} R (Finsupp.{u1, u3} ι M (NegZeroClass.toZero.{u3} M (SubNegZeroMonoid.toNegZeroClass.{u3} M (SubtractionMonoid.toSubNegZeroMonoid.{u3} M (SubtractionCommMonoid.toSubtractionMonoid.{u3} M (AddCommGroup.toDivisionAddCommMonoid.{u3} M _inst_2)))))) (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u3 u1} (Finsupp.{u1, u3} ι M (NegZeroClass.toZero.{u3} M (SubNegZeroMonoid.toNegZeroClass.{u3} M (SubtractionMonoid.toSubNegZeroMonoid.{u3} M (SubtractionCommMonoid.toSubtractionMonoid.{u3} M (AddCommGroup.toDivisionAddCommMonoid.{u3} M _inst_2)))))) (Finsupp.addCommMonoid.{u1, u3} ι M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2))) (Module.toDistribMulAction.{u2, max u3 u1} R (Finsupp.{u1, u3} ι M (NegZeroClass.toZero.{u3} M (SubNegZeroMonoid.toNegZeroClass.{u3} M (SubtractionMonoid.toSubNegZeroMonoid.{u3} M (SubtractionCommMonoid.toSubtractionMonoid.{u3} M (AddCommGroup.toDivisionAddCommMonoid.{u3} M _inst_2)))))) (Ring.toSemiring.{u2} R _inst_1) (Finsupp.addCommMonoid.{u1, u3} ι M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2)) (Finsupp.module.{u1, u3, u2} ι M R (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_3))))) (DistribMulActionHomClass.toSMulHomClass.{max u3 u1, u2, max u3 u1, max u3 u1} (LinearEquiv.{u2, u2, max u3 u1, max u3 u1} R R (Ring.toSemiring.{u2} R _inst_1) (Ring.toSemiring.{u2} R _inst_1) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (Ring.toSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R (Ring.toSemiring.{u2} R _inst_1)) (DirectSum.{u1, u3} ι (fun (_i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2)) (Finsupp.{u1, u3} ι M (NegZeroClass.toZero.{u3} M (SubNegZeroMonoid.toNegZeroClass.{u3} M (SubtractionMonoid.toSubNegZeroMonoid.{u3} M (SubtractionCommMonoid.toSubtractionMonoid.{u3} M (AddCommGroup.toDivisionAddCommMonoid.{u3} M _inst_2)))))) (instAddCommMonoidDirectSum.{u1, u3} ι (fun (_i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2)) (Finsupp.addCommMonoid.{u1, u3} ι M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2)) (DirectSum.instModuleDirectSumInstAddCommMonoidDirectSum.{u2, u1, u3} R (Ring.toSemiring.{u2} R _inst_1) ι (fun (_i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2) (fun (i : ι) => _inst_3)) (Finsupp.module.{u1, u3, u2} ι M R (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_3)) R (DirectSum.{u1, u3} ι (fun (_i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2)) (Finsupp.{u1, u3} ι M (NegZeroClass.toZero.{u3} M (SubNegZeroMonoid.toNegZeroClass.{u3} M (SubtractionMonoid.toSubNegZeroMonoid.{u3} M (SubtractionCommMonoid.toSubtractionMonoid.{u3} M (AddCommGroup.toDivisionAddCommMonoid.{u3} M _inst_2)))))) (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u3 u1} (DirectSum.{u1, u3} ι (fun (_i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2)) (instAddCommMonoidDirectSum.{u1, u3} ι (fun (_i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2))) (AddCommMonoid.toAddMonoid.{max u3 u1} (Finsupp.{u1, u3} ι M (NegZeroClass.toZero.{u3} M (SubNegZeroMonoid.toNegZeroClass.{u3} M (SubtractionMonoid.toSubNegZeroMonoid.{u3} M (SubtractionCommMonoid.toSubtractionMonoid.{u3} M (AddCommGroup.toDivisionAddCommMonoid.{u3} M _inst_2)))))) (Finsupp.addCommMonoid.{u1, u3} ι M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2))) (Module.toDistribMulAction.{u2, max u3 u1} R (DirectSum.{u1, u3} ι (fun (_i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2)) (Ring.toSemiring.{u2} R _inst_1) (instAddCommMonoidDirectSum.{u1, u3} ι (fun (_i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2)) (DirectSum.instModuleDirectSumInstAddCommMonoidDirectSum.{u2, u1, u3} R (Ring.toSemiring.{u2} R _inst_1) ι (fun (_i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2) (fun (i : ι) => _inst_3))) (Module.toDistribMulAction.{u2, max u3 u1} R (Finsupp.{u1, u3} ι M (NegZeroClass.toZero.{u3} M (SubNegZeroMonoid.toNegZeroClass.{u3} M (SubtractionMonoid.toSubNegZeroMonoid.{u3} M (SubtractionCommMonoid.toSubtractionMonoid.{u3} M (AddCommGroup.toDivisionAddCommMonoid.{u3} M _inst_2)))))) (Ring.toSemiring.{u2} R _inst_1) (Finsupp.addCommMonoid.{u1, u3} ι M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2)) (Finsupp.module.{u1, u3, u2} ι M R (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_3)) (SemilinearMapClass.distribMulActionHomClass.{u2, max u3 u1, max u3 u1, max u3 u1} R (DirectSum.{u1, u3} ι (fun (_i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2)) (Finsupp.{u1, u3} ι M (NegZeroClass.toZero.{u3} M (SubNegZeroMonoid.toNegZeroClass.{u3} M (SubtractionMonoid.toSubNegZeroMonoid.{u3} M (SubtractionCommMonoid.toSubtractionMonoid.{u3} M (AddCommGroup.toDivisionAddCommMonoid.{u3} M _inst_2)))))) (LinearEquiv.{u2, u2, max u3 u1, max u3 u1} R R (Ring.toSemiring.{u2} R _inst_1) (Ring.toSemiring.{u2} R _inst_1) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (Ring.toSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R (Ring.toSemiring.{u2} R _inst_1)) (DirectSum.{u1, u3} ι (fun (_i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2)) (Finsupp.{u1, u3} ι M (NegZeroClass.toZero.{u3} M (SubNegZeroMonoid.toNegZeroClass.{u3} M (SubtractionMonoid.toSubNegZeroMonoid.{u3} M (SubtractionCommMonoid.toSubtractionMonoid.{u3} M (AddCommGroup.toDivisionAddCommMonoid.{u3} M _inst_2)))))) (instAddCommMonoidDirectSum.{u1, u3} ι (fun (_i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2)) (Finsupp.addCommMonoid.{u1, u3} ι M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2)) (DirectSum.instModuleDirectSumInstAddCommMonoidDirectSum.{u2, u1, u3} R (Ring.toSemiring.{u2} R _inst_1) ι (fun (_i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2) (fun (i : ι) => _inst_3)) (Finsupp.module.{u1, u3, u2} ι M R (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_3)) (Ring.toSemiring.{u2} R _inst_1) (instAddCommMonoidDirectSum.{u1, u3} ι (fun (_i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2)) (Finsupp.addCommMonoid.{u1, u3} ι M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2)) (DirectSum.instModuleDirectSumInstAddCommMonoidDirectSum.{u2, u1, u3} R (Ring.toSemiring.{u2} R _inst_1) ι (fun (_i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2) (fun (i : ι) => _inst_3)) (Finsupp.module.{u1, u3, u2} ι M R (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_3) (SemilinearEquivClass.instSemilinearMapClass.{u2, u2, max u3 u1, max u3 u1, max u3 u1} R R (DirectSum.{u1, u3} ι (fun (_i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2)) (Finsupp.{u1, u3} ι M (NegZeroClass.toZero.{u3} M (SubNegZeroMonoid.toNegZeroClass.{u3} M (SubtractionMonoid.toSubNegZeroMonoid.{u3} M (SubtractionCommMonoid.toSubtractionMonoid.{u3} M (AddCommGroup.toDivisionAddCommMonoid.{u3} M _inst_2)))))) (LinearEquiv.{u2, u2, max u3 u1, max u3 u1} R R (Ring.toSemiring.{u2} R _inst_1) (Ring.toSemiring.{u2} R _inst_1) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (Ring.toSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R (Ring.toSemiring.{u2} R _inst_1)) (DirectSum.{u1, u3} ι (fun (_i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2)) (Finsupp.{u1, u3} ι M (NegZeroClass.toZero.{u3} M (SubNegZeroMonoid.toNegZeroClass.{u3} M (SubtractionMonoid.toSubNegZeroMonoid.{u3} M (SubtractionCommMonoid.toSubtractionMonoid.{u3} M (AddCommGroup.toDivisionAddCommMonoid.{u3} M _inst_2)))))) (instAddCommMonoidDirectSum.{u1, u3} ι (fun (_i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2)) (Finsupp.addCommMonoid.{u1, u3} ι M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2)) (DirectSum.instModuleDirectSumInstAddCommMonoidDirectSum.{u2, u1, u3} R (Ring.toSemiring.{u2} R _inst_1) ι (fun (_i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2) (fun (i : ι) => _inst_3)) (Finsupp.module.{u1, u3, u2} ι M R (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_3)) (Ring.toSemiring.{u2} R _inst_1) (Ring.toSemiring.{u2} R _inst_1) (instAddCommMonoidDirectSum.{u1, u3} ι (fun (_i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2)) (Finsupp.addCommMonoid.{u1, u3} ι M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2)) (DirectSum.instModuleDirectSumInstAddCommMonoidDirectSum.{u2, u1, u3} R (Ring.toSemiring.{u2} R _inst_1) ι (fun (_i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2) (fun (i : ι) => _inst_3)) (Finsupp.module.{u1, u3, u2} ι M R (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_3) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (Ring.toSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R (Ring.toSemiring.{u2} R _inst_1)) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u2, u2, max u3 u1, max u3 u1} R R (DirectSum.{u1, u3} ι (fun (_i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2)) (Finsupp.{u1, u3} ι M (NegZeroClass.toZero.{u3} M (SubNegZeroMonoid.toNegZeroClass.{u3} M (SubtractionMonoid.toSubNegZeroMonoid.{u3} M (SubtractionCommMonoid.toSubtractionMonoid.{u3} M (AddCommGroup.toDivisionAddCommMonoid.{u3} M _inst_2)))))) (Ring.toSemiring.{u2} R _inst_1) (Ring.toSemiring.{u2} R _inst_1) (instAddCommMonoidDirectSum.{u1, u3} ι (fun (_i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2)) (Finsupp.addCommMonoid.{u1, u3} ι M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2)) (DirectSum.instModuleDirectSumInstAddCommMonoidDirectSum.{u2, u1, u3} R (Ring.toSemiring.{u2} R _inst_1) ι (fun (_i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2) (fun (i : ι) => _inst_3)) (Finsupp.module.{u1, u3, u2} ι M R (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_3) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (Ring.toSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R (Ring.toSemiring.{u2} R _inst_1))))))) (LinearEquiv.symm.{u2, u2, max u3 u1, max u3 u1} R R (Finsupp.{u1, u3} ι M (NegZeroClass.toZero.{u3} M (SubNegZeroMonoid.toNegZeroClass.{u3} M (SubtractionMonoid.toSubNegZeroMonoid.{u3} M (SubtractionCommMonoid.toSubtractionMonoid.{u3} M (AddCommGroup.toDivisionAddCommMonoid.{u3} M _inst_2)))))) (DirectSum.{u1, u3} ι (fun (i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2)) (Ring.toSemiring.{u2} R _inst_1) (Ring.toSemiring.{u2} R _inst_1) (Finsupp.addCommMonoid.{u1, u3} ι M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2)) (instAddCommMonoidDirectSum.{u1, u3} ι (fun (i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2)) (Finsupp.module.{u1, u3, u2} ι M R (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_3) (DirectSum.instModuleDirectSumInstAddCommMonoidDirectSum.{u2, u1, u3} R (Ring.toSemiring.{u2} R _inst_1) ι (fun (i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2) (fun (i : ι) => _inst_3)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (Ring.toSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R (Ring.toSemiring.{u2} R _inst_1)) (finsuppLEquivDirectSum.{u2, u3, u1} R M _inst_1 _inst_2 _inst_3 ι (fun (a : ι) (b : ι) => _inst_4 a b))) (FunLike.coe.{max (succ u1) (succ u3), succ u3, max (succ u1) (succ u3)} (LinearMap.{u2, u2, u3, max u3 u1} R R (Ring.toSemiring.{u2} R _inst_1) (Ring.toSemiring.{u2} R _inst_1) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))) M (DirectSum.{u1, u3} ι (fun (i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2)) (AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2) (instAddCommMonoidDirectSum.{u1, u3} ι (fun (i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2)) _inst_3 (DirectSum.instModuleDirectSumInstAddCommMonoidDirectSum.{u2, u1, u3} R (Ring.toSemiring.{u2} R _inst_1) ι (fun (i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2) (fun (i : ι) => _inst_3))) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6191 : M) => DirectSum.{u1, u3} ι (fun (i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2)) _x) (LinearMap.instFunLikeLinearMap.{u2, u2, u3, max u1 u3} R R M (DirectSum.{u1, u3} ι (fun (i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2)) (Ring.toSemiring.{u2} R _inst_1) (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2) (instAddCommMonoidDirectSum.{u1, u3} ι (fun (i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2)) _inst_3 (DirectSum.instModuleDirectSumInstAddCommMonoidDirectSum.{u2, u1, u3} R (Ring.toSemiring.{u2} R _inst_1) ι (fun (i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2) (fun (i : ι) => _inst_3)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (DirectSum.lof.{u2, u1, u3} R (Ring.toSemiring.{u2} R _inst_1) ι (fun (a : ι) (b : ι) => _inst_4 a b) (fun (i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2) (fun (i : ι) => _inst_3) i) m)) (Finsupp.single.{u1, u3} ι M (NegZeroClass.toZero.{u3} M (SubNegZeroMonoid.toNegZeroClass.{u3} M (SubtractionMonoid.toSubNegZeroMonoid.{u3} M (SubtractionCommMonoid.toSubtractionMonoid.{u3} M (AddCommGroup.toDivisionAddCommMonoid.{u3} M _inst_2))))) i m)
Case conversion may be inaccurate. Consider using '#align finsupp_lequiv_direct_sum_symm_lof finsuppLEquivDirectSum_symm_lofₓ'. -/
@[simp]
theorem finsuppLEquivDirectSum_symm_lof (i : ι) (m : M) :
mathlib commit https://github.com/leanprover-community/mathlib/commit/dd6388c44e6f6b4547070b887c5905d5cfe6c9f8
@@ -4,7 +4,7 @@ Released under Apache 2.0 license as described in the file LICENSE.
Authors: Johannes Hölzl
! This file was ported from Lean 3 source module algebra.direct_sum.finsupp
-! leanprover-community/mathlib commit aca0874a9ce95510752f4075f80f273172e9b177
+! leanprover-community/mathlib commit aa3a420527e0fbfd0f6615b95b761254a9166e12
! Please do not edit these lines, except to modify the commit id
! if you have ported upstream changes.
-/
@@ -14,6 +14,9 @@ import Mathbin.Data.Finsupp.ToDfinsupp
/-!
# Results on direct sums and finitely supported functions.
+> THIS FILE IS SYNCHRONIZED WITH MATHLIB4.
+> Any changes to this file require a corresponding PR to mathlib4.
+
1. The linear equivalence between finitely supported functions `ι →₀ M` and
the direct sum of copies of `M` indexed by `ι`.
-/
mathlib commit https://github.com/leanprover-community/mathlib/commit/7ec294687917cbc5c73620b4414ae9b5dd9ae1b4
@@ -29,29 +29,47 @@ open LinearMap Submodule
variable {R : Type u} {M : Type v} [Ring R] [AddCommGroup M] [Module R M]
-section finsuppLequivDirectSum
+section finsuppLEquivDirectSum
variable (R M) (ι : Type _) [DecidableEq ι]
+/- warning: finsupp_lequiv_direct_sum -> finsuppLEquivDirectSum is a dubious translation:
+lean 3 declaration is
+ forall (R : Type.{u1}) (M : Type.{u2}) [_inst_1 : Ring.{u1} R] [_inst_2 : AddCommGroup.{u2} M] [_inst_3 : Module.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2)] (ι : Type.{u3}) [_inst_4 : DecidableEq.{succ u3} ι], LinearEquiv.{u1, u1, max u3 u2, max u3 u2} R R (Ring.toSemiring.{u1} R _inst_1) (Ring.toSemiring.{u1} R _inst_1) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R _inst_1))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R _inst_1))) (finsuppLEquivDirectSum._proof_1.{u1} R _inst_1) (finsuppLEquivDirectSum._proof_2.{u1} R _inst_1) (Finsupp.{u3, u2} ι M (AddZeroClass.toHasZero.{u2} M (AddMonoid.toAddZeroClass.{u2} M (SubNegMonoid.toAddMonoid.{u2} M (AddGroup.toSubNegMonoid.{u2} M (AddCommGroup.toAddGroup.{u2} M _inst_2)))))) (DirectSum.{u3, u2} ι (fun (i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u2} M _inst_2)) (Finsupp.addCommMonoid.{u3, u2} ι M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2)) (DirectSum.addCommMonoid.{u3, u2} ι (fun (i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u2} M _inst_2)) (Finsupp.module.{u3, u2, u1} ι M R (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3) (DirectSum.module.{u1, u3, u2} R (Ring.toSemiring.{u1} R _inst_1) ι (fun (i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (fun (i : ι) => _inst_3))
+but is expected to have type
+ forall (R : Type.{u1}) (M : Type.{u2}) [_inst_1 : Ring.{u1} R] [_inst_2 : AddCommGroup.{u2} M] [_inst_3 : Module.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2)] (ι : Type.{u3}) [_inst_4 : DecidableEq.{succ u3} ι], LinearEquiv.{u1, u1, max u2 u3, max u2 u3} R R (Ring.toSemiring.{u1} R _inst_1) (Ring.toSemiring.{u1} R _inst_1) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R _inst_1))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R _inst_1))) (RingHomInvPair.ids.{u1} R (Ring.toSemiring.{u1} R _inst_1)) (RingHomInvPair.ids.{u1} R (Ring.toSemiring.{u1} R _inst_1)) (Finsupp.{u3, u2} ι M (NegZeroClass.toZero.{u2} M (SubNegZeroMonoid.toNegZeroClass.{u2} M (SubtractionMonoid.toSubNegZeroMonoid.{u2} M (SubtractionCommMonoid.toSubtractionMonoid.{u2} M (AddCommGroup.toDivisionAddCommMonoid.{u2} M _inst_2)))))) (DirectSum.{u3, u2} ι (fun (i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u2} ((fun (_i : ι) => M) i) _inst_2)) (Finsupp.addCommMonoid.{u3, u2} ι M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2)) (instAddCommMonoidDirectSum.{u3, u2} ι (fun (i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u2} ((fun (_i : ι) => M) i) _inst_2)) (Finsupp.module.{u3, u2, u1} ι M R (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3) (DirectSum.instModuleDirectSumInstAddCommMonoidDirectSum.{u1, u3, u2} R (Ring.toSemiring.{u1} R _inst_1) ι (fun (i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u2} ((fun (_i : ι) => M) i) _inst_2) (fun (i : ι) => _inst_3))
+Case conversion may be inaccurate. Consider using '#align finsupp_lequiv_direct_sum finsuppLEquivDirectSumₓ'. -/
/-- The finitely supported functions `ι →₀ M` are in linear equivalence with the direct sum of
copies of M indexed by ι. -/
-def finsuppLequivDirectSum : (ι →₀ M) ≃ₗ[R] ⨁ i : ι, M :=
+def finsuppLEquivDirectSum : (ι →₀ M) ≃ₗ[R] ⨁ i : ι, M :=
haveI : ∀ m : M, Decidable (m ≠ 0) := Classical.decPred _
finsuppLequivDfinsupp R
-#align finsupp_lequiv_direct_sum finsuppLequivDirectSum
-
+#align finsupp_lequiv_direct_sum finsuppLEquivDirectSum
+
+/- warning: finsupp_lequiv_direct_sum_single -> finsuppLEquivDirectSum_single is a dubious translation:
+lean 3 declaration is
+ forall (R : Type.{u1}) (M : Type.{u2}) [_inst_1 : Ring.{u1} R] [_inst_2 : AddCommGroup.{u2} M] [_inst_3 : Module.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2)] (ι : Type.{u3}) [_inst_4 : DecidableEq.{succ u3} ι] (i : ι) (m : M), Eq.{succ (max u3 u2)} (DirectSum.{u3, u2} ι (fun (i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u2} M _inst_2)) (coeFn.{succ (max u3 u2), succ (max u3 u2)} (LinearEquiv.{u1, u1, max u3 u2, max u3 u2} R R (Ring.toSemiring.{u1} R _inst_1) (Ring.toSemiring.{u1} R _inst_1) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R _inst_1))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R _inst_1))) (finsuppLEquivDirectSum._proof_1.{u1} R _inst_1) (finsuppLEquivDirectSum._proof_2.{u1} R _inst_1) (Finsupp.{u3, u2} ι M (AddZeroClass.toHasZero.{u2} M (AddMonoid.toAddZeroClass.{u2} M (SubNegMonoid.toAddMonoid.{u2} M (AddGroup.toSubNegMonoid.{u2} M (AddCommGroup.toAddGroup.{u2} M _inst_2)))))) (DirectSum.{u3, u2} ι (fun (i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u2} M _inst_2)) (Finsupp.addCommMonoid.{u3, u2} ι M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2)) (DirectSum.addCommMonoid.{u3, u2} ι (fun (i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u2} M _inst_2)) (Finsupp.module.{u3, u2, u1} ι M R (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3) (DirectSum.module.{u1, u3, u2} R (Ring.toSemiring.{u1} R _inst_1) ι (fun (i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (fun (i : ι) => _inst_3))) (fun (_x : LinearEquiv.{u1, u1, max u3 u2, max u3 u2} R R (Ring.toSemiring.{u1} R _inst_1) (Ring.toSemiring.{u1} R _inst_1) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R _inst_1))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R _inst_1))) (finsuppLEquivDirectSum._proof_1.{u1} R _inst_1) (finsuppLEquivDirectSum._proof_2.{u1} R _inst_1) (Finsupp.{u3, u2} ι M (AddZeroClass.toHasZero.{u2} M (AddMonoid.toAddZeroClass.{u2} M (SubNegMonoid.toAddMonoid.{u2} M (AddGroup.toSubNegMonoid.{u2} M (AddCommGroup.toAddGroup.{u2} M _inst_2)))))) (DirectSum.{u3, u2} ι (fun (i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u2} M _inst_2)) (Finsupp.addCommMonoid.{u3, u2} ι M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2)) (DirectSum.addCommMonoid.{u3, u2} ι (fun (i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u2} M _inst_2)) (Finsupp.module.{u3, u2, u1} ι M R (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3) (DirectSum.module.{u1, u3, u2} R (Ring.toSemiring.{u1} R _inst_1) ι (fun (i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (fun (i : ι) => _inst_3))) => (Finsupp.{u3, u2} ι M (AddZeroClass.toHasZero.{u2} M (AddMonoid.toAddZeroClass.{u2} M (SubNegMonoid.toAddMonoid.{u2} M (AddGroup.toSubNegMonoid.{u2} M (AddCommGroup.toAddGroup.{u2} M _inst_2)))))) -> (DirectSum.{u3, u2} ι (fun (i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u2} M _inst_2))) (LinearEquiv.hasCoeToFun.{u1, u1, max u3 u2, max u3 u2} R R (Finsupp.{u3, u2} ι M (AddZeroClass.toHasZero.{u2} M (AddMonoid.toAddZeroClass.{u2} M (SubNegMonoid.toAddMonoid.{u2} M (AddGroup.toSubNegMonoid.{u2} M (AddCommGroup.toAddGroup.{u2} M _inst_2)))))) (DirectSum.{u3, u2} ι (fun (i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u2} M _inst_2)) (Ring.toSemiring.{u1} R _inst_1) (Ring.toSemiring.{u1} R _inst_1) (Finsupp.addCommMonoid.{u3, u2} ι M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2)) (DirectSum.addCommMonoid.{u3, u2} ι (fun (i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u2} M _inst_2)) (Finsupp.module.{u3, u2, u1} ι M R (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3) (DirectSum.module.{u1, u3, u2} R (Ring.toSemiring.{u1} R _inst_1) ι (fun (i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (fun (i : ι) => _inst_3)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R _inst_1))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R _inst_1))) (finsuppLEquivDirectSum._proof_1.{u1} R _inst_1) (finsuppLEquivDirectSum._proof_2.{u1} R _inst_1)) (finsuppLEquivDirectSum.{u1, u2, u3} R M _inst_1 _inst_2 _inst_3 ι (fun (a : ι) (b : ι) => _inst_4 a b)) (Finsupp.single.{u3, u2} ι M (AddZeroClass.toHasZero.{u2} M (AddMonoid.toAddZeroClass.{u2} M (SubNegMonoid.toAddMonoid.{u2} M (AddGroup.toSubNegMonoid.{u2} M (AddCommGroup.toAddGroup.{u2} M _inst_2))))) i m)) (coeFn.{max (succ u2) (succ (max u3 u2)), max (succ u2) (succ (max u3 u2))} (LinearMap.{u1, u1, u2, max u3 u2} R R (Ring.toSemiring.{u1} R _inst_1) (Ring.toSemiring.{u1} R _inst_1) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R _inst_1))) M (DirectSum.{u3, u2} ι (fun (i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u2} M _inst_2)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (DirectSum.addCommMonoid.{u3, u2} ι (fun (i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u2} M _inst_2)) _inst_3 (DirectSum.module.{u1, u3, u2} R (Ring.toSemiring.{u1} R _inst_1) ι (fun (i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (fun (i : ι) => _inst_3))) (fun (_x : LinearMap.{u1, u1, u2, max u3 u2} R R (Ring.toSemiring.{u1} R _inst_1) (Ring.toSemiring.{u1} R _inst_1) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R _inst_1))) M (DirectSum.{u3, u2} ι (fun (i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u2} M _inst_2)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (DirectSum.addCommMonoid.{u3, u2} ι (fun (i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u2} M _inst_2)) _inst_3 (DirectSum.module.{u1, u3, u2} R (Ring.toSemiring.{u1} R _inst_1) ι (fun (i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (fun (i : ι) => _inst_3))) => M -> (DirectSum.{u3, u2} ι (fun (i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u2} M _inst_2))) (LinearMap.hasCoeToFun.{u1, u1, u2, max u3 u2} R R M (DirectSum.{u3, u2} ι (fun (i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u2} M _inst_2)) (Ring.toSemiring.{u1} R _inst_1) (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (DirectSum.addCommMonoid.{u3, u2} ι (fun (i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u2} M _inst_2)) _inst_3 (DirectSum.module.{u1, u3, u2} R (Ring.toSemiring.{u1} R _inst_1) ι (fun (i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (fun (i : ι) => _inst_3)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R _inst_1)))) (DirectSum.lof.{u1, u3, u2} R (Ring.toSemiring.{u1} R _inst_1) ι (fun (a : ι) (b : ι) => _inst_4 a b) (fun (i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (fun (i : ι) => _inst_3) i) m)
+but is expected to have type
+ forall (R : Type.{u2}) (M : Type.{u3}) [_inst_1 : Ring.{u2} R] [_inst_2 : AddCommGroup.{u3} M] [_inst_3 : Module.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2)] (ι : Type.{u1}) [_inst_4 : DecidableEq.{succ u1} ι] (i : ι) (m : M), Eq.{max (succ u3) (succ u1)} ((fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : Finsupp.{u1, u3} ι M (NegZeroClass.toZero.{u3} M (SubNegZeroMonoid.toNegZeroClass.{u3} M (SubtractionMonoid.toSubNegZeroMonoid.{u3} M (SubtractionCommMonoid.toSubtractionMonoid.{u3} M (AddCommGroup.toDivisionAddCommMonoid.{u3} M _inst_2)))))) => DirectSum.{u1, u3} ι (fun (_i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2)) (Finsupp.single.{u1, u3} ι M (NegZeroClass.toZero.{u3} M (SubNegZeroMonoid.toNegZeroClass.{u3} M (SubtractionMonoid.toSubNegZeroMonoid.{u3} M (SubtractionCommMonoid.toSubtractionMonoid.{u3} M (AddCommGroup.toDivisionAddCommMonoid.{u3} M _inst_2))))) i m)) (FunLike.coe.{max (succ u3) (succ u1), max (succ u3) (succ u1), max (succ u3) (succ u1)} (LinearEquiv.{u2, u2, max u3 u1, max u3 u1} R R (Ring.toSemiring.{u2} R _inst_1) (Ring.toSemiring.{u2} R _inst_1) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (Ring.toSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R (Ring.toSemiring.{u2} R _inst_1)) (Finsupp.{u1, u3} ι M (NegZeroClass.toZero.{u3} M (SubNegZeroMonoid.toNegZeroClass.{u3} M (SubtractionMonoid.toSubNegZeroMonoid.{u3} M (SubtractionCommMonoid.toSubtractionMonoid.{u3} M (AddCommGroup.toDivisionAddCommMonoid.{u3} M _inst_2)))))) (DirectSum.{u1, u3} ι (fun (_i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2)) (Finsupp.addCommMonoid.{u1, u3} ι M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2)) (instAddCommMonoidDirectSum.{u1, u3} ι (fun (_i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2)) (Finsupp.module.{u1, u3, u2} ι M R (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_3) (DirectSum.instModuleDirectSumInstAddCommMonoidDirectSum.{u2, u1, u3} R (Ring.toSemiring.{u2} R _inst_1) ι (fun (_i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2) (fun (i : ι) => _inst_3))) (Finsupp.{u1, u3} ι M (NegZeroClass.toZero.{u3} M (SubNegZeroMonoid.toNegZeroClass.{u3} M (SubtractionMonoid.toSubNegZeroMonoid.{u3} M (SubtractionCommMonoid.toSubtractionMonoid.{u3} M (AddCommGroup.toDivisionAddCommMonoid.{u3} M _inst_2)))))) (fun (_x : Finsupp.{u1, u3} ι M (NegZeroClass.toZero.{u3} M (SubNegZeroMonoid.toNegZeroClass.{u3} M (SubtractionMonoid.toSubNegZeroMonoid.{u3} M (SubtractionCommMonoid.toSubtractionMonoid.{u3} M (AddCommGroup.toDivisionAddCommMonoid.{u3} M _inst_2)))))) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : Finsupp.{u1, u3} ι M (NegZeroClass.toZero.{u3} M (SubNegZeroMonoid.toNegZeroClass.{u3} M (SubtractionMonoid.toSubNegZeroMonoid.{u3} M (SubtractionCommMonoid.toSubtractionMonoid.{u3} M (AddCommGroup.toDivisionAddCommMonoid.{u3} M _inst_2)))))) => DirectSum.{u1, u3} ι (fun (_i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2)) _x) (SMulHomClass.toFunLike.{max u3 u1, u2, max u3 u1, max u3 u1} (LinearEquiv.{u2, u2, max u3 u1, max u3 u1} R R (Ring.toSemiring.{u2} R _inst_1) (Ring.toSemiring.{u2} R _inst_1) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (Ring.toSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R (Ring.toSemiring.{u2} R _inst_1)) (Finsupp.{u1, u3} ι M (NegZeroClass.toZero.{u3} M (SubNegZeroMonoid.toNegZeroClass.{u3} M (SubtractionMonoid.toSubNegZeroMonoid.{u3} M (SubtractionCommMonoid.toSubtractionMonoid.{u3} M (AddCommGroup.toDivisionAddCommMonoid.{u3} M _inst_2)))))) (DirectSum.{u1, u3} ι (fun (_i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2)) (Finsupp.addCommMonoid.{u1, u3} ι M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2)) (instAddCommMonoidDirectSum.{u1, u3} ι (fun (_i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2)) (Finsupp.module.{u1, u3, u2} ι M R (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_3) (DirectSum.instModuleDirectSumInstAddCommMonoidDirectSum.{u2, u1, u3} R (Ring.toSemiring.{u2} R _inst_1) ι (fun (_i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2) (fun (i : ι) => _inst_3))) R (Finsupp.{u1, u3} ι M (NegZeroClass.toZero.{u3} M (SubNegZeroMonoid.toNegZeroClass.{u3} M (SubtractionMonoid.toSubNegZeroMonoid.{u3} M (SubtractionCommMonoid.toSubtractionMonoid.{u3} M (AddCommGroup.toDivisionAddCommMonoid.{u3} M _inst_2)))))) (DirectSum.{u1, u3} ι (fun (_i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2)) (SMulZeroClass.toSMul.{u2, max u3 u1} R (Finsupp.{u1, u3} ι M (NegZeroClass.toZero.{u3} M (SubNegZeroMonoid.toNegZeroClass.{u3} M (SubtractionMonoid.toSubNegZeroMonoid.{u3} M (SubtractionCommMonoid.toSubtractionMonoid.{u3} M (AddCommGroup.toDivisionAddCommMonoid.{u3} M _inst_2)))))) (AddMonoid.toZero.{max u3 u1} (Finsupp.{u1, u3} ι M (NegZeroClass.toZero.{u3} M (SubNegZeroMonoid.toNegZeroClass.{u3} M (SubtractionMonoid.toSubNegZeroMonoid.{u3} M (SubtractionCommMonoid.toSubtractionMonoid.{u3} M (AddCommGroup.toDivisionAddCommMonoid.{u3} M _inst_2)))))) (AddCommMonoid.toAddMonoid.{max u3 u1} (Finsupp.{u1, u3} ι M (NegZeroClass.toZero.{u3} M (SubNegZeroMonoid.toNegZeroClass.{u3} M (SubtractionMonoid.toSubNegZeroMonoid.{u3} M (SubtractionCommMonoid.toSubtractionMonoid.{u3} M (AddCommGroup.toDivisionAddCommMonoid.{u3} M _inst_2)))))) (Finsupp.addCommMonoid.{u1, u3} ι M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2)))) (DistribSMul.toSMulZeroClass.{u2, max u3 u1} R (Finsupp.{u1, u3} ι M (NegZeroClass.toZero.{u3} M (SubNegZeroMonoid.toNegZeroClass.{u3} M (SubtractionMonoid.toSubNegZeroMonoid.{u3} M (SubtractionCommMonoid.toSubtractionMonoid.{u3} M (AddCommGroup.toDivisionAddCommMonoid.{u3} M _inst_2)))))) (AddMonoid.toAddZeroClass.{max u3 u1} (Finsupp.{u1, u3} ι M (NegZeroClass.toZero.{u3} M (SubNegZeroMonoid.toNegZeroClass.{u3} M (SubtractionMonoid.toSubNegZeroMonoid.{u3} M (SubtractionCommMonoid.toSubtractionMonoid.{u3} M (AddCommGroup.toDivisionAddCommMonoid.{u3} M _inst_2)))))) (AddCommMonoid.toAddMonoid.{max u3 u1} (Finsupp.{u1, u3} ι M (NegZeroClass.toZero.{u3} M (SubNegZeroMonoid.toNegZeroClass.{u3} M (SubtractionMonoid.toSubNegZeroMonoid.{u3} M (SubtractionCommMonoid.toSubtractionMonoid.{u3} M (AddCommGroup.toDivisionAddCommMonoid.{u3} M _inst_2)))))) (Finsupp.addCommMonoid.{u1, u3} ι M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2)))) (DistribMulAction.toDistribSMul.{u2, max u3 u1} R (Finsupp.{u1, u3} ι M (NegZeroClass.toZero.{u3} M (SubNegZeroMonoid.toNegZeroClass.{u3} M (SubtractionMonoid.toSubNegZeroMonoid.{u3} M (SubtractionCommMonoid.toSubtractionMonoid.{u3} M (AddCommGroup.toDivisionAddCommMonoid.{u3} M _inst_2)))))) (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u3 u1} (Finsupp.{u1, u3} ι M (NegZeroClass.toZero.{u3} M (SubNegZeroMonoid.toNegZeroClass.{u3} M (SubtractionMonoid.toSubNegZeroMonoid.{u3} M (SubtractionCommMonoid.toSubtractionMonoid.{u3} M (AddCommGroup.toDivisionAddCommMonoid.{u3} M _inst_2)))))) (Finsupp.addCommMonoid.{u1, u3} ι M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2))) (Module.toDistribMulAction.{u2, max u3 u1} R (Finsupp.{u1, u3} ι M (NegZeroClass.toZero.{u3} M (SubNegZeroMonoid.toNegZeroClass.{u3} M (SubtractionMonoid.toSubNegZeroMonoid.{u3} M (SubtractionCommMonoid.toSubtractionMonoid.{u3} M (AddCommGroup.toDivisionAddCommMonoid.{u3} M _inst_2)))))) (Ring.toSemiring.{u2} R _inst_1) (Finsupp.addCommMonoid.{u1, u3} ι M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2)) (Finsupp.module.{u1, u3, u2} ι M R (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_3))))) (SMulZeroClass.toSMul.{u2, max u3 u1} R (DirectSum.{u1, u3} ι (fun (_i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2)) (AddMonoid.toZero.{max u3 u1} (DirectSum.{u1, u3} ι (fun (_i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2)) (AddCommMonoid.toAddMonoid.{max u3 u1} (DirectSum.{u1, u3} ι (fun (_i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2)) (instAddCommMonoidDirectSum.{u1, u3} ι (fun (_i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2)))) (DistribSMul.toSMulZeroClass.{u2, max u3 u1} R (DirectSum.{u1, u3} ι (fun (_i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2)) (AddMonoid.toAddZeroClass.{max u3 u1} (DirectSum.{u1, u3} ι (fun (_i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2)) (AddCommMonoid.toAddMonoid.{max u3 u1} (DirectSum.{u1, u3} ι (fun (_i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2)) (instAddCommMonoidDirectSum.{u1, u3} ι (fun (_i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2)))) (DistribMulAction.toDistribSMul.{u2, max u3 u1} R (DirectSum.{u1, u3} ι (fun (_i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2)) (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u3 u1} (DirectSum.{u1, u3} ι (fun (_i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2)) (instAddCommMonoidDirectSum.{u1, u3} ι (fun (_i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2))) (Module.toDistribMulAction.{u2, max u3 u1} R (DirectSum.{u1, u3} ι (fun (_i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2)) (Ring.toSemiring.{u2} R _inst_1) (instAddCommMonoidDirectSum.{u1, u3} ι (fun (_i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2)) (DirectSum.instModuleDirectSumInstAddCommMonoidDirectSum.{u2, u1, u3} R (Ring.toSemiring.{u2} R _inst_1) ι (fun (_i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2) (fun (i : ι) => _inst_3)))))) (DistribMulActionHomClass.toSMulHomClass.{max u3 u1, u2, max u3 u1, max u3 u1} (LinearEquiv.{u2, u2, max u3 u1, max u3 u1} R R (Ring.toSemiring.{u2} R _inst_1) (Ring.toSemiring.{u2} R _inst_1) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (Ring.toSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R (Ring.toSemiring.{u2} R _inst_1)) (Finsupp.{u1, u3} ι M (NegZeroClass.toZero.{u3} M (SubNegZeroMonoid.toNegZeroClass.{u3} M (SubtractionMonoid.toSubNegZeroMonoid.{u3} M (SubtractionCommMonoid.toSubtractionMonoid.{u3} M (AddCommGroup.toDivisionAddCommMonoid.{u3} M _inst_2)))))) (DirectSum.{u1, u3} ι (fun (_i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2)) (Finsupp.addCommMonoid.{u1, u3} ι M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2)) (instAddCommMonoidDirectSum.{u1, u3} ι (fun (_i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2)) (Finsupp.module.{u1, u3, u2} ι M R (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_3) (DirectSum.instModuleDirectSumInstAddCommMonoidDirectSum.{u2, u1, u3} R (Ring.toSemiring.{u2} R _inst_1) ι (fun (_i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2) (fun (i : ι) => _inst_3))) R (Finsupp.{u1, u3} ι M (NegZeroClass.toZero.{u3} M (SubNegZeroMonoid.toNegZeroClass.{u3} M (SubtractionMonoid.toSubNegZeroMonoid.{u3} M (SubtractionCommMonoid.toSubtractionMonoid.{u3} M (AddCommGroup.toDivisionAddCommMonoid.{u3} M _inst_2)))))) (DirectSum.{u1, u3} ι (fun (_i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2)) (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u3 u1} (Finsupp.{u1, u3} ι M (NegZeroClass.toZero.{u3} M (SubNegZeroMonoid.toNegZeroClass.{u3} M (SubtractionMonoid.toSubNegZeroMonoid.{u3} M (SubtractionCommMonoid.toSubtractionMonoid.{u3} M (AddCommGroup.toDivisionAddCommMonoid.{u3} M _inst_2)))))) (Finsupp.addCommMonoid.{u1, u3} ι M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2))) (AddCommMonoid.toAddMonoid.{max u3 u1} (DirectSum.{u1, u3} ι (fun (_i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2)) (instAddCommMonoidDirectSum.{u1, u3} ι (fun (_i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2))) (Module.toDistribMulAction.{u2, max u3 u1} R (Finsupp.{u1, u3} ι M (NegZeroClass.toZero.{u3} M (SubNegZeroMonoid.toNegZeroClass.{u3} M (SubtractionMonoid.toSubNegZeroMonoid.{u3} M (SubtractionCommMonoid.toSubtractionMonoid.{u3} M (AddCommGroup.toDivisionAddCommMonoid.{u3} M _inst_2)))))) (Ring.toSemiring.{u2} R _inst_1) (Finsupp.addCommMonoid.{u1, u3} ι M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2)) (Finsupp.module.{u1, u3, u2} ι M R (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_3)) (Module.toDistribMulAction.{u2, max u3 u1} R (DirectSum.{u1, u3} ι (fun (_i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2)) (Ring.toSemiring.{u2} R _inst_1) (instAddCommMonoidDirectSum.{u1, u3} ι (fun (_i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2)) (DirectSum.instModuleDirectSumInstAddCommMonoidDirectSum.{u2, u1, u3} R (Ring.toSemiring.{u2} R _inst_1) ι (fun (_i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2) (fun (i : ι) => _inst_3))) (SemilinearMapClass.distribMulActionHomClass.{u2, max u3 u1, max u3 u1, max u3 u1} R (Finsupp.{u1, u3} ι M (NegZeroClass.toZero.{u3} M (SubNegZeroMonoid.toNegZeroClass.{u3} M (SubtractionMonoid.toSubNegZeroMonoid.{u3} M (SubtractionCommMonoid.toSubtractionMonoid.{u3} M (AddCommGroup.toDivisionAddCommMonoid.{u3} M _inst_2)))))) (DirectSum.{u1, u3} ι (fun (_i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2)) (LinearEquiv.{u2, u2, max u3 u1, max u3 u1} R R (Ring.toSemiring.{u2} R _inst_1) (Ring.toSemiring.{u2} R _inst_1) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (Ring.toSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R (Ring.toSemiring.{u2} R _inst_1)) (Finsupp.{u1, u3} ι M (NegZeroClass.toZero.{u3} M (SubNegZeroMonoid.toNegZeroClass.{u3} M (SubtractionMonoid.toSubNegZeroMonoid.{u3} M (SubtractionCommMonoid.toSubtractionMonoid.{u3} M (AddCommGroup.toDivisionAddCommMonoid.{u3} M _inst_2)))))) (DirectSum.{u1, u3} ι (fun (_i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2)) (Finsupp.addCommMonoid.{u1, u3} ι M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2)) (instAddCommMonoidDirectSum.{u1, u3} ι (fun (_i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2)) (Finsupp.module.{u1, u3, u2} ι M R (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_3) (DirectSum.instModuleDirectSumInstAddCommMonoidDirectSum.{u2, u1, u3} R (Ring.toSemiring.{u2} R _inst_1) ι (fun (_i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2) (fun (i : ι) => _inst_3))) (Ring.toSemiring.{u2} R _inst_1) (Finsupp.addCommMonoid.{u1, u3} ι M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2)) (instAddCommMonoidDirectSum.{u1, u3} ι (fun (_i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2)) (Finsupp.module.{u1, u3, u2} ι M R (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_3) (DirectSum.instModuleDirectSumInstAddCommMonoidDirectSum.{u2, u1, u3} R (Ring.toSemiring.{u2} R _inst_1) ι (fun (_i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2) (fun (i : ι) => _inst_3)) (SemilinearEquivClass.instSemilinearMapClass.{u2, u2, max u3 u1, max u3 u1, max u3 u1} R R (Finsupp.{u1, u3} ι M (NegZeroClass.toZero.{u3} M (SubNegZeroMonoid.toNegZeroClass.{u3} M (SubtractionMonoid.toSubNegZeroMonoid.{u3} M (SubtractionCommMonoid.toSubtractionMonoid.{u3} M (AddCommGroup.toDivisionAddCommMonoid.{u3} M _inst_2)))))) (DirectSum.{u1, u3} ι (fun (_i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2)) (LinearEquiv.{u2, u2, max u3 u1, max u3 u1} R R (Ring.toSemiring.{u2} R _inst_1) (Ring.toSemiring.{u2} R _inst_1) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (Ring.toSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R (Ring.toSemiring.{u2} R _inst_1)) (Finsupp.{u1, u3} ι M (NegZeroClass.toZero.{u3} M (SubNegZeroMonoid.toNegZeroClass.{u3} M (SubtractionMonoid.toSubNegZeroMonoid.{u3} M (SubtractionCommMonoid.toSubtractionMonoid.{u3} M (AddCommGroup.toDivisionAddCommMonoid.{u3} M _inst_2)))))) (DirectSum.{u1, u3} ι (fun (_i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2)) (Finsupp.addCommMonoid.{u1, u3} ι M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2)) (instAddCommMonoidDirectSum.{u1, u3} ι (fun (_i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2)) (Finsupp.module.{u1, u3, u2} ι M R (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_3) (DirectSum.instModuleDirectSumInstAddCommMonoidDirectSum.{u2, u1, u3} R (Ring.toSemiring.{u2} R _inst_1) ι (fun (_i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2) (fun (i : ι) => _inst_3))) (Ring.toSemiring.{u2} R _inst_1) (Ring.toSemiring.{u2} R _inst_1) (Finsupp.addCommMonoid.{u1, u3} ι M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2)) (instAddCommMonoidDirectSum.{u1, u3} ι (fun (_i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2)) (Finsupp.module.{u1, u3, u2} ι M R (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_3) (DirectSum.instModuleDirectSumInstAddCommMonoidDirectSum.{u2, u1, u3} R (Ring.toSemiring.{u2} R _inst_1) ι (fun (_i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2) (fun (i : ι) => _inst_3)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (Ring.toSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R (Ring.toSemiring.{u2} R _inst_1)) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u2, u2, max u3 u1, max u3 u1} R R (Finsupp.{u1, u3} ι M (NegZeroClass.toZero.{u3} M (SubNegZeroMonoid.toNegZeroClass.{u3} M (SubtractionMonoid.toSubNegZeroMonoid.{u3} M (SubtractionCommMonoid.toSubtractionMonoid.{u3} M (AddCommGroup.toDivisionAddCommMonoid.{u3} M _inst_2)))))) (DirectSum.{u1, u3} ι (fun (_i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2)) (Ring.toSemiring.{u2} R _inst_1) (Ring.toSemiring.{u2} R _inst_1) (Finsupp.addCommMonoid.{u1, u3} ι M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2)) (instAddCommMonoidDirectSum.{u1, u3} ι (fun (_i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2)) (Finsupp.module.{u1, u3, u2} ι M R (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_3) (DirectSum.instModuleDirectSumInstAddCommMonoidDirectSum.{u2, u1, u3} R (Ring.toSemiring.{u2} R _inst_1) ι (fun (_i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2) (fun (i : ι) => _inst_3)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (Ring.toSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R (Ring.toSemiring.{u2} R _inst_1))))))) (finsuppLEquivDirectSum.{u2, u3, u1} R M _inst_1 _inst_2 _inst_3 ι (fun (a : ι) (b : ι) => _inst_4 a b)) (Finsupp.single.{u1, u3} ι M (NegZeroClass.toZero.{u3} M (SubNegZeroMonoid.toNegZeroClass.{u3} M (SubtractionMonoid.toSubNegZeroMonoid.{u3} M (SubtractionCommMonoid.toSubtractionMonoid.{u3} M (AddCommGroup.toDivisionAddCommMonoid.{u3} M _inst_2))))) i m)) (FunLike.coe.{max (succ u1) (succ u3), succ u3, max (succ u1) (succ u3)} (LinearMap.{u2, u2, u3, max u3 u1} R R (Ring.toSemiring.{u2} R _inst_1) (Ring.toSemiring.{u2} R _inst_1) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))) M (DirectSum.{u1, u3} ι (fun (i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2)) (AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2) (instAddCommMonoidDirectSum.{u1, u3} ι (fun (i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2)) _inst_3 (DirectSum.instModuleDirectSumInstAddCommMonoidDirectSum.{u2, u1, u3} R (Ring.toSemiring.{u2} R _inst_1) ι (fun (i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2) (fun (i : ι) => _inst_3))) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6190 : M) => DirectSum.{u1, u3} ι (fun (i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2)) _x) (LinearMap.instFunLikeLinearMap.{u2, u2, u3, max u1 u3} R R M (DirectSum.{u1, u3} ι (fun (i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2)) (Ring.toSemiring.{u2} R _inst_1) (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2) (instAddCommMonoidDirectSum.{u1, u3} ι (fun (i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2)) _inst_3 (DirectSum.instModuleDirectSumInstAddCommMonoidDirectSum.{u2, u1, u3} R (Ring.toSemiring.{u2} R _inst_1) ι (fun (i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2) (fun (i : ι) => _inst_3)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (DirectSum.lof.{u2, u1, u3} R (Ring.toSemiring.{u2} R _inst_1) ι (fun (a : ι) (b : ι) => _inst_4 a b) (fun (i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2) (fun (i : ι) => _inst_3) i) m)
+Case conversion may be inaccurate. Consider using '#align finsupp_lequiv_direct_sum_single finsuppLEquivDirectSum_singleₓ'. -/
@[simp]
-theorem finsuppLequivDirectSum_single (i : ι) (m : M) :
- finsuppLequivDirectSum R M ι (Finsupp.single i m) = DirectSum.lof R ι _ i m :=
+theorem finsuppLEquivDirectSum_single (i : ι) (m : M) :
+ finsuppLEquivDirectSum R M ι (Finsupp.single i m) = DirectSum.lof R ι _ i m :=
Finsupp.toDfinsupp_single i m
-#align finsupp_lequiv_direct_sum_single finsuppLequivDirectSum_single
-
+#align finsupp_lequiv_direct_sum_single finsuppLEquivDirectSum_single
+
+/- warning: finsupp_lequiv_direct_sum_symm_lof -> finsuppLEquivDirectSum_symm_lof is a dubious translation:
+lean 3 declaration is
+ forall (R : Type.{u1}) (M : Type.{u2}) [_inst_1 : Ring.{u1} R] [_inst_2 : AddCommGroup.{u2} M] [_inst_3 : Module.{u1, u2} R M (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2)] (ι : Type.{u3}) [_inst_4 : DecidableEq.{succ u3} ι] (i : ι) (m : M), Eq.{max (succ u3) (succ u2)} (Finsupp.{u3, u2} ι M (AddZeroClass.toHasZero.{u2} M (AddMonoid.toAddZeroClass.{u2} M (SubNegMonoid.toAddMonoid.{u2} M (AddGroup.toSubNegMonoid.{u2} M (AddCommGroup.toAddGroup.{u2} M _inst_2)))))) (coeFn.{succ (max u3 u2), succ (max u3 u2)} (LinearEquiv.{u1, u1, max u3 u2, max u3 u2} R R (Ring.toSemiring.{u1} R _inst_1) (Ring.toSemiring.{u1} R _inst_1) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R _inst_1))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R _inst_1))) (finsuppLEquivDirectSum._proof_2.{u1} R _inst_1) (finsuppLEquivDirectSum._proof_1.{u1} R _inst_1) (DirectSum.{u3, u2} ι (fun (i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u2} M _inst_2)) (Finsupp.{u3, u2} ι M (AddZeroClass.toHasZero.{u2} M (AddMonoid.toAddZeroClass.{u2} M (SubNegMonoid.toAddMonoid.{u2} M (AddGroup.toSubNegMonoid.{u2} M (AddCommGroup.toAddGroup.{u2} M _inst_2)))))) (DirectSum.addCommMonoid.{u3, u2} ι (fun (i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u2} M _inst_2)) (Finsupp.addCommMonoid.{u3, u2} ι M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2)) (DirectSum.module.{u1, u3, u2} R (Ring.toSemiring.{u1} R _inst_1) ι (fun (i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (fun (i : ι) => _inst_3)) (Finsupp.module.{u3, u2, u1} ι M R (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3)) (fun (_x : LinearEquiv.{u1, u1, max u3 u2, max u3 u2} R R (Ring.toSemiring.{u1} R _inst_1) (Ring.toSemiring.{u1} R _inst_1) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R _inst_1))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R _inst_1))) (finsuppLEquivDirectSum._proof_2.{u1} R _inst_1) (finsuppLEquivDirectSum._proof_1.{u1} R _inst_1) (DirectSum.{u3, u2} ι (fun (i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u2} M _inst_2)) (Finsupp.{u3, u2} ι M (AddZeroClass.toHasZero.{u2} M (AddMonoid.toAddZeroClass.{u2} M (SubNegMonoid.toAddMonoid.{u2} M (AddGroup.toSubNegMonoid.{u2} M (AddCommGroup.toAddGroup.{u2} M _inst_2)))))) (DirectSum.addCommMonoid.{u3, u2} ι (fun (i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u2} M _inst_2)) (Finsupp.addCommMonoid.{u3, u2} ι M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2)) (DirectSum.module.{u1, u3, u2} R (Ring.toSemiring.{u1} R _inst_1) ι (fun (i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (fun (i : ι) => _inst_3)) (Finsupp.module.{u3, u2, u1} ι M R (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3)) => (DirectSum.{u3, u2} ι (fun (i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u2} M _inst_2)) -> (Finsupp.{u3, u2} ι M (AddZeroClass.toHasZero.{u2} M (AddMonoid.toAddZeroClass.{u2} M (SubNegMonoid.toAddMonoid.{u2} M (AddGroup.toSubNegMonoid.{u2} M (AddCommGroup.toAddGroup.{u2} M _inst_2))))))) (LinearEquiv.hasCoeToFun.{u1, u1, max u3 u2, max u3 u2} R R (DirectSum.{u3, u2} ι (fun (i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u2} M _inst_2)) (Finsupp.{u3, u2} ι M (AddZeroClass.toHasZero.{u2} M (AddMonoid.toAddZeroClass.{u2} M (SubNegMonoid.toAddMonoid.{u2} M (AddGroup.toSubNegMonoid.{u2} M (AddCommGroup.toAddGroup.{u2} M _inst_2)))))) (Ring.toSemiring.{u1} R _inst_1) (Ring.toSemiring.{u1} R _inst_1) (DirectSum.addCommMonoid.{u3, u2} ι (fun (i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u2} M _inst_2)) (Finsupp.addCommMonoid.{u3, u2} ι M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2)) (DirectSum.module.{u1, u3, u2} R (Ring.toSemiring.{u1} R _inst_1) ι (fun (i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (fun (i : ι) => _inst_3)) (Finsupp.module.{u3, u2, u1} ι M R (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R _inst_1))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R _inst_1))) (finsuppLEquivDirectSum._proof_2.{u1} R _inst_1) (finsuppLEquivDirectSum._proof_1.{u1} R _inst_1)) (LinearEquiv.symm.{u1, u1, max u3 u2, max u3 u2} R R (Finsupp.{u3, u2} ι M (AddZeroClass.toHasZero.{u2} M (AddMonoid.toAddZeroClass.{u2} M (SubNegMonoid.toAddMonoid.{u2} M (AddGroup.toSubNegMonoid.{u2} M (AddCommGroup.toAddGroup.{u2} M _inst_2)))))) (DirectSum.{u3, u2} ι (fun (i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u2} M _inst_2)) (Ring.toSemiring.{u1} R _inst_1) (Ring.toSemiring.{u1} R _inst_1) (Finsupp.addCommMonoid.{u3, u2} ι M (AddCommGroup.toAddCommMonoid.{u2} M _inst_2)) (DirectSum.addCommMonoid.{u3, u2} ι (fun (i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u2} M _inst_2)) (Finsupp.module.{u3, u2, u1} ι M R (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) _inst_3) (DirectSum.module.{u1, u3, u2} R (Ring.toSemiring.{u1} R _inst_1) ι (fun (i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (fun (i : ι) => _inst_3)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R _inst_1))) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R _inst_1))) (finsuppLEquivDirectSum._proof_1.{u1} R _inst_1) (finsuppLEquivDirectSum._proof_2.{u1} R _inst_1) (finsuppLEquivDirectSum.{u1, u2, u3} R M _inst_1 _inst_2 _inst_3 ι (fun (a : ι) (b : ι) => _inst_4 a b))) (coeFn.{max (succ u2) (succ (max u3 u2)), max (succ u2) (succ (max u3 u2))} (LinearMap.{u1, u1, u2, max u3 u2} R R (Ring.toSemiring.{u1} R _inst_1) (Ring.toSemiring.{u1} R _inst_1) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R _inst_1))) M (DirectSum.{u3, u2} ι (fun (i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u2} M _inst_2)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (DirectSum.addCommMonoid.{u3, u2} ι (fun (i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u2} M _inst_2)) _inst_3 (DirectSum.module.{u1, u3, u2} R (Ring.toSemiring.{u1} R _inst_1) ι (fun (i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (fun (i : ι) => _inst_3))) (fun (_x : LinearMap.{u1, u1, u2, max u3 u2} R R (Ring.toSemiring.{u1} R _inst_1) (Ring.toSemiring.{u1} R _inst_1) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R _inst_1))) M (DirectSum.{u3, u2} ι (fun (i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u2} M _inst_2)) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (DirectSum.addCommMonoid.{u3, u2} ι (fun (i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u2} M _inst_2)) _inst_3 (DirectSum.module.{u1, u3, u2} R (Ring.toSemiring.{u1} R _inst_1) ι (fun (i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (fun (i : ι) => _inst_3))) => M -> (DirectSum.{u3, u2} ι (fun (i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u2} M _inst_2))) (LinearMap.hasCoeToFun.{u1, u1, u2, max u3 u2} R R M (DirectSum.{u3, u2} ι (fun (i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u2} M _inst_2)) (Ring.toSemiring.{u1} R _inst_1) (Ring.toSemiring.{u1} R _inst_1) (AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (DirectSum.addCommMonoid.{u3, u2} ι (fun (i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u2} M _inst_2)) _inst_3 (DirectSum.module.{u1, u3, u2} R (Ring.toSemiring.{u1} R _inst_1) ι (fun (i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (fun (i : ι) => _inst_3)) (RingHom.id.{u1} R (Semiring.toNonAssocSemiring.{u1} R (Ring.toSemiring.{u1} R _inst_1)))) (DirectSum.lof.{u1, u3, u2} R (Ring.toSemiring.{u1} R _inst_1) ι (fun (a : ι) (b : ι) => _inst_4 a b) (fun (i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u2} M _inst_2) (fun (i : ι) => _inst_3) i) m)) (Finsupp.single.{u3, u2} ι M (AddZeroClass.toHasZero.{u2} M (AddMonoid.toAddZeroClass.{u2} M (SubNegMonoid.toAddMonoid.{u2} M (AddGroup.toSubNegMonoid.{u2} M (AddCommGroup.toAddGroup.{u2} M _inst_2))))) i m)
+but is expected to have type
+ forall (R : Type.{u2}) (M : Type.{u3}) [_inst_1 : Ring.{u2} R] [_inst_2 : AddCommGroup.{u3} M] [_inst_3 : Module.{u2, u3} R M (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2)] (ι : Type.{u1}) [_inst_4 : DecidableEq.{succ u1} ι] (i : ι) (m : M), Eq.{max (succ u3) (succ u1)} ((fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : DirectSum.{u1, u3} ι (fun (_i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2)) => Finsupp.{u1, u3} ι M (NegZeroClass.toZero.{u3} M (SubNegZeroMonoid.toNegZeroClass.{u3} M (SubtractionMonoid.toSubNegZeroMonoid.{u3} M (SubtractionCommMonoid.toSubtractionMonoid.{u3} M (AddCommGroup.toDivisionAddCommMonoid.{u3} M _inst_2)))))) (FunLike.coe.{max (succ u1) (succ u3), succ u3, max (succ u1) (succ u3)} (LinearMap.{u2, u2, u3, max u3 u1} R R (Ring.toSemiring.{u2} R _inst_1) (Ring.toSemiring.{u2} R _inst_1) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))) M (DirectSum.{u1, u3} ι (fun (i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2)) (AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2) (instAddCommMonoidDirectSum.{u1, u3} ι (fun (i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2)) _inst_3 (DirectSum.instModuleDirectSumInstAddCommMonoidDirectSum.{u2, u1, u3} R (Ring.toSemiring.{u2} R _inst_1) ι (fun (i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2) (fun (i : ι) => _inst_3))) M (fun (a : M) => (fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6190 : M) => DirectSum.{u1, u3} ι (fun (i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2)) a) (LinearMap.instFunLikeLinearMap.{u2, u2, u3, max u1 u3} R R M (DirectSum.{u1, u3} ι (fun (i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2)) (Ring.toSemiring.{u2} R _inst_1) (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2) (instAddCommMonoidDirectSum.{u1, u3} ι (fun (i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2)) _inst_3 (DirectSum.instModuleDirectSumInstAddCommMonoidDirectSum.{u2, u1, u3} R (Ring.toSemiring.{u2} R _inst_1) ι (fun (i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2) (fun (i : ι) => _inst_3)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (DirectSum.lof.{u2, u1, u3} R (Ring.toSemiring.{u2} R _inst_1) ι (fun (a : ι) (b : ι) => _inst_4 a b) (fun (_i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2) (fun (i : ι) => _inst_3) i) m)) (FunLike.coe.{max (succ u3) (succ u1), max (succ u3) (succ u1), max (succ u3) (succ u1)} (LinearEquiv.{u2, u2, max u3 u1, max u3 u1} R R (Ring.toSemiring.{u2} R _inst_1) (Ring.toSemiring.{u2} R _inst_1) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (Ring.toSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R (Ring.toSemiring.{u2} R _inst_1)) (DirectSum.{u1, u3} ι (fun (_i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2)) (Finsupp.{u1, u3} ι M (NegZeroClass.toZero.{u3} M (SubNegZeroMonoid.toNegZeroClass.{u3} M (SubtractionMonoid.toSubNegZeroMonoid.{u3} M (SubtractionCommMonoid.toSubtractionMonoid.{u3} M (AddCommGroup.toDivisionAddCommMonoid.{u3} M _inst_2)))))) (instAddCommMonoidDirectSum.{u1, u3} ι (fun (_i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2)) (Finsupp.addCommMonoid.{u1, u3} ι M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2)) (DirectSum.instModuleDirectSumInstAddCommMonoidDirectSum.{u2, u1, u3} R (Ring.toSemiring.{u2} R _inst_1) ι (fun (_i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2) (fun (i : ι) => _inst_3)) (Finsupp.module.{u1, u3, u2} ι M R (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_3)) (DirectSum.{u1, u3} ι (fun (_i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2)) (fun (_x : DirectSum.{u1, u3} ι (fun (_i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2)) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : DirectSum.{u1, u3} ι (fun (_i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2)) => Finsupp.{u1, u3} ι M (NegZeroClass.toZero.{u3} M (SubNegZeroMonoid.toNegZeroClass.{u3} M (SubtractionMonoid.toSubNegZeroMonoid.{u3} M (SubtractionCommMonoid.toSubtractionMonoid.{u3} M (AddCommGroup.toDivisionAddCommMonoid.{u3} M _inst_2)))))) _x) (SMulHomClass.toFunLike.{max u3 u1, u2, max u3 u1, max u3 u1} (LinearEquiv.{u2, u2, max u3 u1, max u3 u1} R R (Ring.toSemiring.{u2} R _inst_1) (Ring.toSemiring.{u2} R _inst_1) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (Ring.toSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R (Ring.toSemiring.{u2} R _inst_1)) (DirectSum.{u1, u3} ι (fun (_i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2)) (Finsupp.{u1, u3} ι M (NegZeroClass.toZero.{u3} M (SubNegZeroMonoid.toNegZeroClass.{u3} M (SubtractionMonoid.toSubNegZeroMonoid.{u3} M (SubtractionCommMonoid.toSubtractionMonoid.{u3} M (AddCommGroup.toDivisionAddCommMonoid.{u3} M _inst_2)))))) (instAddCommMonoidDirectSum.{u1, u3} ι (fun (_i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2)) (Finsupp.addCommMonoid.{u1, u3} ι M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2)) (DirectSum.instModuleDirectSumInstAddCommMonoidDirectSum.{u2, u1, u3} R (Ring.toSemiring.{u2} R _inst_1) ι (fun (_i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2) (fun (i : ι) => _inst_3)) (Finsupp.module.{u1, u3, u2} ι M R (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_3)) R (DirectSum.{u1, u3} ι (fun (_i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2)) (Finsupp.{u1, u3} ι M (NegZeroClass.toZero.{u3} M (SubNegZeroMonoid.toNegZeroClass.{u3} M (SubtractionMonoid.toSubNegZeroMonoid.{u3} M (SubtractionCommMonoid.toSubtractionMonoid.{u3} M (AddCommGroup.toDivisionAddCommMonoid.{u3} M _inst_2)))))) (SMulZeroClass.toSMul.{u2, max u3 u1} R (DirectSum.{u1, u3} ι (fun (_i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2)) (AddMonoid.toZero.{max u3 u1} (DirectSum.{u1, u3} ι (fun (_i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2)) (AddCommMonoid.toAddMonoid.{max u3 u1} (DirectSum.{u1, u3} ι (fun (_i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2)) (instAddCommMonoidDirectSum.{u1, u3} ι (fun (_i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2)))) (DistribSMul.toSMulZeroClass.{u2, max u3 u1} R (DirectSum.{u1, u3} ι (fun (_i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2)) (AddMonoid.toAddZeroClass.{max u3 u1} (DirectSum.{u1, u3} ι (fun (_i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2)) (AddCommMonoid.toAddMonoid.{max u3 u1} (DirectSum.{u1, u3} ι (fun (_i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2)) (instAddCommMonoidDirectSum.{u1, u3} ι (fun (_i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2)))) (DistribMulAction.toDistribSMul.{u2, max u3 u1} R (DirectSum.{u1, u3} ι (fun (_i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2)) (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u3 u1} (DirectSum.{u1, u3} ι (fun (_i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2)) (instAddCommMonoidDirectSum.{u1, u3} ι (fun (_i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2))) (Module.toDistribMulAction.{u2, max u3 u1} R (DirectSum.{u1, u3} ι (fun (_i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2)) (Ring.toSemiring.{u2} R _inst_1) (instAddCommMonoidDirectSum.{u1, u3} ι (fun (_i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2)) (DirectSum.instModuleDirectSumInstAddCommMonoidDirectSum.{u2, u1, u3} R (Ring.toSemiring.{u2} R _inst_1) ι (fun (_i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2) (fun (i : ι) => _inst_3)))))) (SMulZeroClass.toSMul.{u2, max u3 u1} R (Finsupp.{u1, u3} ι M (NegZeroClass.toZero.{u3} M (SubNegZeroMonoid.toNegZeroClass.{u3} M (SubtractionMonoid.toSubNegZeroMonoid.{u3} M (SubtractionCommMonoid.toSubtractionMonoid.{u3} M (AddCommGroup.toDivisionAddCommMonoid.{u3} M _inst_2)))))) (AddMonoid.toZero.{max u3 u1} (Finsupp.{u1, u3} ι M (NegZeroClass.toZero.{u3} M (SubNegZeroMonoid.toNegZeroClass.{u3} M (SubtractionMonoid.toSubNegZeroMonoid.{u3} M (SubtractionCommMonoid.toSubtractionMonoid.{u3} M (AddCommGroup.toDivisionAddCommMonoid.{u3} M _inst_2)))))) (AddCommMonoid.toAddMonoid.{max u3 u1} (Finsupp.{u1, u3} ι M (NegZeroClass.toZero.{u3} M (SubNegZeroMonoid.toNegZeroClass.{u3} M (SubtractionMonoid.toSubNegZeroMonoid.{u3} M (SubtractionCommMonoid.toSubtractionMonoid.{u3} M (AddCommGroup.toDivisionAddCommMonoid.{u3} M _inst_2)))))) (Finsupp.addCommMonoid.{u1, u3} ι M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2)))) (DistribSMul.toSMulZeroClass.{u2, max u3 u1} R (Finsupp.{u1, u3} ι M (NegZeroClass.toZero.{u3} M (SubNegZeroMonoid.toNegZeroClass.{u3} M (SubtractionMonoid.toSubNegZeroMonoid.{u3} M (SubtractionCommMonoid.toSubtractionMonoid.{u3} M (AddCommGroup.toDivisionAddCommMonoid.{u3} M _inst_2)))))) (AddMonoid.toAddZeroClass.{max u3 u1} (Finsupp.{u1, u3} ι M (NegZeroClass.toZero.{u3} M (SubNegZeroMonoid.toNegZeroClass.{u3} M (SubtractionMonoid.toSubNegZeroMonoid.{u3} M (SubtractionCommMonoid.toSubtractionMonoid.{u3} M (AddCommGroup.toDivisionAddCommMonoid.{u3} M _inst_2)))))) (AddCommMonoid.toAddMonoid.{max u3 u1} (Finsupp.{u1, u3} ι M (NegZeroClass.toZero.{u3} M (SubNegZeroMonoid.toNegZeroClass.{u3} M (SubtractionMonoid.toSubNegZeroMonoid.{u3} M (SubtractionCommMonoid.toSubtractionMonoid.{u3} M (AddCommGroup.toDivisionAddCommMonoid.{u3} M _inst_2)))))) (Finsupp.addCommMonoid.{u1, u3} ι M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2)))) (DistribMulAction.toDistribSMul.{u2, max u3 u1} R (Finsupp.{u1, u3} ι M (NegZeroClass.toZero.{u3} M (SubNegZeroMonoid.toNegZeroClass.{u3} M (SubtractionMonoid.toSubNegZeroMonoid.{u3} M (SubtractionCommMonoid.toSubtractionMonoid.{u3} M (AddCommGroup.toDivisionAddCommMonoid.{u3} M _inst_2)))))) (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u3 u1} (Finsupp.{u1, u3} ι M (NegZeroClass.toZero.{u3} M (SubNegZeroMonoid.toNegZeroClass.{u3} M (SubtractionMonoid.toSubNegZeroMonoid.{u3} M (SubtractionCommMonoid.toSubtractionMonoid.{u3} M (AddCommGroup.toDivisionAddCommMonoid.{u3} M _inst_2)))))) (Finsupp.addCommMonoid.{u1, u3} ι M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2))) (Module.toDistribMulAction.{u2, max u3 u1} R (Finsupp.{u1, u3} ι M (NegZeroClass.toZero.{u3} M (SubNegZeroMonoid.toNegZeroClass.{u3} M (SubtractionMonoid.toSubNegZeroMonoid.{u3} M (SubtractionCommMonoid.toSubtractionMonoid.{u3} M (AddCommGroup.toDivisionAddCommMonoid.{u3} M _inst_2)))))) (Ring.toSemiring.{u2} R _inst_1) (Finsupp.addCommMonoid.{u1, u3} ι M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2)) (Finsupp.module.{u1, u3, u2} ι M R (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_3))))) (DistribMulActionHomClass.toSMulHomClass.{max u3 u1, u2, max u3 u1, max u3 u1} (LinearEquiv.{u2, u2, max u3 u1, max u3 u1} R R (Ring.toSemiring.{u2} R _inst_1) (Ring.toSemiring.{u2} R _inst_1) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (Ring.toSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R (Ring.toSemiring.{u2} R _inst_1)) (DirectSum.{u1, u3} ι (fun (_i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2)) (Finsupp.{u1, u3} ι M (NegZeroClass.toZero.{u3} M (SubNegZeroMonoid.toNegZeroClass.{u3} M (SubtractionMonoid.toSubNegZeroMonoid.{u3} M (SubtractionCommMonoid.toSubtractionMonoid.{u3} M (AddCommGroup.toDivisionAddCommMonoid.{u3} M _inst_2)))))) (instAddCommMonoidDirectSum.{u1, u3} ι (fun (_i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2)) (Finsupp.addCommMonoid.{u1, u3} ι M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2)) (DirectSum.instModuleDirectSumInstAddCommMonoidDirectSum.{u2, u1, u3} R (Ring.toSemiring.{u2} R _inst_1) ι (fun (_i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2) (fun (i : ι) => _inst_3)) (Finsupp.module.{u1, u3, u2} ι M R (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_3)) R (DirectSum.{u1, u3} ι (fun (_i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2)) (Finsupp.{u1, u3} ι M (NegZeroClass.toZero.{u3} M (SubNegZeroMonoid.toNegZeroClass.{u3} M (SubtractionMonoid.toSubNegZeroMonoid.{u3} M (SubtractionCommMonoid.toSubtractionMonoid.{u3} M (AddCommGroup.toDivisionAddCommMonoid.{u3} M _inst_2)))))) (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (AddCommMonoid.toAddMonoid.{max u3 u1} (DirectSum.{u1, u3} ι (fun (_i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2)) (instAddCommMonoidDirectSum.{u1, u3} ι (fun (_i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2))) (AddCommMonoid.toAddMonoid.{max u3 u1} (Finsupp.{u1, u3} ι M (NegZeroClass.toZero.{u3} M (SubNegZeroMonoid.toNegZeroClass.{u3} M (SubtractionMonoid.toSubNegZeroMonoid.{u3} M (SubtractionCommMonoid.toSubtractionMonoid.{u3} M (AddCommGroup.toDivisionAddCommMonoid.{u3} M _inst_2)))))) (Finsupp.addCommMonoid.{u1, u3} ι M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2))) (Module.toDistribMulAction.{u2, max u3 u1} R (DirectSum.{u1, u3} ι (fun (_i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2)) (Ring.toSemiring.{u2} R _inst_1) (instAddCommMonoidDirectSum.{u1, u3} ι (fun (_i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2)) (DirectSum.instModuleDirectSumInstAddCommMonoidDirectSum.{u2, u1, u3} R (Ring.toSemiring.{u2} R _inst_1) ι (fun (_i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2) (fun (i : ι) => _inst_3))) (Module.toDistribMulAction.{u2, max u3 u1} R (Finsupp.{u1, u3} ι M (NegZeroClass.toZero.{u3} M (SubNegZeroMonoid.toNegZeroClass.{u3} M (SubtractionMonoid.toSubNegZeroMonoid.{u3} M (SubtractionCommMonoid.toSubtractionMonoid.{u3} M (AddCommGroup.toDivisionAddCommMonoid.{u3} M _inst_2)))))) (Ring.toSemiring.{u2} R _inst_1) (Finsupp.addCommMonoid.{u1, u3} ι M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2)) (Finsupp.module.{u1, u3, u2} ι M R (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_3)) (SemilinearMapClass.distribMulActionHomClass.{u2, max u3 u1, max u3 u1, max u3 u1} R (DirectSum.{u1, u3} ι (fun (_i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2)) (Finsupp.{u1, u3} ι M (NegZeroClass.toZero.{u3} M (SubNegZeroMonoid.toNegZeroClass.{u3} M (SubtractionMonoid.toSubNegZeroMonoid.{u3} M (SubtractionCommMonoid.toSubtractionMonoid.{u3} M (AddCommGroup.toDivisionAddCommMonoid.{u3} M _inst_2)))))) (LinearEquiv.{u2, u2, max u3 u1, max u3 u1} R R (Ring.toSemiring.{u2} R _inst_1) (Ring.toSemiring.{u2} R _inst_1) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (Ring.toSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R (Ring.toSemiring.{u2} R _inst_1)) (DirectSum.{u1, u3} ι (fun (_i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2)) (Finsupp.{u1, u3} ι M (NegZeroClass.toZero.{u3} M (SubNegZeroMonoid.toNegZeroClass.{u3} M (SubtractionMonoid.toSubNegZeroMonoid.{u3} M (SubtractionCommMonoid.toSubtractionMonoid.{u3} M (AddCommGroup.toDivisionAddCommMonoid.{u3} M _inst_2)))))) (instAddCommMonoidDirectSum.{u1, u3} ι (fun (_i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2)) (Finsupp.addCommMonoid.{u1, u3} ι M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2)) (DirectSum.instModuleDirectSumInstAddCommMonoidDirectSum.{u2, u1, u3} R (Ring.toSemiring.{u2} R _inst_1) ι (fun (_i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2) (fun (i : ι) => _inst_3)) (Finsupp.module.{u1, u3, u2} ι M R (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_3)) (Ring.toSemiring.{u2} R _inst_1) (instAddCommMonoidDirectSum.{u1, u3} ι (fun (_i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2)) (Finsupp.addCommMonoid.{u1, u3} ι M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2)) (DirectSum.instModuleDirectSumInstAddCommMonoidDirectSum.{u2, u1, u3} R (Ring.toSemiring.{u2} R _inst_1) ι (fun (_i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2) (fun (i : ι) => _inst_3)) (Finsupp.module.{u1, u3, u2} ι M R (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_3) (SemilinearEquivClass.instSemilinearMapClass.{u2, u2, max u3 u1, max u3 u1, max u3 u1} R R (DirectSum.{u1, u3} ι (fun (_i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2)) (Finsupp.{u1, u3} ι M (NegZeroClass.toZero.{u3} M (SubNegZeroMonoid.toNegZeroClass.{u3} M (SubtractionMonoid.toSubNegZeroMonoid.{u3} M (SubtractionCommMonoid.toSubtractionMonoid.{u3} M (AddCommGroup.toDivisionAddCommMonoid.{u3} M _inst_2)))))) (LinearEquiv.{u2, u2, max u3 u1, max u3 u1} R R (Ring.toSemiring.{u2} R _inst_1) (Ring.toSemiring.{u2} R _inst_1) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (Ring.toSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R (Ring.toSemiring.{u2} R _inst_1)) (DirectSum.{u1, u3} ι (fun (_i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2)) (Finsupp.{u1, u3} ι M (NegZeroClass.toZero.{u3} M (SubNegZeroMonoid.toNegZeroClass.{u3} M (SubtractionMonoid.toSubNegZeroMonoid.{u3} M (SubtractionCommMonoid.toSubtractionMonoid.{u3} M (AddCommGroup.toDivisionAddCommMonoid.{u3} M _inst_2)))))) (instAddCommMonoidDirectSum.{u1, u3} ι (fun (_i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2)) (Finsupp.addCommMonoid.{u1, u3} ι M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2)) (DirectSum.instModuleDirectSumInstAddCommMonoidDirectSum.{u2, u1, u3} R (Ring.toSemiring.{u2} R _inst_1) ι (fun (_i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2) (fun (i : ι) => _inst_3)) (Finsupp.module.{u1, u3, u2} ι M R (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_3)) (Ring.toSemiring.{u2} R _inst_1) (Ring.toSemiring.{u2} R _inst_1) (instAddCommMonoidDirectSum.{u1, u3} ι (fun (_i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2)) (Finsupp.addCommMonoid.{u1, u3} ι M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2)) (DirectSum.instModuleDirectSumInstAddCommMonoidDirectSum.{u2, u1, u3} R (Ring.toSemiring.{u2} R _inst_1) ι (fun (_i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2) (fun (i : ι) => _inst_3)) (Finsupp.module.{u1, u3, u2} ι M R (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_3) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (Ring.toSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R (Ring.toSemiring.{u2} R _inst_1)) (LinearEquiv.instSemilinearEquivClassLinearEquiv.{u2, u2, max u3 u1, max u3 u1} R R (DirectSum.{u1, u3} ι (fun (_i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2)) (Finsupp.{u1, u3} ι M (NegZeroClass.toZero.{u3} M (SubNegZeroMonoid.toNegZeroClass.{u3} M (SubtractionMonoid.toSubNegZeroMonoid.{u3} M (SubtractionCommMonoid.toSubtractionMonoid.{u3} M (AddCommGroup.toDivisionAddCommMonoid.{u3} M _inst_2)))))) (Ring.toSemiring.{u2} R _inst_1) (Ring.toSemiring.{u2} R _inst_1) (instAddCommMonoidDirectSum.{u1, u3} ι (fun (_i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2)) (Finsupp.addCommMonoid.{u1, u3} ι M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2)) (DirectSum.instModuleDirectSumInstAddCommMonoidDirectSum.{u2, u1, u3} R (Ring.toSemiring.{u2} R _inst_1) ι (fun (_i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2) (fun (i : ι) => _inst_3)) (Finsupp.module.{u1, u3, u2} ι M R (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_3) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (Ring.toSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R (Ring.toSemiring.{u2} R _inst_1))))))) (LinearEquiv.symm.{u2, u2, max u3 u1, max u3 u1} R R (Finsupp.{u1, u3} ι M (NegZeroClass.toZero.{u3} M (SubNegZeroMonoid.toNegZeroClass.{u3} M (SubtractionMonoid.toSubNegZeroMonoid.{u3} M (SubtractionCommMonoid.toSubtractionMonoid.{u3} M (AddCommGroup.toDivisionAddCommMonoid.{u3} M _inst_2)))))) (DirectSum.{u1, u3} ι (fun (i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2)) (Ring.toSemiring.{u2} R _inst_1) (Ring.toSemiring.{u2} R _inst_1) (Finsupp.addCommMonoid.{u1, u3} ι M (AddCommGroup.toAddCommMonoid.{u3} M _inst_2)) (instAddCommMonoidDirectSum.{u1, u3} ι (fun (i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2)) (Finsupp.module.{u1, u3, u2} ι M R (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} M _inst_2) _inst_3) (DirectSum.instModuleDirectSumInstAddCommMonoidDirectSum.{u2, u1, u3} R (Ring.toSemiring.{u2} R _inst_1) ι (fun (i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2) (fun (i : ι) => _inst_3)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))) (RingHomInvPair.ids.{u2} R (Ring.toSemiring.{u2} R _inst_1)) (RingHomInvPair.ids.{u2} R (Ring.toSemiring.{u2} R _inst_1)) (finsuppLEquivDirectSum.{u2, u3, u1} R M _inst_1 _inst_2 _inst_3 ι (fun (a : ι) (b : ι) => _inst_4 a b))) (FunLike.coe.{max (succ u1) (succ u3), succ u3, max (succ u1) (succ u3)} (LinearMap.{u2, u2, u3, max u3 u1} R R (Ring.toSemiring.{u2} R _inst_1) (Ring.toSemiring.{u2} R _inst_1) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1))) M (DirectSum.{u1, u3} ι (fun (i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2)) (AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2) (instAddCommMonoidDirectSum.{u1, u3} ι (fun (i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2)) _inst_3 (DirectSum.instModuleDirectSumInstAddCommMonoidDirectSum.{u2, u1, u3} R (Ring.toSemiring.{u2} R _inst_1) ι (fun (i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2) (fun (i : ι) => _inst_3))) M (fun (_x : M) => (fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6190 : M) => DirectSum.{u1, u3} ι (fun (i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2)) _x) (LinearMap.instFunLikeLinearMap.{u2, u2, u3, max u1 u3} R R M (DirectSum.{u1, u3} ι (fun (i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2)) (Ring.toSemiring.{u2} R _inst_1) (Ring.toSemiring.{u2} R _inst_1) (AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2) (instAddCommMonoidDirectSum.{u1, u3} ι (fun (i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2)) _inst_3 (DirectSum.instModuleDirectSumInstAddCommMonoidDirectSum.{u2, u1, u3} R (Ring.toSemiring.{u2} R _inst_1) ι (fun (i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2) (fun (i : ι) => _inst_3)) (RingHom.id.{u2} R (Semiring.toNonAssocSemiring.{u2} R (Ring.toSemiring.{u2} R _inst_1)))) (DirectSum.lof.{u2, u1, u3} R (Ring.toSemiring.{u2} R _inst_1) ι (fun (a : ι) (b : ι) => _inst_4 a b) (fun (i : ι) => M) (fun (i : ι) => AddCommGroup.toAddCommMonoid.{u3} ((fun (_i : ι) => M) i) _inst_2) (fun (i : ι) => _inst_3) i) m)) (Finsupp.single.{u1, u3} ι M (NegZeroClass.toZero.{u3} M (SubNegZeroMonoid.toNegZeroClass.{u3} M (SubtractionMonoid.toSubNegZeroMonoid.{u3} M (SubtractionCommMonoid.toSubtractionMonoid.{u3} M (AddCommGroup.toDivisionAddCommMonoid.{u3} M _inst_2))))) i m)
+Case conversion may be inaccurate. Consider using '#align finsupp_lequiv_direct_sum_symm_lof finsuppLEquivDirectSum_symm_lofₓ'. -/
@[simp]
-theorem finsuppLequivDirectSum_symm_lof (i : ι) (m : M) :
- (finsuppLequivDirectSum R M ι).symm (DirectSum.lof R ι _ i m) = Finsupp.single i m :=
+theorem finsuppLEquivDirectSum_symm_lof (i : ι) (m : M) :
+ (finsuppLEquivDirectSum R M ι).symm (DirectSum.lof R ι _ i m) = Finsupp.single i m :=
letI : ∀ m : M, Decidable (m ≠ 0) := Classical.decPred _
Dfinsupp.toFinsupp_single i m
-#align finsupp_lequiv_direct_sum_symm_lof finsuppLequivDirectSum_symm_lof
+#align finsupp_lequiv_direct_sum_symm_lof finsuppLEquivDirectSum_symm_lof
-end finsuppLequivDirectSum
+end finsuppLEquivDirectSum
mathlib commit https://github.com/leanprover-community/mathlib/commit/bd9851ca476957ea4549eb19b40e7b5ade9428cc
Three files are modified, where the hypotheses are relaxed from Ring
or CommRing
to Semiring
or CommSemiring
, and AddCommGroup
to AddCommMonoid
.
Besides this, no definition is changed, and for one proof in RingTheory.Flat.Basic
, I needed to add an instance (letI
…) in the proof.
(Everything pertains to direct sums of modules.)
Co-authored-by: Antoine Chambert-Loir <antoine.chambert-loir@math.univ-paris-diderot.fr> Co-authored-by: Eric Wieser <wieser.eric@gmail.com>
@@ -24,7 +24,7 @@ open DirectSum
open LinearMap Submodule
-variable {R : Type u} {M : Type v} [Ring R] [AddCommGroup M] [Module R M]
+variable {R : Type u} {M : Type v} [Semiring R] [AddCommMonoid M] [Module R M]
section finsuppLequivDirectSum
Type _
and Sort _
(#6499)
We remove all possible occurences of Type _
and Sort _
in favor of Type*
and Sort*
.
This has nice performance benefits.
@@ -28,7 +28,7 @@ variable {R : Type u} {M : Type v} [Ring R] [AddCommGroup M] [Module R M]
section finsuppLequivDirectSum
-variable (R M) (ι : Type _) [DecidableEq ι]
+variable (R M) (ι : Type*) [DecidableEq ι]
/-- The finitely supported functions `ι →₀ M` are in linear equivalence with the direct sum of
copies of M indexed by ι. -/
@@ -2,15 +2,12 @@
Copyright (c) 2019 Johannes Hölzl. All rights reserved.
Released under Apache 2.0 license as described in the file LICENSE.
Authors: Johannes Hölzl
-
-! This file was ported from Lean 3 source module algebra.direct_sum.finsupp
-! leanprover-community/mathlib commit aca0874a9ce95510752f4075f80f273172e9b177
-! Please do not edit these lines, except to modify the commit id
-! if you have ported upstream changes.
-/
import Mathlib.Algebra.DirectSum.Module
import Mathlib.Data.Finsupp.ToDFinsupp
+#align_import algebra.direct_sum.finsupp from "leanprover-community/mathlib"@"aca0874a9ce95510752f4075f80f273172e9b177"
+
/-!
# Results on direct sums and finitely supported functions.
@@ -9,7 +9,7 @@ Authors: Johannes Hölzl
! if you have ported upstream changes.
-/
import Mathlib.Algebra.DirectSum.Module
-import Mathlib.Data.Finsupp.ToDfinsupp
+import Mathlib.Data.Finsupp.ToDFinsupp
/-!
# Results on direct sums and finitely supported functions.
@@ -37,20 +37,20 @@ variable (R M) (ι : Type _) [DecidableEq ι]
copies of M indexed by ι. -/
def finsuppLEquivDirectSum : (ι →₀ M) ≃ₗ[R] ⨁ _ : ι, M :=
haveI : ∀ m : M, Decidable (m ≠ 0) := Classical.decPred _
- finsuppLequivDfinsupp R
+ finsuppLequivDFinsupp R
#align finsupp_lequiv_direct_sum finsuppLEquivDirectSum
@[simp]
theorem finsuppLEquivDirectSum_single (i : ι) (m : M) :
finsuppLEquivDirectSum R M ι (Finsupp.single i m) = DirectSum.lof R ι _ i m :=
- Finsupp.toDfinsupp_single i m
+ Finsupp.toDFinsupp_single i m
#align finsupp_lequiv_direct_sum_single finsuppLEquivDirectSum_single
@[simp]
theorem finsuppLEquivDirectSum_symm_lof (i : ι) (m : M) :
(finsuppLEquivDirectSum R M ι).symm (DirectSum.lof R ι _ i m) = Finsupp.single i m :=
letI : ∀ m : M, Decidable (m ≠ 0) := Classical.decPred _
- Dfinsupp.toFinsupp_single i m
+ DFinsupp.toFinsupp_single i m
#align finsupp_lequiv_direct_sum_symm_lof finsuppLEquivDirectSum_symm_lof
end finsuppLequivDirectSum
@@ -35,7 +35,7 @@ variable (R M) (ι : Type _) [DecidableEq ι]
/-- The finitely supported functions `ι →₀ M` are in linear equivalence with the direct sum of
copies of M indexed by ι. -/
-def finsuppLEquivDirectSum : (ι →₀ M) ≃ₗ[R] ⨁ _i : ι, M :=
+def finsuppLEquivDirectSum : (ι →₀ M) ≃ₗ[R] ⨁ _ : ι, M :=
haveI : ∀ m : M, Decidable (m ≠ 0) := Classical.decPred _
finsuppLequivDfinsupp R
#align finsupp_lequiv_direct_sum finsuppLEquivDirectSum
@@ -33,13 +33,9 @@ section finsuppLequivDirectSum
variable (R M) (ι : Type _) [DecidableEq ι]
--- Porting note: with etaExperiment no changes required, the statement can be:
--- `(ι →₀ M) ≃ₗ[R] ⨁ i : ι, M`
/-- The finitely supported functions `ι →₀ M` are in linear equivalence with the direct sum of
copies of M indexed by ι. -/
-def finsuppLEquivDirectSum :
- @LinearEquiv R R _ _ (RingHom.id _) (RingHom.id _) (RingHomInvPair.ids)
- (RingHomInvPair.ids) (ι →₀ M) (⨁ _i : ι, M) _ _ _ _ :=
+def finsuppLEquivDirectSum : (ι →₀ M) ≃ₗ[R] ⨁ _i : ι, M :=
haveI : ∀ m : M, Decidable (m ≠ 0) := Classical.decPred _
finsuppLequivDfinsupp R
#align finsupp_lequiv_direct_sum finsuppLEquivDirectSum
@@ -58,4 +54,3 @@ theorem finsuppLEquivDirectSum_symm_lof (i : ι) (m : M) :
#align finsupp_lequiv_direct_sum_symm_lof finsuppLEquivDirectSum_symm_lof
end finsuppLequivDirectSum
-
The unported dependencies are