algebra.algebra.unitizationMathlib.Algebra.Algebra.Unitization

This file has been ported!

Changes since the initial port

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.

Changes in mathlib3

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(no changes)

(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)

Changes in mathlib3port

mathlib3
mathlib3port
Diff
@@ -5,7 +5,7 @@ Authors: Jireh Loreaux
 -/
 import Algebra.Algebra.Basic
 import LinearAlgebra.Prod
-import Algebra.Hom.NonUnitalAlg
+import Algebra.Algebra.NonUnitalHom
 
 #align_import algebra.algebra.unitization from "leanprover-community/mathlib"@"932872382355f00112641d305ba0619305dc8642"
 
Diff
@@ -3,9 +3,9 @@ Copyright (c) 2022 Jireh Loreaux. All rights reserved.
 Released under Apache 2.0 license as described in the file LICENSE.
 Authors: Jireh Loreaux
 -/
-import Mathbin.Algebra.Algebra.Basic
-import Mathbin.LinearAlgebra.Prod
-import Mathbin.Algebra.Hom.NonUnitalAlg
+import Algebra.Algebra.Basic
+import LinearAlgebra.Prod
+import Algebra.Hom.NonUnitalAlg
 
 #align_import algebra.algebra.unitization from "leanprover-community/mathlib"@"932872382355f00112641d305ba0619305dc8642"
 
Diff
@@ -644,7 +644,7 @@ instance [CommSemiring R] [StarRing R] [AddCommMonoid A] [StarAddMonoid A] [Modu
 instance [CommSemiring R] [StarRing R] [NonUnitalSemiring A] [StarRing A] [Module R A]
     [IsScalarTower R A A] [SMulCommClass R A A] [StarModule R A] : StarRing (Unitization R A) :=
   { Unitization.starAddMonoid with
-    star_mul := fun x y =>
+    star_hMul := fun x y =>
       ext (by simp [star_mul]) (by simp [star_mul, add_comm (star x.fst • star y.snd)]) }
 
 end Star
Diff
@@ -218,7 +218,7 @@ instance [Monoid S] [AddMonoid R] [AddMonoid A] [DistribMulAction S R] [DistribM
 
 instance [Semiring S] [AddCommMonoid R] [AddCommMonoid A] [Module S R] [Module S A] :
     Module S (Unitization R A) :=
-  Prod.module
+  Prod.instModule
 
 #print Unitization.fst_zero /-
 @[simp]
Diff
@@ -2,16 +2,13 @@
 Copyright (c) 2022 Jireh Loreaux. All rights reserved.
 Released under Apache 2.0 license as described in the file LICENSE.
 Authors: Jireh Loreaux
-
-! This file was ported from Lean 3 source module algebra.algebra.unitization
-! leanprover-community/mathlib commit 932872382355f00112641d305ba0619305dc8642
-! Please do not edit these lines, except to modify the commit id
-! if you have ported upstream changes.
 -/
 import Mathbin.Algebra.Algebra.Basic
 import Mathbin.LinearAlgebra.Prod
 import Mathbin.Algebra.Hom.NonUnitalAlg
 
+#align_import algebra.algebra.unitization from "leanprover-community/mathlib"@"932872382355f00112641d305ba0619305dc8642"
+
 /-!
 # Unitization of a non-unital algebra
 
Diff
@@ -504,8 +504,8 @@ theorem inr_mul_inl [Semiring R] [NonUnitalNonAssocSemiring A] [DistribMulAction
 #align unitization.coe_mul_inl Unitization.inr_mul_inl
 -/
 
-#print Unitization.mulOneClass /-
-instance mulOneClass [Monoid R] [NonUnitalNonAssocSemiring A] [DistribMulAction R A] :
+#print Unitization.instMulOneClass /-
+instance instMulOneClass [Monoid R] [NonUnitalNonAssocSemiring A] [DistribMulAction R A] :
     MulOneClass (Unitization R A) :=
   { Unitization.hasOne,
     Unitization.hasMul with
@@ -517,12 +517,12 @@ instance mulOneClass [Monoid R] [NonUnitalNonAssocSemiring A] [DistribMulAction
       ext (mul_one x.1) <|
         show (x.1 • 0 : A) + (1 : R) • x.2 + x.2 * 0 = x.2 by
           rw [smul_zero, zero_add, one_smul, MulZeroClass.mul_zero, add_zero] }
-#align unitization.mul_one_class Unitization.mulOneClass
+#align unitization.mul_one_class Unitization.instMulOneClass
 -/
 
 instance [Semiring R] [NonUnitalNonAssocSemiring A] [Module R A] :
     NonAssocSemiring (Unitization R A) :=
-  { Unitization.mulOneClass,
+  { Unitization.instMulOneClass,
     Unitization.addCommMonoid with
     zero_mul := fun x =>
       ext (MulZeroClass.zero_mul x.1) <|
@@ -547,7 +547,7 @@ instance [Semiring R] [NonUnitalNonAssocSemiring A] [Module R A] :
 
 instance [CommMonoid R] [NonUnitalSemiring A] [DistribMulAction R A] [IsScalarTower R A A]
     [SMulCommClass R A A] : Monoid (Unitization R A) :=
-  { Unitization.mulOneClass with
+  { Unitization.instMulOneClass with
     mul_assoc := fun x y z =>
       ext (mul_assoc x.1 y.1 z.1) <|
         show
@@ -661,8 +661,8 @@ variable (S R A : Type _) [CommSemiring S] [CommSemiring R] [NonUnitalSemiring A
   [IsScalarTower R A A] [SMulCommClass R A A] [Algebra S R] [DistribMulAction S A]
   [IsScalarTower S R A]
 
-#print Unitization.algebra /-
-instance algebra : Algebra S (Unitization R A) :=
+#print Unitization.instAlgebra /-
+instance instAlgebra : Algebra S (Unitization R A) :=
   {
     (Unitization.inlRingHom R A).comp
       (algebraMap S
@@ -677,7 +677,7 @@ instance algebra : Algebra S (Unitization R A) :=
       simp only [mul_add, smul_add, RingHom.toFun_eq_coe, RingHom.coe_comp, Function.comp_apply,
         inl_ring_hom_apply, Algebra.algebraMap_eq_smul_one]
       rw [inl_mul_inl, inl_mul_coe, smul_one_mul, inl_smul, coe_smul, smul_one_smul] }
-#align unitization.algebra Unitization.algebra
+#align unitization.algebra Unitization.instAlgebra
 -/
 
 #print Unitization.algebraMap_eq_inl_comp /-
Diff
@@ -699,10 +699,10 @@ theorem algebraMap_eq_inl : ⇑(algebraMap R (Unitization R A)) = inl :=
 #align unitization.algebra_map_eq_inl Unitization.algebraMap_eq_inl
 -/
 
-#print Unitization.algebraMap_eq_inl_hom /-
-theorem algebraMap_eq_inl_hom : algebraMap R (Unitization R A) = inlRingHom R A :=
+#print Unitization.algebraMap_eq_inlRingHom /-
+theorem algebraMap_eq_inlRingHom : algebraMap R (Unitization R A) = inlRingHom R A :=
   rfl
-#align unitization.algebra_map_eq_inl_hom Unitization.algebraMap_eq_inl_hom
+#align unitization.algebra_map_eq_inl_hom Unitization.algebraMap_eq_inlRingHom
 -/
 
 #print Unitization.fstHom /-
Diff
@@ -94,10 +94,12 @@ def snd (x : Unitization R A) : A :=
 #align unitization.snd Unitization.snd
 -/
 
+#print Unitization.ext /-
 @[ext]
 theorem ext {x y : Unitization R A} (h1 : x.fst = y.fst) (h2 : x.snd = y.snd) : x = y :=
   Prod.ext h1 h2
 #align unitization.ext Unitization.ext
+-/
 
 section
 
@@ -123,15 +125,19 @@ section
 
 variable (R)
 
+#print Unitization.fst_inr /-
 @[simp]
 theorem fst_inr [Zero R] (a : A) : (a : Unitization R A).fst = 0 :=
   rfl
 #align unitization.fst_coe Unitization.fst_inr
+-/
 
+#print Unitization.snd_inr /-
 @[simp]
 theorem snd_inr [Zero R] (a : A) : (a : Unitization R A).snd = a :=
   rfl
 #align unitization.snd_coe Unitization.snd_inr
+-/
 
 end
 
@@ -141,9 +147,11 @@ theorem inl_injective [Zero A] : Function.Injective (inl : R → Unitization R A
 #align unitization.inl_injective Unitization.inl_injective
 -/
 
+#print Unitization.inr_injective /-
 theorem inr_injective [Zero R] : Function.Injective (coe : A → Unitization R A) :=
   Function.LeftInverse.injective <| snd_inr _
 #align unitization.coe_injective Unitization.inr_injective
+-/
 
 end Basic
 
@@ -215,71 +223,95 @@ instance [Semiring S] [AddCommMonoid R] [AddCommMonoid A] [Module S R] [Module S
     Module S (Unitization R A) :=
   Prod.module
 
+#print Unitization.fst_zero /-
 @[simp]
 theorem fst_zero [Zero R] [Zero A] : (0 : Unitization R A).fst = 0 :=
   rfl
 #align unitization.fst_zero Unitization.fst_zero
+-/
 
+#print Unitization.snd_zero /-
 @[simp]
 theorem snd_zero [Zero R] [Zero A] : (0 : Unitization R A).snd = 0 :=
   rfl
 #align unitization.snd_zero Unitization.snd_zero
+-/
 
+#print Unitization.fst_add /-
 @[simp]
 theorem fst_add [Add R] [Add A] (x₁ x₂ : Unitization R A) : (x₁ + x₂).fst = x₁.fst + x₂.fst :=
   rfl
 #align unitization.fst_add Unitization.fst_add
+-/
 
+#print Unitization.snd_add /-
 @[simp]
 theorem snd_add [Add R] [Add A] (x₁ x₂ : Unitization R A) : (x₁ + x₂).snd = x₁.snd + x₂.snd :=
   rfl
 #align unitization.snd_add Unitization.snd_add
+-/
 
+#print Unitization.fst_neg /-
 @[simp]
 theorem fst_neg [Neg R] [Neg A] (x : Unitization R A) : (-x).fst = -x.fst :=
   rfl
 #align unitization.fst_neg Unitization.fst_neg
+-/
 
+#print Unitization.snd_neg /-
 @[simp]
 theorem snd_neg [Neg R] [Neg A] (x : Unitization R A) : (-x).snd = -x.snd :=
   rfl
 #align unitization.snd_neg Unitization.snd_neg
+-/
 
+#print Unitization.fst_smul /-
 @[simp]
 theorem fst_smul [SMul S R] [SMul S A] (s : S) (x : Unitization R A) : (s • x).fst = s • x.fst :=
   rfl
 #align unitization.fst_smul Unitization.fst_smul
+-/
 
+#print Unitization.snd_smul /-
 @[simp]
 theorem snd_smul [SMul S R] [SMul S A] (s : S) (x : Unitization R A) : (s • x).snd = s • x.snd :=
   rfl
 #align unitization.snd_smul Unitization.snd_smul
+-/
 
 section
 
 variable (A)
 
+#print Unitization.inl_zero /-
 @[simp]
 theorem inl_zero [Zero R] [Zero A] : (inl 0 : Unitization R A) = 0 :=
   rfl
 #align unitization.inl_zero Unitization.inl_zero
+-/
 
+#print Unitization.inl_add /-
 @[simp]
 theorem inl_add [Add R] [AddZeroClass A] (r₁ r₂ : R) :
     (inl (r₁ + r₂) : Unitization R A) = inl r₁ + inl r₂ :=
   ext rfl (add_zero 0).symm
 #align unitization.inl_add Unitization.inl_add
+-/
 
+#print Unitization.inl_neg /-
 @[simp]
 theorem inl_neg [Neg R] [AddGroup A] (r : R) : (inl (-r) : Unitization R A) = -inl r :=
   ext rfl neg_zero.symm
 #align unitization.inl_neg Unitization.inl_neg
+-/
 
+#print Unitization.inl_smul /-
 @[simp]
 theorem inl_smul [Monoid S] [AddMonoid A] [SMul S R] [DistribMulAction S A] (s : S) (r : R) :
     (inl (s • r) : Unitization R A) = s • inl r :=
   ext rfl (smul_zero s).symm
 #align unitization.inl_smul Unitization.inl_smul
+-/
 
 end
 
@@ -287,34 +319,45 @@ section
 
 variable (R)
 
+#print Unitization.inr_zero /-
 @[simp]
 theorem inr_zero [Zero R] [Zero A] : ↑(0 : A) = (0 : Unitization R A) :=
   rfl
 #align unitization.coe_zero Unitization.inr_zero
+-/
 
+#print Unitization.inr_add /-
 @[simp]
 theorem inr_add [AddZeroClass R] [Add A] (m₁ m₂ : A) : (↑(m₁ + m₂) : Unitization R A) = m₁ + m₂ :=
   ext (add_zero 0).symm rfl
 #align unitization.coe_add Unitization.inr_add
+-/
 
+#print Unitization.inr_neg /-
 @[simp]
 theorem inr_neg [AddGroup R] [Neg A] (m : A) : (↑(-m) : Unitization R A) = -m :=
   ext neg_zero.symm rfl
 #align unitization.coe_neg Unitization.inr_neg
+-/
 
+#print Unitization.inr_smul /-
 @[simp]
 theorem inr_smul [Zero R] [Zero S] [SMulWithZero S R] [SMul S A] (r : S) (m : A) :
     (↑(r • m) : Unitization R A) = r • m :=
   ext (smul_zero _).symm rfl
 #align unitization.coe_smul Unitization.inr_smul
+-/
 
 end
 
+#print Unitization.inl_fst_add_inr_snd_eq /-
 theorem inl_fst_add_inr_snd_eq [AddZeroClass R] [AddZeroClass A] (x : Unitization R A) :
     inl x.fst + ↑x.snd = x :=
   ext (add_zero x.1) (zero_add x.2)
 #align unitization.inl_fst_add_coe_snd_eq Unitization.inl_fst_add_inr_snd_eq
+-/
 
+#print Unitization.ind /-
 /-- To show a property hold on all `unitization R A` it suffices to show it holds
 on terms of the form `inl r + a`.
 
@@ -323,7 +366,9 @@ theorem ind {R A} [AddZeroClass R] [AddZeroClass A] {P : Unitization R A → Pro
     (h : ∀ (r : R) (a : A), P (inl r + a)) (x) : P x :=
   inl_fst_add_inr_snd_eq x ▸ h x.1 x.2
 #align unitization.ind Unitization.ind
+-/
 
+#print Unitization.linearMap_ext /-
 /-- This cannot be marked `@[ext]` as it ends up being used instead of `linear_map.prod_ext` when
 working with `R × A`. -/
 theorem linearMap_ext {N} [Semiring S] [AddCommMonoid R] [AddCommMonoid A] [AddCommMonoid N]
@@ -331,6 +376,7 @@ theorem linearMap_ext {N} [Semiring S] [AddCommMonoid R] [AddCommMonoid A] [AddC
     (hl : ∀ r, f (inl r) = g (inl r)) (hr : ∀ a : A, f a = g a) : f = g :=
   LinearMap.prod_ext (LinearMap.ext hl) (LinearMap.ext hr)
 #align unitization.linear_map_ext Unitization.linearMap_ext
+-/
 
 variable (R A)
 
@@ -365,37 +411,48 @@ instance [One R] [Zero A] : One (Unitization R A) :=
 instance [Mul R] [Add A] [Mul A] [SMul R A] : Mul (Unitization R A) :=
   ⟨fun x y => (x.1 * y.1, x.1 • y.2 + y.1 • x.2 + x.2 * y.2)⟩
 
+#print Unitization.fst_one /-
 @[simp]
 theorem fst_one [One R] [Zero A] : (1 : Unitization R A).fst = 1 :=
   rfl
 #align unitization.fst_one Unitization.fst_one
+-/
 
+#print Unitization.snd_one /-
 @[simp]
 theorem snd_one [One R] [Zero A] : (1 : Unitization R A).snd = 0 :=
   rfl
 #align unitization.snd_one Unitization.snd_one
+-/
 
+#print Unitization.fst_mul /-
 @[simp]
 theorem fst_mul [Mul R] [Add A] [Mul A] [SMul R A] (x₁ x₂ : Unitization R A) :
     (x₁ * x₂).fst = x₁.fst * x₂.fst :=
   rfl
 #align unitization.fst_mul Unitization.fst_mul
+-/
 
+#print Unitization.snd_mul /-
 @[simp]
 theorem snd_mul [Mul R] [Add A] [Mul A] [SMul R A] (x₁ x₂ : Unitization R A) :
     (x₁ * x₂).snd = x₁.fst • x₂.snd + x₂.fst • x₁.snd + x₁.snd * x₂.snd :=
   rfl
 #align unitization.snd_mul Unitization.snd_mul
+-/
 
 section
 
 variable (A)
 
+#print Unitization.inl_one /-
 @[simp]
 theorem inl_one [One R] [Zero A] : (inl 1 : Unitization R A) = 1 :=
   rfl
 #align unitization.inl_one Unitization.inl_one
+-/
 
+#print Unitization.inl_mul /-
 @[simp]
 theorem inl_mul [Monoid R] [NonUnitalNonAssocSemiring A] [DistribMulAction R A] (r₁ r₂ : R) :
     (inl (r₁ * r₂) : Unitization R A) = inl r₁ * inl r₂ :=
@@ -403,11 +460,14 @@ theorem inl_mul [Monoid R] [NonUnitalNonAssocSemiring A] [DistribMulAction R A]
     show (0 : A) = r₁ • (0 : A) + r₂ • 0 + 0 * 0 by
       simp only [smul_zero, add_zero, MulZeroClass.mul_zero]
 #align unitization.inl_mul Unitization.inl_mul
+-/
 
+#print Unitization.inl_mul_inl /-
 theorem inl_mul_inl [Monoid R] [NonUnitalNonAssocSemiring A] [DistribMulAction R A] (r₁ r₂ : R) :
     (inl r₁ * inl r₂ : Unitization R A) = inl (r₁ * r₂) :=
   (inl_mul A r₁ r₂).symm
 #align unitization.inl_mul_inl Unitization.inl_mul_inl
+-/
 
 end
 
@@ -415,28 +475,34 @@ section
 
 variable (R)
 
+#print Unitization.inr_mul /-
 @[simp]
 theorem inr_mul [Semiring R] [AddCommMonoid A] [Mul A] [SMulWithZero R A] (a₁ a₂ : A) :
     (↑(a₁ * a₂) : Unitization R A) = a₁ * a₂ :=
   ext (MulZeroClass.mul_zero _).symm <|
     show a₁ * a₂ = (0 : R) • a₂ + (0 : R) • a₁ + a₁ * a₂ by simp only [zero_smul, zero_add]
 #align unitization.coe_mul Unitization.inr_mul
+-/
 
 end
 
+#print Unitization.inl_mul_inr /-
 theorem inl_mul_inr [Semiring R] [NonUnitalNonAssocSemiring A] [DistribMulAction R A] (r : R)
     (a : A) : (inl r * a : Unitization R A) = ↑(r • a) :=
   ext (MulZeroClass.mul_zero r) <|
     show r • a + (0 : R) • 0 + 0 * a = r • a by
       rw [smul_zero, add_zero, MulZeroClass.zero_mul, add_zero]
 #align unitization.inl_mul_coe Unitization.inl_mul_inr
+-/
 
+#print Unitization.inr_mul_inl /-
 theorem inr_mul_inl [Semiring R] [NonUnitalNonAssocSemiring A] [DistribMulAction R A] (r : R)
     (a : A) : (a * inl r : Unitization R A) = ↑(r • a) :=
   ext (MulZeroClass.zero_mul r) <|
     show (0 : R) • 0 + r • a + a * 0 = r • a by
       rw [smul_zero, zero_add, MulZeroClass.mul_zero, add_zero]
 #align unitization.coe_mul_inl Unitization.inr_mul_inl
+-/
 
 #print Unitization.mulOneClass /-
 instance mulOneClass [Monoid R] [NonUnitalNonAssocSemiring A] [DistribMulAction R A] :
@@ -539,27 +605,35 @@ variable {R A : Type _}
 instance [Star R] [Star A] : Star (Unitization R A) :=
   ⟨fun ra => (star ra.fst, star ra.snd)⟩
 
+#print Unitization.fst_star /-
 @[simp]
 theorem fst_star [Star R] [Star A] (x : Unitization R A) : (star x).fst = star x.fst :=
   rfl
 #align unitization.fst_star Unitization.fst_star
+-/
 
+#print Unitization.snd_star /-
 @[simp]
 theorem snd_star [Star R] [Star A] (x : Unitization R A) : (star x).snd = star x.snd :=
   rfl
 #align unitization.snd_star Unitization.snd_star
+-/
 
+#print Unitization.inl_star /-
 @[simp]
 theorem inl_star [Star R] [AddMonoid A] [StarAddMonoid A] (r : R) :
     inl (star r) = star (inl r : Unitization R A) :=
   ext rfl (by simp only [snd_star, star_zero, snd_inl])
 #align unitization.inl_star Unitization.inl_star
+-/
 
+#print Unitization.inr_star /-
 @[simp]
 theorem inr_star [AddMonoid R] [StarAddMonoid R] [Star A] (a : A) :
     ↑(star a) = star (a : Unitization R A) :=
   ext (by simp only [fst_star, star_zero, fst_coe]) rfl
 #align unitization.coe_star Unitization.inr_star
+-/
 
 instance [AddMonoid R] [AddMonoid A] [StarAddMonoid R] [StarAddMonoid A] :
     StarAddMonoid (Unitization R A)
@@ -587,6 +661,7 @@ variable (S R A : Type _) [CommSemiring S] [CommSemiring R] [NonUnitalSemiring A
   [IsScalarTower R A A] [SMulCommClass R A A] [Algebra S R] [DistribMulAction S A]
   [IsScalarTower S R A]
 
+#print Unitization.algebra /-
 instance algebra : Algebra S (Unitization R A) :=
   {
     (Unitization.inlRingHom R A).comp
@@ -603,24 +678,34 @@ instance algebra : Algebra S (Unitization R A) :=
         inl_ring_hom_apply, Algebra.algebraMap_eq_smul_one]
       rw [inl_mul_inl, inl_mul_coe, smul_one_mul, inl_smul, coe_smul, smul_one_smul] }
 #align unitization.algebra Unitization.algebra
+-/
 
+#print Unitization.algebraMap_eq_inl_comp /-
 theorem algebraMap_eq_inl_comp : ⇑(algebraMap S (Unitization R A)) = inl ∘ algebraMap S R :=
   rfl
 #align unitization.algebra_map_eq_inl_comp Unitization.algebraMap_eq_inl_comp
+-/
 
+#print Unitization.algebraMap_eq_inlRingHom_comp /-
 theorem algebraMap_eq_inlRingHom_comp :
     algebraMap S (Unitization R A) = (inlRingHom R A).comp (algebraMap S R) :=
   rfl
 #align unitization.algebra_map_eq_inl_ring_hom_comp Unitization.algebraMap_eq_inlRingHom_comp
+-/
 
+#print Unitization.algebraMap_eq_inl /-
 theorem algebraMap_eq_inl : ⇑(algebraMap R (Unitization R A)) = inl :=
   rfl
 #align unitization.algebra_map_eq_inl Unitization.algebraMap_eq_inl
+-/
 
+#print Unitization.algebraMap_eq_inl_hom /-
 theorem algebraMap_eq_inl_hom : algebraMap R (Unitization R A) = inlRingHom R A :=
   rfl
 #align unitization.algebra_map_eq_inl_hom Unitization.algebraMap_eq_inl_hom
+-/
 
+#print Unitization.fstHom /-
 /-- The canonical `R`-algebra projection `unitization R A → R`. -/
 @[simps]
 def fstHom : Unitization R A →ₐ[R] R where
@@ -631,6 +716,7 @@ def fstHom : Unitization R A →ₐ[R] R where
   map_add' := fst_add
   commutes' := fst_inl A
 #align unitization.fst_hom Unitization.fstHom
+-/
 
 end Algebra
 
@@ -658,6 +744,7 @@ variable {S R A : Type _} [CommSemiring S] [CommSemiring R] [NonUnitalSemiring A
   [SMulCommClass R A A] [IsScalarTower R A A] {B : Type _} [Semiring B] [Algebra S B] [Algebra S R]
   [DistribMulAction S A] [IsScalarTower S R A] {C : Type _} [Ring C] [Algebra R C]
 
+#print Unitization.algHom_ext /-
 theorem algHom_ext {φ ψ : Unitization R A →ₐ[S] B} (h : ∀ a : A, φ a = ψ a)
     (h' : ∀ r, φ (algebraMap R (Unitization R A) r) = ψ (algebraMap R (Unitization R A) r)) :
     φ = ψ := by
@@ -665,7 +752,9 @@ theorem algHom_ext {φ ψ : Unitization R A →ₐ[S] B} (h : ∀ a : A, φ a =
   induction x using Unitization.ind
   simp only [map_add, ← algebra_map_eq_inl, h, h']
 #align unitization.alg_hom_ext Unitization.algHom_ext
+-/
 
+#print Unitization.algHom_ext' /-
 /-- See note [partially-applied ext lemmas] -/
 @[ext]
 theorem algHom_ext' {φ ψ : Unitization R A →ₐ[R] C}
@@ -675,7 +764,9 @@ theorem algHom_ext' {φ ψ : Unitization R A →ₐ[R] C}
     φ = ψ :=
   algHom_ext (NonUnitalAlgHom.congr_fun h) (by simp [AlgHom.commutes])
 #align unitization.alg_hom_ext' Unitization.algHom_ext'
+-/
 
+#print Unitization.lift /-
 /-- Non-unital algebra homomorphisms from `A` into a unital `R`-algebra `C` lift uniquely to
 `unitization R A →ₐ[R] C`. This is the universal property of the unitization. -/
 @[simps apply_apply]
@@ -706,10 +797,13 @@ def lift : (A →ₙₐ[R] C) ≃ (Unitization R A →ₐ[R] C)
   left_inv φ := by ext; simp
   right_inv φ := Unitization.algHom_ext' (by ext; simp)
 #align unitization.lift Unitization.lift
+-/
 
+#print Unitization.lift_symm_apply /-
 theorem lift_symm_apply (φ : Unitization R A →ₐ[R] C) (a : A) : Unitization.lift.symm φ a = φ a :=
   rfl
 #align unitization.lift_symm_apply Unitization.lift_symm_apply
+-/
 
 end AlgHom
 
Diff
@@ -94,12 +94,6 @@ def snd (x : Unitization R A) : A :=
 #align unitization.snd Unitization.snd
 -/
 
-/- warning: unitization.ext -> Unitization.ext is a dubious translation:
-lean 3 declaration is
-  forall {R : Type.{u1}} {A : Type.{u2}} {x : Unitization.{u1, u2} R A} {y : Unitization.{u1, u2} R A}, (Eq.{succ u1} R (Unitization.fst.{u1, u2} R A x) (Unitization.fst.{u1, u2} R A y)) -> (Eq.{succ u2} A (Unitization.snd.{u1, u2} R A x) (Unitization.snd.{u1, u2} R A y)) -> (Eq.{max (succ u1) (succ u2)} (Unitization.{u1, u2} R A) x y)
-but is expected to have type
-  forall {R : Type.{u2}} {A : Type.{u1}} {x : Unitization.{u2, u1} R A} {y : Unitization.{u2, u1} R A}, (Eq.{succ u2} R (Unitization.fst.{u2, u1} R A x) (Unitization.fst.{u2, u1} R A y)) -> (Eq.{succ u1} A (Unitization.snd.{u2, u1} R A x) (Unitization.snd.{u2, u1} R A y)) -> (Eq.{max (succ u2) (succ u1)} (Unitization.{u2, u1} R A) x y)
-Case conversion may be inaccurate. Consider using '#align unitization.ext Unitization.extₓ'. -/
 @[ext]
 theorem ext {x y : Unitization R A} (h1 : x.fst = y.fst) (h2 : x.snd = y.snd) : x = y :=
   Prod.ext h1 h2
@@ -129,23 +123,11 @@ section
 
 variable (R)
 
-/- warning: unitization.fst_coe -> Unitization.fst_inr is a dubious translation:
-lean 3 declaration is
-  forall (R : Type.{u1}) {A : Type.{u2}} [_inst_1 : Zero.{u1} R] (a : A), Eq.{succ u1} R (Unitization.fst.{u1, u2} R A ((fun (a : Type.{u2}) (b : Sort.{max (succ u1) (succ u2)}) [self : HasLiftT.{succ u2, max (succ u1) (succ u2)} a b] => self.0) A (Unitization.{u1, u2} R A) (HasLiftT.mk.{succ u2, max (succ u1) (succ u2)} A (Unitization.{u1, u2} R A) (CoeTCₓ.coe.{succ u2, max (succ u1) (succ u2)} A (Unitization.{u1, u2} R A) (Unitization.hasCoeT.{u1, u2} R A _inst_1))) a)) (OfNat.ofNat.{u1} R 0 (OfNat.mk.{u1} R 0 (Zero.zero.{u1} R _inst_1)))
-but is expected to have type
-  forall (R : Type.{u2}) {A : Type.{u1}} [_inst_1 : Zero.{u2} R] (a : A), Eq.{succ u2} R (Unitization.fst.{u2, u1} R A (Unitization.inr.{u2, u1} R A _inst_1 a)) (OfNat.ofNat.{u2} R 0 (Zero.toOfNat0.{u2} R _inst_1))
-Case conversion may be inaccurate. Consider using '#align unitization.fst_coe Unitization.fst_inrₓ'. -/
 @[simp]
 theorem fst_inr [Zero R] (a : A) : (a : Unitization R A).fst = 0 :=
   rfl
 #align unitization.fst_coe Unitization.fst_inr
 
-/- warning: unitization.snd_coe -> Unitization.snd_inr is a dubious translation:
-lean 3 declaration is
-  forall (R : Type.{u1}) {A : Type.{u2}} [_inst_1 : Zero.{u1} R] (a : A), Eq.{succ u2} A (Unitization.snd.{u1, u2} R A ((fun (a : Type.{u2}) (b : Sort.{max (succ u1) (succ u2)}) [self : HasLiftT.{succ u2, max (succ u1) (succ u2)} a b] => self.0) A (Unitization.{u1, u2} R A) (HasLiftT.mk.{succ u2, max (succ u1) (succ u2)} A (Unitization.{u1, u2} R A) (CoeTCₓ.coe.{succ u2, max (succ u1) (succ u2)} A (Unitization.{u1, u2} R A) (Unitization.hasCoeT.{u1, u2} R A _inst_1))) a)) a
-but is expected to have type
-  forall (R : Type.{u2}) {A : Type.{u1}} [_inst_1 : Zero.{u2} R] (a : A), Eq.{succ u1} A (Unitization.snd.{u2, u1} R A (Unitization.inr.{u2, u1} R A _inst_1 a)) a
-Case conversion may be inaccurate. Consider using '#align unitization.snd_coe Unitization.snd_inrₓ'. -/
 @[simp]
 theorem snd_inr [Zero R] (a : A) : (a : Unitization R A).snd = a :=
   rfl
@@ -159,12 +141,6 @@ theorem inl_injective [Zero A] : Function.Injective (inl : R → Unitization R A
 #align unitization.inl_injective Unitization.inl_injective
 -/
 
-/- warning: unitization.coe_injective -> Unitization.inr_injective is a dubious translation:
-lean 3 declaration is
-  forall {R : Type.{u1}} {A : Type.{u2}} [_inst_1 : Zero.{u1} R], Function.Injective.{succ u2, max (succ u1) (succ u2)} A (Unitization.{u1, u2} R A) ((fun (a : Type.{u2}) (b : Sort.{max (succ u1) (succ u2)}) [self : HasLiftT.{succ u2, max (succ u1) (succ u2)} a b] => self.0) A (Unitization.{u1, u2} R A) (HasLiftT.mk.{succ u2, max (succ u1) (succ u2)} A (Unitization.{u1, u2} R A) (CoeTCₓ.coe.{succ u2, max (succ u1) (succ u2)} A (Unitization.{u1, u2} R A) (Unitization.hasCoeT.{u1, u2} R A _inst_1))))
-but is expected to have type
-  forall {R : Type.{u2}} {A : Type.{u1}} [_inst_1 : Zero.{u2} R], Function.Injective.{succ u1, max (succ u2) (succ u1)} A (Unitization.{u2, u1} R A) (Unitization.inr.{u2, u1} R A _inst_1)
-Case conversion may be inaccurate. Consider using '#align unitization.coe_injective Unitization.inr_injectiveₓ'. -/
 theorem inr_injective [Zero R] : Function.Injective (coe : A → Unitization R A) :=
   Function.LeftInverse.injective <| snd_inr _
 #align unitization.coe_injective Unitization.inr_injective
@@ -239,89 +215,41 @@ instance [Semiring S] [AddCommMonoid R] [AddCommMonoid A] [Module S R] [Module S
     Module S (Unitization R A) :=
   Prod.module
 
-/- warning: unitization.fst_zero -> Unitization.fst_zero is a dubious translation:
-lean 3 declaration is
-  forall {R : Type.{u1}} {A : Type.{u2}} [_inst_1 : Zero.{u1} R] [_inst_2 : Zero.{u2} A], Eq.{succ u1} R (Unitization.fst.{u1, u2} R A (OfNat.ofNat.{max u1 u2} (Unitization.{u1, u2} R A) 0 (OfNat.mk.{max u1 u2} (Unitization.{u1, u2} R A) 0 (Zero.zero.{max u1 u2} (Unitization.{u1, u2} R A) (Unitization.hasZero.{u1, u2} R A _inst_1 _inst_2))))) (OfNat.ofNat.{u1} R 0 (OfNat.mk.{u1} R 0 (Zero.zero.{u1} R _inst_1)))
-but is expected to have type
-  forall {R : Type.{u2}} {A : Type.{u1}} [_inst_1 : Zero.{u2} R] [_inst_2 : Zero.{u1} A], Eq.{succ u2} R (Unitization.fst.{u2, u1} R A (OfNat.ofNat.{max u2 u1} (Unitization.{u2, u1} R A) 0 (Zero.toOfNat0.{max u2 u1} (Unitization.{u2, u1} R A) (Unitization.zero.{u2, u1} R A _inst_1 _inst_2)))) (OfNat.ofNat.{u2} R 0 (Zero.toOfNat0.{u2} R _inst_1))
-Case conversion may be inaccurate. Consider using '#align unitization.fst_zero Unitization.fst_zeroₓ'. -/
 @[simp]
 theorem fst_zero [Zero R] [Zero A] : (0 : Unitization R A).fst = 0 :=
   rfl
 #align unitization.fst_zero Unitization.fst_zero
 
-/- warning: unitization.snd_zero -> Unitization.snd_zero is a dubious translation:
-lean 3 declaration is
-  forall {R : Type.{u1}} {A : Type.{u2}} [_inst_1 : Zero.{u1} R] [_inst_2 : Zero.{u2} A], Eq.{succ u2} A (Unitization.snd.{u1, u2} R A (OfNat.ofNat.{max u1 u2} (Unitization.{u1, u2} R A) 0 (OfNat.mk.{max u1 u2} (Unitization.{u1, u2} R A) 0 (Zero.zero.{max u1 u2} (Unitization.{u1, u2} R A) (Unitization.hasZero.{u1, u2} R A _inst_1 _inst_2))))) (OfNat.ofNat.{u2} A 0 (OfNat.mk.{u2} A 0 (Zero.zero.{u2} A _inst_2)))
-but is expected to have type
-  forall {R : Type.{u2}} {A : Type.{u1}} [_inst_1 : Zero.{u2} R] [_inst_2 : Zero.{u1} A], Eq.{succ u1} A (Unitization.snd.{u2, u1} R A (OfNat.ofNat.{max u2 u1} (Unitization.{u2, u1} R A) 0 (Zero.toOfNat0.{max u2 u1} (Unitization.{u2, u1} R A) (Unitization.zero.{u2, u1} R A _inst_1 _inst_2)))) (OfNat.ofNat.{u1} A 0 (Zero.toOfNat0.{u1} A _inst_2))
-Case conversion may be inaccurate. Consider using '#align unitization.snd_zero Unitization.snd_zeroₓ'. -/
 @[simp]
 theorem snd_zero [Zero R] [Zero A] : (0 : Unitization R A).snd = 0 :=
   rfl
 #align unitization.snd_zero Unitization.snd_zero
 
-/- warning: unitization.fst_add -> Unitization.fst_add is a dubious translation:
-lean 3 declaration is
-  forall {R : Type.{u1}} {A : Type.{u2}} [_inst_1 : Add.{u1} R] [_inst_2 : Add.{u2} A] (x₁ : Unitization.{u1, u2} R A) (x₂ : Unitization.{u1, u2} R A), Eq.{succ u1} R (Unitization.fst.{u1, u2} R A (HAdd.hAdd.{max u1 u2, max u1 u2, max u1 u2} (Unitization.{u1, u2} R A) (Unitization.{u1, u2} R A) (Unitization.{u1, u2} R A) (instHAdd.{max u1 u2} (Unitization.{u1, u2} R A) (Unitization.hasAdd.{u1, u2} R A _inst_1 _inst_2)) x₁ x₂)) (HAdd.hAdd.{u1, u1, u1} R R R (instHAdd.{u1} R _inst_1) (Unitization.fst.{u1, u2} R A x₁) (Unitization.fst.{u1, u2} R A x₂))
-but is expected to have type
-  forall {R : Type.{u2}} {A : Type.{u1}} [_inst_1 : Add.{u2} R] [_inst_2 : Add.{u1} A] (x₁ : Unitization.{u2, u1} R A) (x₂ : Unitization.{u2, u1} R A), Eq.{succ u2} R (Unitization.fst.{u2, u1} R A (HAdd.hAdd.{max u2 u1, max u2 u1, max u2 u1} (Unitization.{u2, u1} R A) (Unitization.{u2, u1} R A) (Unitization.{u2, u1} R A) (instHAdd.{max u2 u1} (Unitization.{u2, u1} R A) (Unitization.add.{u2, u1} R A _inst_1 _inst_2)) x₁ x₂)) (HAdd.hAdd.{u2, u2, u2} R R R (instHAdd.{u2} R _inst_1) (Unitization.fst.{u2, u1} R A x₁) (Unitization.fst.{u2, u1} R A x₂))
-Case conversion may be inaccurate. Consider using '#align unitization.fst_add Unitization.fst_addₓ'. -/
 @[simp]
 theorem fst_add [Add R] [Add A] (x₁ x₂ : Unitization R A) : (x₁ + x₂).fst = x₁.fst + x₂.fst :=
   rfl
 #align unitization.fst_add Unitization.fst_add
 
-/- warning: unitization.snd_add -> Unitization.snd_add is a dubious translation:
-lean 3 declaration is
-  forall {R : Type.{u1}} {A : Type.{u2}} [_inst_1 : Add.{u1} R] [_inst_2 : Add.{u2} A] (x₁ : Unitization.{u1, u2} R A) (x₂ : Unitization.{u1, u2} R A), Eq.{succ u2} A (Unitization.snd.{u1, u2} R A (HAdd.hAdd.{max u1 u2, max u1 u2, max u1 u2} (Unitization.{u1, u2} R A) (Unitization.{u1, u2} R A) (Unitization.{u1, u2} R A) (instHAdd.{max u1 u2} (Unitization.{u1, u2} R A) (Unitization.hasAdd.{u1, u2} R A _inst_1 _inst_2)) x₁ x₂)) (HAdd.hAdd.{u2, u2, u2} A A A (instHAdd.{u2} A _inst_2) (Unitization.snd.{u1, u2} R A x₁) (Unitization.snd.{u1, u2} R A x₂))
-but is expected to have type
-  forall {R : Type.{u2}} {A : Type.{u1}} [_inst_1 : Add.{u2} R] [_inst_2 : Add.{u1} A] (x₁ : Unitization.{u2, u1} R A) (x₂ : Unitization.{u2, u1} R A), Eq.{succ u1} A (Unitization.snd.{u2, u1} R A (HAdd.hAdd.{max u2 u1, max u2 u1, max u2 u1} (Unitization.{u2, u1} R A) (Unitization.{u2, u1} R A) (Unitization.{u2, u1} R A) (instHAdd.{max u2 u1} (Unitization.{u2, u1} R A) (Unitization.add.{u2, u1} R A _inst_1 _inst_2)) x₁ x₂)) (HAdd.hAdd.{u1, u1, u1} A A A (instHAdd.{u1} A _inst_2) (Unitization.snd.{u2, u1} R A x₁) (Unitization.snd.{u2, u1} R A x₂))
-Case conversion may be inaccurate. Consider using '#align unitization.snd_add Unitization.snd_addₓ'. -/
 @[simp]
 theorem snd_add [Add R] [Add A] (x₁ x₂ : Unitization R A) : (x₁ + x₂).snd = x₁.snd + x₂.snd :=
   rfl
 #align unitization.snd_add Unitization.snd_add
 
-/- warning: unitization.fst_neg -> Unitization.fst_neg is a dubious translation:
-lean 3 declaration is
-  forall {R : Type.{u1}} {A : Type.{u2}} [_inst_1 : Neg.{u1} R] [_inst_2 : Neg.{u2} A] (x : Unitization.{u1, u2} R A), Eq.{succ u1} R (Unitization.fst.{u1, u2} R A (Neg.neg.{max u1 u2} (Unitization.{u1, u2} R A) (Unitization.hasNeg.{u1, u2} R A _inst_1 _inst_2) x)) (Neg.neg.{u1} R _inst_1 (Unitization.fst.{u1, u2} R A x))
-but is expected to have type
-  forall {R : Type.{u2}} {A : Type.{u1}} [_inst_1 : Neg.{u2} R] [_inst_2 : Neg.{u1} A] (x : Unitization.{u2, u1} R A), Eq.{succ u2} R (Unitization.fst.{u2, u1} R A (Neg.neg.{max u2 u1} (Unitization.{u2, u1} R A) (Unitization.neg.{u2, u1} R A _inst_1 _inst_2) x)) (Neg.neg.{u2} R _inst_1 (Unitization.fst.{u2, u1} R A x))
-Case conversion may be inaccurate. Consider using '#align unitization.fst_neg Unitization.fst_negₓ'. -/
 @[simp]
 theorem fst_neg [Neg R] [Neg A] (x : Unitization R A) : (-x).fst = -x.fst :=
   rfl
 #align unitization.fst_neg Unitization.fst_neg
 
-/- warning: unitization.snd_neg -> Unitization.snd_neg is a dubious translation:
-lean 3 declaration is
-  forall {R : Type.{u1}} {A : Type.{u2}} [_inst_1 : Neg.{u1} R] [_inst_2 : Neg.{u2} A] (x : Unitization.{u1, u2} R A), Eq.{succ u2} A (Unitization.snd.{u1, u2} R A (Neg.neg.{max u1 u2} (Unitization.{u1, u2} R A) (Unitization.hasNeg.{u1, u2} R A _inst_1 _inst_2) x)) (Neg.neg.{u2} A _inst_2 (Unitization.snd.{u1, u2} R A x))
-but is expected to have type
-  forall {R : Type.{u2}} {A : Type.{u1}} [_inst_1 : Neg.{u2} R] [_inst_2 : Neg.{u1} A] (x : Unitization.{u2, u1} R A), Eq.{succ u1} A (Unitization.snd.{u2, u1} R A (Neg.neg.{max u2 u1} (Unitization.{u2, u1} R A) (Unitization.neg.{u2, u1} R A _inst_1 _inst_2) x)) (Neg.neg.{u1} A _inst_2 (Unitization.snd.{u2, u1} R A x))
-Case conversion may be inaccurate. Consider using '#align unitization.snd_neg Unitization.snd_negₓ'. -/
 @[simp]
 theorem snd_neg [Neg R] [Neg A] (x : Unitization R A) : (-x).snd = -x.snd :=
   rfl
 #align unitization.snd_neg Unitization.snd_neg
 
-/- warning: unitization.fst_smul -> Unitization.fst_smul is a dubious translation:
-lean 3 declaration is
-  forall {S : Type.{u1}} {R : Type.{u2}} {A : Type.{u3}} [_inst_1 : SMul.{u1, u2} S R] [_inst_2 : SMul.{u1, u3} S A] (s : S) (x : Unitization.{u2, u3} R A), Eq.{succ u2} R (Unitization.fst.{u2, u3} R A (SMul.smul.{u1, max u2 u3} S (Unitization.{u2, u3} R A) (Unitization.hasSmul.{u1, u2, u3} S R A _inst_1 _inst_2) s x)) (SMul.smul.{u1, u2} S R _inst_1 s (Unitization.fst.{u2, u3} R A x))
-but is expected to have type
-  forall {S : Type.{u3}} {R : Type.{u2}} {A : Type.{u1}} [_inst_1 : SMul.{u3, u2} S R] [_inst_2 : SMul.{u3, u1} S A] (s : S) (x : Unitization.{u2, u1} R A), Eq.{succ u2} R (Unitization.fst.{u2, u1} R A (HSMul.hSMul.{u3, max u2 u1, max u2 u1} S (Unitization.{u2, u1} R A) (Unitization.{u2, u1} R A) (instHSMul.{u3, max u2 u1} S (Unitization.{u2, u1} R A) (Unitization.smul.{u3, u2, u1} S R A _inst_1 _inst_2)) s x)) (HSMul.hSMul.{u3, u2, u2} S R R (instHSMul.{u3, u2} S R _inst_1) s (Unitization.fst.{u2, u1} R A x))
-Case conversion may be inaccurate. Consider using '#align unitization.fst_smul Unitization.fst_smulₓ'. -/
 @[simp]
 theorem fst_smul [SMul S R] [SMul S A] (s : S) (x : Unitization R A) : (s • x).fst = s • x.fst :=
   rfl
 #align unitization.fst_smul Unitization.fst_smul
 
-/- warning: unitization.snd_smul -> Unitization.snd_smul is a dubious translation:
-lean 3 declaration is
-  forall {S : Type.{u1}} {R : Type.{u2}} {A : Type.{u3}} [_inst_1 : SMul.{u1, u2} S R] [_inst_2 : SMul.{u1, u3} S A] (s : S) (x : Unitization.{u2, u3} R A), Eq.{succ u3} A (Unitization.snd.{u2, u3} R A (SMul.smul.{u1, max u2 u3} S (Unitization.{u2, u3} R A) (Unitization.hasSmul.{u1, u2, u3} S R A _inst_1 _inst_2) s x)) (SMul.smul.{u1, u3} S A _inst_2 s (Unitization.snd.{u2, u3} R A x))
-but is expected to have type
-  forall {S : Type.{u3}} {R : Type.{u2}} {A : Type.{u1}} [_inst_1 : SMul.{u3, u2} S R] [_inst_2 : SMul.{u3, u1} S A] (s : S) (x : Unitization.{u2, u1} R A), Eq.{succ u1} A (Unitization.snd.{u2, u1} R A (HSMul.hSMul.{u3, max u2 u1, max u2 u1} S (Unitization.{u2, u1} R A) (Unitization.{u2, u1} R A) (instHSMul.{u3, max u2 u1} S (Unitization.{u2, u1} R A) (Unitization.smul.{u3, u2, u1} S R A _inst_1 _inst_2)) s x)) (HSMul.hSMul.{u3, u1, u1} S A A (instHSMul.{u3, u1} S A _inst_2) s (Unitization.snd.{u2, u1} R A x))
-Case conversion may be inaccurate. Consider using '#align unitization.snd_smul Unitization.snd_smulₓ'. -/
 @[simp]
 theorem snd_smul [SMul S R] [SMul S A] (s : S) (x : Unitization R A) : (s • x).snd = s • x.snd :=
   rfl
@@ -331,46 +259,22 @@ section
 
 variable (A)
 
-/- warning: unitization.inl_zero -> Unitization.inl_zero is a dubious translation:
-lean 3 declaration is
-  forall {R : Type.{u1}} (A : Type.{u2}) [_inst_1 : Zero.{u1} R] [_inst_2 : Zero.{u2} A], Eq.{max (succ u1) (succ u2)} (Unitization.{u1, u2} R A) (Unitization.inl.{u1, u2} R A _inst_2 (OfNat.ofNat.{u1} R 0 (OfNat.mk.{u1} R 0 (Zero.zero.{u1} R _inst_1)))) (OfNat.ofNat.{max u1 u2} (Unitization.{u1, u2} R A) 0 (OfNat.mk.{max u1 u2} (Unitization.{u1, u2} R A) 0 (Zero.zero.{max u1 u2} (Unitization.{u1, u2} R A) (Unitization.hasZero.{u1, u2} R A _inst_1 _inst_2))))
-but is expected to have type
-  forall {R : Type.{u2}} (A : Type.{u1}) [_inst_1 : Zero.{u2} R] [_inst_2 : Zero.{u1} A], Eq.{max (succ u2) (succ u1)} (Unitization.{u2, u1} R A) (Unitization.inl.{u2, u1} R A _inst_2 (OfNat.ofNat.{u2} R 0 (Zero.toOfNat0.{u2} R _inst_1))) (OfNat.ofNat.{max u2 u1} (Unitization.{u2, u1} R A) 0 (Zero.toOfNat0.{max u2 u1} (Unitization.{u2, u1} R A) (Unitization.zero.{u2, u1} R A _inst_1 _inst_2)))
-Case conversion may be inaccurate. Consider using '#align unitization.inl_zero Unitization.inl_zeroₓ'. -/
 @[simp]
 theorem inl_zero [Zero R] [Zero A] : (inl 0 : Unitization R A) = 0 :=
   rfl
 #align unitization.inl_zero Unitization.inl_zero
 
-/- warning: unitization.inl_add -> Unitization.inl_add is a dubious translation:
-lean 3 declaration is
-  forall {R : Type.{u1}} (A : Type.{u2}) [_inst_1 : Add.{u1} R] [_inst_2 : AddZeroClass.{u2} A] (r₁ : R) (r₂ : R), Eq.{max (succ u1) (succ u2)} (Unitization.{u1, u2} R A) (Unitization.inl.{u1, u2} R A (AddZeroClass.toHasZero.{u2} A _inst_2) (HAdd.hAdd.{u1, u1, u1} R R R (instHAdd.{u1} R _inst_1) r₁ r₂)) (HAdd.hAdd.{max u1 u2, max u1 u2, max u1 u2} (Unitization.{u1, u2} R A) (Unitization.{u1, u2} R A) (Unitization.{u1, u2} R A) (instHAdd.{max u1 u2} (Unitization.{u1, u2} R A) (Unitization.hasAdd.{u1, u2} R A _inst_1 (AddZeroClass.toHasAdd.{u2} A _inst_2))) (Unitization.inl.{u1, u2} R A (AddZeroClass.toHasZero.{u2} A _inst_2) r₁) (Unitization.inl.{u1, u2} R A (AddZeroClass.toHasZero.{u2} A _inst_2) r₂))
-but is expected to have type
-  forall {R : Type.{u2}} (A : Type.{u1}) [_inst_1 : Add.{u2} R] [_inst_2 : AddZeroClass.{u1} A] (r₁ : R) (r₂ : R), Eq.{max (succ u2) (succ u1)} (Unitization.{u2, u1} R A) (Unitization.inl.{u2, u1} R A (AddZeroClass.toZero.{u1} A _inst_2) (HAdd.hAdd.{u2, u2, u2} R R R (instHAdd.{u2} R _inst_1) r₁ r₂)) (HAdd.hAdd.{max u2 u1, max u2 u1, max u2 u1} (Unitization.{u2, u1} R A) (Unitization.{u2, u1} R A) (Unitization.{u2, u1} R A) (instHAdd.{max u2 u1} (Unitization.{u2, u1} R A) (Unitization.add.{u2, u1} R A _inst_1 (AddZeroClass.toAdd.{u1} A _inst_2))) (Unitization.inl.{u2, u1} R A (AddZeroClass.toZero.{u1} A _inst_2) r₁) (Unitization.inl.{u2, u1} R A (AddZeroClass.toZero.{u1} A _inst_2) r₂))
-Case conversion may be inaccurate. Consider using '#align unitization.inl_add Unitization.inl_addₓ'. -/
 @[simp]
 theorem inl_add [Add R] [AddZeroClass A] (r₁ r₂ : R) :
     (inl (r₁ + r₂) : Unitization R A) = inl r₁ + inl r₂ :=
   ext rfl (add_zero 0).symm
 #align unitization.inl_add Unitization.inl_add
 
-/- warning: unitization.inl_neg -> Unitization.inl_neg is a dubious translation:
-lean 3 declaration is
-  forall {R : Type.{u1}} (A : Type.{u2}) [_inst_1 : Neg.{u1} R] [_inst_2 : AddGroup.{u2} A] (r : R), Eq.{max (succ u1) (succ u2)} (Unitization.{u1, u2} R A) (Unitization.inl.{u1, u2} R A (AddZeroClass.toHasZero.{u2} A (AddMonoid.toAddZeroClass.{u2} A (SubNegMonoid.toAddMonoid.{u2} A (AddGroup.toSubNegMonoid.{u2} A _inst_2)))) (Neg.neg.{u1} R _inst_1 r)) (Neg.neg.{max u1 u2} (Unitization.{u1, u2} R A) (Unitization.hasNeg.{u1, u2} R A _inst_1 (SubNegMonoid.toHasNeg.{u2} A (AddGroup.toSubNegMonoid.{u2} A _inst_2))) (Unitization.inl.{u1, u2} R A (AddZeroClass.toHasZero.{u2} A (AddMonoid.toAddZeroClass.{u2} A (SubNegMonoid.toAddMonoid.{u2} A (AddGroup.toSubNegMonoid.{u2} A _inst_2)))) r))
-but is expected to have type
-  forall {R : Type.{u2}} (A : Type.{u1}) [_inst_1 : Neg.{u2} R] [_inst_2 : AddGroup.{u1} A] (r : R), Eq.{max (succ u2) (succ u1)} (Unitization.{u2, u1} R A) (Unitization.inl.{u2, u1} R A (NegZeroClass.toZero.{u1} A (SubNegZeroMonoid.toNegZeroClass.{u1} A (SubtractionMonoid.toSubNegZeroMonoid.{u1} A (AddGroup.toSubtractionMonoid.{u1} A _inst_2)))) (Neg.neg.{u2} R _inst_1 r)) (Neg.neg.{max u2 u1} (Unitization.{u2, u1} R A) (Unitization.neg.{u2, u1} R A _inst_1 (NegZeroClass.toNeg.{u1} A (SubNegZeroMonoid.toNegZeroClass.{u1} A (SubtractionMonoid.toSubNegZeroMonoid.{u1} A (AddGroup.toSubtractionMonoid.{u1} A _inst_2))))) (Unitization.inl.{u2, u1} R A (NegZeroClass.toZero.{u1} A (SubNegZeroMonoid.toNegZeroClass.{u1} A (SubtractionMonoid.toSubNegZeroMonoid.{u1} A (AddGroup.toSubtractionMonoid.{u1} A _inst_2)))) r))
-Case conversion may be inaccurate. Consider using '#align unitization.inl_neg Unitization.inl_negₓ'. -/
 @[simp]
 theorem inl_neg [Neg R] [AddGroup A] (r : R) : (inl (-r) : Unitization R A) = -inl r :=
   ext rfl neg_zero.symm
 #align unitization.inl_neg Unitization.inl_neg
 
-/- warning: unitization.inl_smul -> Unitization.inl_smul is a dubious translation:
-lean 3 declaration is
-  forall {S : Type.{u1}} {R : Type.{u2}} (A : Type.{u3}) [_inst_1 : Monoid.{u1} S] [_inst_2 : AddMonoid.{u3} A] [_inst_3 : SMul.{u1, u2} S R] [_inst_4 : DistribMulAction.{u1, u3} S A _inst_1 _inst_2] (s : S) (r : R), Eq.{max (succ u2) (succ u3)} (Unitization.{u2, u3} R A) (Unitization.inl.{u2, u3} R A (AddZeroClass.toHasZero.{u3} A (AddMonoid.toAddZeroClass.{u3} A _inst_2)) (SMul.smul.{u1, u2} S R _inst_3 s r)) (SMul.smul.{u1, max u2 u3} S (Unitization.{u2, u3} R A) (Unitization.hasSmul.{u1, u2, u3} S R A _inst_3 (SMulZeroClass.toHasSmul.{u1, u3} S A (AddZeroClass.toHasZero.{u3} A (AddMonoid.toAddZeroClass.{u3} A _inst_2)) (DistribSMul.toSmulZeroClass.{u1, u3} S A (AddMonoid.toAddZeroClass.{u3} A _inst_2) (DistribMulAction.toDistribSMul.{u1, u3} S A _inst_1 _inst_2 _inst_4)))) s (Unitization.inl.{u2, u3} R A (AddZeroClass.toHasZero.{u3} A (AddMonoid.toAddZeroClass.{u3} A _inst_2)) r))
-but is expected to have type
-  forall {S : Type.{u3}} {R : Type.{u1}} (A : Type.{u2}) [_inst_1 : Monoid.{u3} S] [_inst_2 : AddMonoid.{u2} A] [_inst_3 : SMul.{u3, u1} S R] [_inst_4 : DistribMulAction.{u3, u2} S A _inst_1 _inst_2] (s : S) (r : R), Eq.{max (succ u1) (succ u2)} (Unitization.{u1, u2} R A) (Unitization.inl.{u1, u2} R A (AddMonoid.toZero.{u2} A _inst_2) (HSMul.hSMul.{u3, u1, u1} S R R (instHSMul.{u3, u1} S R _inst_3) s r)) (HSMul.hSMul.{u3, max u2 u1, max u1 u2} S (Unitization.{u1, u2} R A) (Unitization.{u1, u2} R A) (instHSMul.{u3, max u1 u2} S (Unitization.{u1, u2} R A) (Unitization.smul.{u3, u1, u2} S R A _inst_3 (SMulZeroClass.toSMul.{u3, u2} S A (AddMonoid.toZero.{u2} A _inst_2) (DistribSMul.toSMulZeroClass.{u3, u2} S A (AddMonoid.toAddZeroClass.{u2} A _inst_2) (DistribMulAction.toDistribSMul.{u3, u2} S A _inst_1 _inst_2 _inst_4))))) s (Unitization.inl.{u1, u2} R A (AddMonoid.toZero.{u2} A _inst_2) r))
-Case conversion may be inaccurate. Consider using '#align unitization.inl_smul Unitization.inl_smulₓ'. -/
 @[simp]
 theorem inl_smul [Monoid S] [AddMonoid A] [SMul S R] [DistribMulAction S A] (s : S) (r : R) :
     (inl (s • r) : Unitization R A) = s • inl r :=
@@ -383,45 +287,21 @@ section
 
 variable (R)
 
-/- warning: unitization.coe_zero -> Unitization.inr_zero is a dubious translation:
-lean 3 declaration is
-  forall (R : Type.{u1}) {A : Type.{u2}} [_inst_1 : Zero.{u1} R] [_inst_2 : Zero.{u2} A], Eq.{max (succ u1) (succ u2)} (Unitization.{u1, u2} R A) ((fun (a : Type.{u2}) (b : Sort.{max (succ u1) (succ u2)}) [self : HasLiftT.{succ u2, max (succ u1) (succ u2)} a b] => self.0) A (Unitization.{u1, u2} R A) (HasLiftT.mk.{succ u2, max (succ u1) (succ u2)} A (Unitization.{u1, u2} R A) (CoeTCₓ.coe.{succ u2, max (succ u1) (succ u2)} A (Unitization.{u1, u2} R A) (Unitization.hasCoeT.{u1, u2} R A _inst_1))) (OfNat.ofNat.{u2} A 0 (OfNat.mk.{u2} A 0 (Zero.zero.{u2} A _inst_2)))) (OfNat.ofNat.{max u1 u2} (Unitization.{u1, u2} R A) 0 (OfNat.mk.{max u1 u2} (Unitization.{u1, u2} R A) 0 (Zero.zero.{max u1 u2} (Unitization.{u1, u2} R A) (Unitization.hasZero.{u1, u2} R A _inst_1 _inst_2))))
-but is expected to have type
-  forall (R : Type.{u2}) {A : Type.{u1}} [_inst_1 : Zero.{u2} R] [_inst_2 : Zero.{u1} A], Eq.{max (succ u2) (succ u1)} (Unitization.{u2, u1} R A) (Unitization.inr.{u2, u1} R A _inst_1 (OfNat.ofNat.{u1} A 0 (Zero.toOfNat0.{u1} A _inst_2))) (OfNat.ofNat.{max u2 u1} (Unitization.{u2, u1} R A) 0 (Zero.toOfNat0.{max u2 u1} (Unitization.{u2, u1} R A) (Unitization.zero.{u2, u1} R A _inst_1 _inst_2)))
-Case conversion may be inaccurate. Consider using '#align unitization.coe_zero Unitization.inr_zeroₓ'. -/
 @[simp]
 theorem inr_zero [Zero R] [Zero A] : ↑(0 : A) = (0 : Unitization R A) :=
   rfl
 #align unitization.coe_zero Unitization.inr_zero
 
-/- warning: unitization.coe_add -> Unitization.inr_add is a dubious translation:
-lean 3 declaration is
-  forall (R : Type.{u1}) {A : Type.{u2}} [_inst_1 : AddZeroClass.{u1} R] [_inst_2 : Add.{u2} A] (m₁ : A) (m₂ : A), Eq.{max (succ u1) (succ u2)} (Unitization.{u1, u2} R A) ((fun (a : Type.{u2}) (b : Sort.{max (succ u1) (succ u2)}) [self : HasLiftT.{succ u2, max (succ u1) (succ u2)} a b] => self.0) A (Unitization.{u1, u2} R A) (HasLiftT.mk.{succ u2, max (succ u1) (succ u2)} A (Unitization.{u1, u2} R A) (CoeTCₓ.coe.{succ u2, max (succ u1) (succ u2)} A (Unitization.{u1, u2} R A) (Unitization.hasCoeT.{u1, u2} R A (AddZeroClass.toHasZero.{u1} R _inst_1)))) (HAdd.hAdd.{u2, u2, u2} A A A (instHAdd.{u2} A _inst_2) m₁ m₂)) (HAdd.hAdd.{max u1 u2, max u1 u2, max u1 u2} (Unitization.{u1, u2} R A) (Unitization.{u1, u2} R A) (Unitization.{u1, u2} R A) (instHAdd.{max u1 u2} (Unitization.{u1, u2} R A) (Unitization.hasAdd.{u1, u2} R A (AddZeroClass.toHasAdd.{u1} R _inst_1) _inst_2)) ((fun (a : Type.{u2}) (b : Sort.{max (succ u1) (succ u2)}) [self : HasLiftT.{succ u2, max (succ u1) (succ u2)} a b] => self.0) A (Unitization.{u1, u2} R A) (HasLiftT.mk.{succ u2, max (succ u1) (succ u2)} A (Unitization.{u1, u2} R A) (CoeTCₓ.coe.{succ u2, max (succ u1) (succ u2)} A (Unitization.{u1, u2} R A) (Unitization.hasCoeT.{u1, u2} R A (AddZeroClass.toHasZero.{u1} R _inst_1)))) m₁) ((fun (a : Type.{u2}) (b : Sort.{max (succ u1) (succ u2)}) [self : HasLiftT.{succ u2, max (succ u1) (succ u2)} a b] => self.0) A (Unitization.{u1, u2} R A) (HasLiftT.mk.{succ u2, max (succ u1) (succ u2)} A (Unitization.{u1, u2} R A) (CoeTCₓ.coe.{succ u2, max (succ u1) (succ u2)} A (Unitization.{u1, u2} R A) (Unitization.hasCoeT.{u1, u2} R A (AddZeroClass.toHasZero.{u1} R _inst_1)))) m₂))
-but is expected to have type
-  forall (R : Type.{u2}) {A : Type.{u1}} [_inst_1 : AddZeroClass.{u2} R] [_inst_2 : Add.{u1} A] (m₁ : A) (m₂ : A), Eq.{max (succ u2) (succ u1)} (Unitization.{u2, u1} R A) (Unitization.inr.{u2, u1} R A (AddZeroClass.toZero.{u2} R _inst_1) (HAdd.hAdd.{u1, u1, u1} A A A (instHAdd.{u1} A _inst_2) m₁ m₂)) (HAdd.hAdd.{max u2 u1, max u2 u1, max u2 u1} (Unitization.{u2, u1} R A) (Unitization.{u2, u1} R A) (Unitization.{u2, u1} R A) (instHAdd.{max u2 u1} (Unitization.{u2, u1} R A) (Unitization.add.{u2, u1} R A (AddZeroClass.toAdd.{u2} R _inst_1) _inst_2)) (Unitization.inr.{u2, u1} R A (AddZeroClass.toZero.{u2} R _inst_1) m₁) (Unitization.inr.{u2, u1} R A (AddZeroClass.toZero.{u2} R _inst_1) m₂))
-Case conversion may be inaccurate. Consider using '#align unitization.coe_add Unitization.inr_addₓ'. -/
 @[simp]
 theorem inr_add [AddZeroClass R] [Add A] (m₁ m₂ : A) : (↑(m₁ + m₂) : Unitization R A) = m₁ + m₂ :=
   ext (add_zero 0).symm rfl
 #align unitization.coe_add Unitization.inr_add
 
-/- warning: unitization.coe_neg -> Unitization.inr_neg is a dubious translation:
-lean 3 declaration is
-  forall (R : Type.{u1}) {A : Type.{u2}} [_inst_1 : AddGroup.{u1} R] [_inst_2 : Neg.{u2} A] (m : A), Eq.{max (succ u1) (succ u2)} (Unitization.{u1, u2} R A) ((fun (a : Type.{u2}) (b : Sort.{max (succ u1) (succ u2)}) [self : HasLiftT.{succ u2, max (succ u1) (succ u2)} a b] => self.0) A (Unitization.{u1, u2} R A) (HasLiftT.mk.{succ u2, max (succ u1) (succ u2)} A (Unitization.{u1, u2} R A) (CoeTCₓ.coe.{succ u2, max (succ u1) (succ u2)} A (Unitization.{u1, u2} R A) (Unitization.hasCoeT.{u1, u2} R A (AddZeroClass.toHasZero.{u1} R (AddMonoid.toAddZeroClass.{u1} R (SubNegMonoid.toAddMonoid.{u1} R (AddGroup.toSubNegMonoid.{u1} R _inst_1))))))) (Neg.neg.{u2} A _inst_2 m)) (Neg.neg.{max u1 u2} (Unitization.{u1, u2} R A) (Unitization.hasNeg.{u1, u2} R A (SubNegMonoid.toHasNeg.{u1} R (AddGroup.toSubNegMonoid.{u1} R _inst_1)) _inst_2) ((fun (a : Type.{u2}) (b : Sort.{max (succ u1) (succ u2)}) [self : HasLiftT.{succ u2, max (succ u1) (succ u2)} a b] => self.0) A (Unitization.{u1, u2} R A) (HasLiftT.mk.{succ u2, max (succ u1) (succ u2)} A (Unitization.{u1, u2} R A) (CoeTCₓ.coe.{succ u2, max (succ u1) (succ u2)} A (Unitization.{u1, u2} R A) (Unitization.hasCoeT.{u1, u2} R A (AddZeroClass.toHasZero.{u1} R (AddMonoid.toAddZeroClass.{u1} R (SubNegMonoid.toAddMonoid.{u1} R (AddGroup.toSubNegMonoid.{u1} R _inst_1))))))) m))
-but is expected to have type
-  forall (R : Type.{u2}) {A : Type.{u1}} [_inst_1 : AddGroup.{u2} R] [_inst_2 : Neg.{u1} A] (m : A), Eq.{max (succ u2) (succ u1)} (Unitization.{u2, u1} R A) (Unitization.inr.{u2, u1} R A (NegZeroClass.toZero.{u2} R (SubNegZeroMonoid.toNegZeroClass.{u2} R (SubtractionMonoid.toSubNegZeroMonoid.{u2} R (AddGroup.toSubtractionMonoid.{u2} R _inst_1)))) (Neg.neg.{u1} A _inst_2 m)) (Neg.neg.{max u2 u1} (Unitization.{u2, u1} R A) (Unitization.neg.{u2, u1} R A (NegZeroClass.toNeg.{u2} R (SubNegZeroMonoid.toNegZeroClass.{u2} R (SubtractionMonoid.toSubNegZeroMonoid.{u2} R (AddGroup.toSubtractionMonoid.{u2} R _inst_1)))) _inst_2) (Unitization.inr.{u2, u1} R A (NegZeroClass.toZero.{u2} R (SubNegZeroMonoid.toNegZeroClass.{u2} R (SubtractionMonoid.toSubNegZeroMonoid.{u2} R (AddGroup.toSubtractionMonoid.{u2} R _inst_1)))) m))
-Case conversion may be inaccurate. Consider using '#align unitization.coe_neg Unitization.inr_negₓ'. -/
 @[simp]
 theorem inr_neg [AddGroup R] [Neg A] (m : A) : (↑(-m) : Unitization R A) = -m :=
   ext neg_zero.symm rfl
 #align unitization.coe_neg Unitization.inr_neg
 
-/- warning: unitization.coe_smul -> Unitization.inr_smul is a dubious translation:
-lean 3 declaration is
-  forall {S : Type.{u1}} (R : Type.{u2}) {A : Type.{u3}} [_inst_1 : Zero.{u2} R] [_inst_2 : Zero.{u1} S] [_inst_3 : SMulWithZero.{u1, u2} S R _inst_2 _inst_1] [_inst_4 : SMul.{u1, u3} S A] (r : S) (m : A), Eq.{max (succ u2) (succ u3)} (Unitization.{u2, u3} R A) ((fun (a : Type.{u3}) (b : Sort.{max (succ u2) (succ u3)}) [self : HasLiftT.{succ u3, max (succ u2) (succ u3)} a b] => self.0) A (Unitization.{u2, u3} R A) (HasLiftT.mk.{succ u3, max (succ u2) (succ u3)} A (Unitization.{u2, u3} R A) (CoeTCₓ.coe.{succ u3, max (succ u2) (succ u3)} A (Unitization.{u2, u3} R A) (Unitization.hasCoeT.{u2, u3} R A _inst_1))) (SMul.smul.{u1, u3} S A _inst_4 r m)) (SMul.smul.{u1, max u2 u3} S (Unitization.{u2, u3} R A) (Unitization.hasSmul.{u1, u2, u3} S R A (SMulZeroClass.toHasSmul.{u1, u2} S R _inst_1 (SMulWithZero.toSmulZeroClass.{u1, u2} S R _inst_2 _inst_1 _inst_3)) _inst_4) r ((fun (a : Type.{u3}) (b : Sort.{max (succ u2) (succ u3)}) [self : HasLiftT.{succ u3, max (succ u2) (succ u3)} a b] => self.0) A (Unitization.{u2, u3} R A) (HasLiftT.mk.{succ u3, max (succ u2) (succ u3)} A (Unitization.{u2, u3} R A) (CoeTCₓ.coe.{succ u3, max (succ u2) (succ u3)} A (Unitization.{u2, u3} R A) (Unitization.hasCoeT.{u2, u3} R A _inst_1))) m))
-but is expected to have type
-  forall {S : Type.{u2}} (R : Type.{u3}) {A : Type.{u1}} [_inst_1 : Zero.{u3} R] [_inst_2 : Zero.{u2} S] [_inst_3 : SMulWithZero.{u2, u3} S R _inst_2 _inst_1] [_inst_4 : SMul.{u2, u1} S A] (r : S) (m : A), Eq.{max (succ u3) (succ u1)} (Unitization.{u3, u1} R A) (Unitization.inr.{u3, u1} R A _inst_1 (HSMul.hSMul.{u2, u1, u1} S A A (instHSMul.{u2, u1} S A _inst_4) r m)) (HSMul.hSMul.{u2, max u3 u1, max u3 u1} S (Unitization.{u3, u1} R A) (Unitization.{u3, u1} R A) (instHSMul.{u2, max u3 u1} S (Unitization.{u3, u1} R A) (Unitization.smul.{u2, u3, u1} S R A (SMulZeroClass.toSMul.{u2, u3} S R _inst_1 (SMulWithZero.toSMulZeroClass.{u2, u3} S R _inst_2 _inst_1 _inst_3)) _inst_4)) r (Unitization.inr.{u3, u1} R A _inst_1 m))
-Case conversion may be inaccurate. Consider using '#align unitization.coe_smul Unitization.inr_smulₓ'. -/
 @[simp]
 theorem inr_smul [Zero R] [Zero S] [SMulWithZero S R] [SMul S A] (r : S) (m : A) :
     (↑(r • m) : Unitization R A) = r • m :=
@@ -430,23 +310,11 @@ theorem inr_smul [Zero R] [Zero S] [SMulWithZero S R] [SMul S A] (r : S) (m : A)
 
 end
 
-/- warning: unitization.inl_fst_add_coe_snd_eq -> Unitization.inl_fst_add_inr_snd_eq is a dubious translation:
-lean 3 declaration is
-  forall {R : Type.{u1}} {A : Type.{u2}} [_inst_1 : AddZeroClass.{u1} R] [_inst_2 : AddZeroClass.{u2} A] (x : Unitization.{u1, u2} R A), Eq.{succ (max u1 u2)} (Unitization.{u1, u2} R A) (HAdd.hAdd.{max u1 u2, max u1 u2, max u1 u2} (Unitization.{u1, u2} R A) (Unitization.{u1, u2} R A) (Unitization.{u1, u2} R A) (instHAdd.{max u1 u2} (Unitization.{u1, u2} R A) (Unitization.hasAdd.{u1, u2} R A (AddZeroClass.toHasAdd.{u1} R _inst_1) (AddZeroClass.toHasAdd.{u2} A _inst_2))) (Unitization.inl.{u1, u2} R A (AddZeroClass.toHasZero.{u2} A _inst_2) (Unitization.fst.{u1, u2} R A x)) ((fun (a : Type.{u2}) (b : Sort.{max (succ u1) (succ u2)}) [self : HasLiftT.{succ u2, max (succ u1) (succ u2)} a b] => self.0) A (Unitization.{u1, u2} R A) (HasLiftT.mk.{succ u2, max (succ u1) (succ u2)} A (Unitization.{u1, u2} R A) (CoeTCₓ.coe.{succ u2, max (succ u1) (succ u2)} A (Unitization.{u1, u2} R A) (Unitization.hasCoeT.{u1, u2} R A (AddZeroClass.toHasZero.{u1} R _inst_1)))) (Unitization.snd.{u1, u2} R A x))) x
-but is expected to have type
-  forall {R : Type.{u2}} {A : Type.{u1}} [_inst_1 : AddZeroClass.{u2} R] [_inst_2 : AddZeroClass.{u1} A] (x : Unitization.{u2, u1} R A), Eq.{max (succ u2) (succ u1)} (Unitization.{u2, u1} R A) (HAdd.hAdd.{max u2 u1, max u2 u1, max u2 u1} (Unitization.{u2, u1} R A) (Unitization.{u2, u1} R A) (Unitization.{u2, u1} R A) (instHAdd.{max u2 u1} (Unitization.{u2, u1} R A) (Unitization.add.{u2, u1} R A (AddZeroClass.toAdd.{u2} R _inst_1) (AddZeroClass.toAdd.{u1} A _inst_2))) (Unitization.inl.{u2, u1} R A (AddZeroClass.toZero.{u1} A _inst_2) (Unitization.fst.{u2, u1} R A x)) (Unitization.inr.{u2, u1} R A (AddZeroClass.toZero.{u2} R _inst_1) (Unitization.snd.{u2, u1} R A x))) x
-Case conversion may be inaccurate. Consider using '#align unitization.inl_fst_add_coe_snd_eq Unitization.inl_fst_add_inr_snd_eqₓ'. -/
 theorem inl_fst_add_inr_snd_eq [AddZeroClass R] [AddZeroClass A] (x : Unitization R A) :
     inl x.fst + ↑x.snd = x :=
   ext (add_zero x.1) (zero_add x.2)
 #align unitization.inl_fst_add_coe_snd_eq Unitization.inl_fst_add_inr_snd_eq
 
-/- warning: unitization.ind -> Unitization.ind is a dubious translation:
-lean 3 declaration is
-  forall {R : Type.{u1}} {A : Type.{u2}} [_inst_1 : AddZeroClass.{u1} R] [_inst_2 : AddZeroClass.{u2} A] {P : (Unitization.{u1, u2} R A) -> Prop}, (forall (r : R) (a : A), P (HAdd.hAdd.{max u1 u2, max u1 u2, max u1 u2} (Unitization.{u1, u2} R A) (Unitization.{u1, u2} R A) (Unitization.{u1, u2} R A) (instHAdd.{max u1 u2} (Unitization.{u1, u2} R A) (Unitization.hasAdd.{u1, u2} R A (AddZeroClass.toHasAdd.{u1} R _inst_1) (AddZeroClass.toHasAdd.{u2} A _inst_2))) (Unitization.inl.{u1, u2} R A (AddZeroClass.toHasZero.{u2} A _inst_2) r) ((fun (a : Type.{u2}) (b : Sort.{max (succ u1) (succ u2)}) [self : HasLiftT.{succ u2, max (succ u1) (succ u2)} a b] => self.0) A (Unitization.{u1, u2} R A) (HasLiftT.mk.{succ u2, max (succ u1) (succ u2)} A (Unitization.{u1, u2} R A) (CoeTCₓ.coe.{succ u2, max (succ u1) (succ u2)} A (Unitization.{u1, u2} R A) (Unitization.hasCoeT.{u1, u2} R A (AddZeroClass.toHasZero.{u1} R _inst_1)))) a))) -> (forall (x : Unitization.{u1, u2} R A), P x)
-but is expected to have type
-  forall {R : Type.{u2}} {A : Type.{u1}} [_inst_1 : AddZeroClass.{u2} R] [_inst_2 : AddZeroClass.{u1} A] {P : (Unitization.{u2, u1} R A) -> Prop}, (forall (r : R) (a : A), P (HAdd.hAdd.{max u2 u1, max u2 u1, max u2 u1} (Unitization.{u2, u1} R A) (Unitization.{u2, u1} R A) (Unitization.{u2, u1} R A) (instHAdd.{max u2 u1} (Unitization.{u2, u1} R A) (Unitization.add.{u2, u1} R A (AddZeroClass.toAdd.{u2} R _inst_1) (AddZeroClass.toAdd.{u1} A _inst_2))) (Unitization.inl.{u2, u1} R A (AddZeroClass.toZero.{u1} A _inst_2) r) (Unitization.inr.{u2, u1} R A (AddZeroClass.toZero.{u2} R _inst_1) a))) -> (forall (x : Unitization.{u2, u1} R A), P x)
-Case conversion may be inaccurate. Consider using '#align unitization.ind Unitization.indₓ'. -/
 /-- To show a property hold on all `unitization R A` it suffices to show it holds
 on terms of the form `inl r + a`.
 
@@ -456,9 +324,6 @@ theorem ind {R A} [AddZeroClass R] [AddZeroClass A] {P : Unitization R A → Pro
   inl_fst_add_inr_snd_eq x ▸ h x.1 x.2
 #align unitization.ind Unitization.ind
 
-/- warning: unitization.linear_map_ext -> Unitization.linearMap_ext is a dubious translation:
-<too large>
-Case conversion may be inaccurate. Consider using '#align unitization.linear_map_ext Unitization.linearMap_extₓ'. -/
 /-- This cannot be marked `@[ext]` as it ends up being used instead of `linear_map.prod_ext` when
 working with `R × A`. -/
 theorem linearMap_ext {N} [Semiring S] [AddCommMonoid R] [AddCommMonoid A] [AddCommMonoid N]
@@ -500,46 +365,22 @@ instance [One R] [Zero A] : One (Unitization R A) :=
 instance [Mul R] [Add A] [Mul A] [SMul R A] : Mul (Unitization R A) :=
   ⟨fun x y => (x.1 * y.1, x.1 • y.2 + y.1 • x.2 + x.2 * y.2)⟩
 
-/- warning: unitization.fst_one -> Unitization.fst_one is a dubious translation:
-lean 3 declaration is
-  forall {R : Type.{u1}} {A : Type.{u2}} [_inst_1 : One.{u1} R] [_inst_2 : Zero.{u2} A], Eq.{succ u1} R (Unitization.fst.{u1, u2} R A (OfNat.ofNat.{max u1 u2} (Unitization.{u1, u2} R A) 1 (OfNat.mk.{max u1 u2} (Unitization.{u1, u2} R A) 1 (One.one.{max u1 u2} (Unitization.{u1, u2} R A) (Unitization.hasOne.{u1, u2} R A _inst_1 _inst_2))))) (OfNat.ofNat.{u1} R 1 (OfNat.mk.{u1} R 1 (One.one.{u1} R _inst_1)))
-but is expected to have type
-  forall {R : Type.{u2}} {A : Type.{u1}} [_inst_1 : One.{u2} R] [_inst_2 : Zero.{u1} A], Eq.{succ u2} R (Unitization.fst.{u2, u1} R A (OfNat.ofNat.{max u2 u1} (Unitization.{u2, u1} R A) 1 (One.toOfNat1.{max u2 u1} (Unitization.{u2, u1} R A) (Unitization.one.{u2, u1} R A _inst_1 _inst_2)))) (OfNat.ofNat.{u2} R 1 (One.toOfNat1.{u2} R _inst_1))
-Case conversion may be inaccurate. Consider using '#align unitization.fst_one Unitization.fst_oneₓ'. -/
 @[simp]
 theorem fst_one [One R] [Zero A] : (1 : Unitization R A).fst = 1 :=
   rfl
 #align unitization.fst_one Unitization.fst_one
 
-/- warning: unitization.snd_one -> Unitization.snd_one is a dubious translation:
-lean 3 declaration is
-  forall {R : Type.{u1}} {A : Type.{u2}} [_inst_1 : One.{u1} R] [_inst_2 : Zero.{u2} A], Eq.{succ u2} A (Unitization.snd.{u1, u2} R A (OfNat.ofNat.{max u1 u2} (Unitization.{u1, u2} R A) 1 (OfNat.mk.{max u1 u2} (Unitization.{u1, u2} R A) 1 (One.one.{max u1 u2} (Unitization.{u1, u2} R A) (Unitization.hasOne.{u1, u2} R A _inst_1 _inst_2))))) (OfNat.ofNat.{u2} A 0 (OfNat.mk.{u2} A 0 (Zero.zero.{u2} A _inst_2)))
-but is expected to have type
-  forall {R : Type.{u2}} {A : Type.{u1}} [_inst_1 : One.{u2} R] [_inst_2 : Zero.{u1} A], Eq.{succ u1} A (Unitization.snd.{u2, u1} R A (OfNat.ofNat.{max u2 u1} (Unitization.{u2, u1} R A) 1 (One.toOfNat1.{max u2 u1} (Unitization.{u2, u1} R A) (Unitization.one.{u2, u1} R A _inst_1 _inst_2)))) (OfNat.ofNat.{u1} A 0 (Zero.toOfNat0.{u1} A _inst_2))
-Case conversion may be inaccurate. Consider using '#align unitization.snd_one Unitization.snd_oneₓ'. -/
 @[simp]
 theorem snd_one [One R] [Zero A] : (1 : Unitization R A).snd = 0 :=
   rfl
 #align unitization.snd_one Unitization.snd_one
 
-/- warning: unitization.fst_mul -> Unitization.fst_mul is a dubious translation:
-lean 3 declaration is
-  forall {R : Type.{u1}} {A : Type.{u2}} [_inst_1 : Mul.{u1} R] [_inst_2 : Add.{u2} A] [_inst_3 : Mul.{u2} A] [_inst_4 : SMul.{u1, u2} R A] (x₁ : Unitization.{u1, u2} R A) (x₂ : Unitization.{u1, u2} R A), Eq.{succ u1} R (Unitization.fst.{u1, u2} R A (HMul.hMul.{max u1 u2, max u1 u2, max u1 u2} (Unitization.{u1, u2} R A) (Unitization.{u1, u2} R A) (Unitization.{u1, u2} R A) (instHMul.{max u1 u2} (Unitization.{u1, u2} R A) (Unitization.hasMul.{u1, u2} R A _inst_1 _inst_2 _inst_3 _inst_4)) x₁ x₂)) (HMul.hMul.{u1, u1, u1} R R R (instHMul.{u1} R _inst_1) (Unitization.fst.{u1, u2} R A x₁) (Unitization.fst.{u1, u2} R A x₂))
-but is expected to have type
-  forall {R : Type.{u2}} {A : Type.{u1}} [_inst_1 : Mul.{u2} R] [_inst_2 : Add.{u1} A] [_inst_3 : Mul.{u1} A] [_inst_4 : SMul.{u2, u1} R A] (x₁ : Unitization.{u2, u1} R A) (x₂ : Unitization.{u2, u1} R A), Eq.{succ u2} R (Unitization.fst.{u2, u1} R A (HMul.hMul.{max u2 u1, max u2 u1, max u2 u1} (Unitization.{u2, u1} R A) (Unitization.{u2, u1} R A) (Unitization.{u2, u1} R A) (instHMul.{max u2 u1} (Unitization.{u2, u1} R A) (Unitization.mul.{u2, u1} R A _inst_1 _inst_2 _inst_3 _inst_4)) x₁ x₂)) (HMul.hMul.{u2, u2, u2} R R R (instHMul.{u2} R _inst_1) (Unitization.fst.{u2, u1} R A x₁) (Unitization.fst.{u2, u1} R A x₂))
-Case conversion may be inaccurate. Consider using '#align unitization.fst_mul Unitization.fst_mulₓ'. -/
 @[simp]
 theorem fst_mul [Mul R] [Add A] [Mul A] [SMul R A] (x₁ x₂ : Unitization R A) :
     (x₁ * x₂).fst = x₁.fst * x₂.fst :=
   rfl
 #align unitization.fst_mul Unitization.fst_mul
 
-/- warning: unitization.snd_mul -> Unitization.snd_mul is a dubious translation:
-lean 3 declaration is
-  forall {R : Type.{u1}} {A : Type.{u2}} [_inst_1 : Mul.{u1} R] [_inst_2 : Add.{u2} A] [_inst_3 : Mul.{u2} A] [_inst_4 : SMul.{u1, u2} R A] (x₁ : Unitization.{u1, u2} R A) (x₂ : Unitization.{u1, u2} R A), Eq.{succ u2} A (Unitization.snd.{u1, u2} R A (HMul.hMul.{max u1 u2, max u1 u2, max u1 u2} (Unitization.{u1, u2} R A) (Unitization.{u1, u2} R A) (Unitization.{u1, u2} R A) (instHMul.{max u1 u2} (Unitization.{u1, u2} R A) (Unitization.hasMul.{u1, u2} R A _inst_1 _inst_2 _inst_3 _inst_4)) x₁ x₂)) (HAdd.hAdd.{u2, u2, u2} A A A (instHAdd.{u2} A _inst_2) (HAdd.hAdd.{u2, u2, u2} A A A (instHAdd.{u2} A _inst_2) (SMul.smul.{u1, u2} R A _inst_4 (Unitization.fst.{u1, u2} R A x₁) (Unitization.snd.{u1, u2} R A x₂)) (SMul.smul.{u1, u2} R A _inst_4 (Unitization.fst.{u1, u2} R A x₂) (Unitization.snd.{u1, u2} R A x₁))) (HMul.hMul.{u2, u2, u2} A A A (instHMul.{u2} A _inst_3) (Unitization.snd.{u1, u2} R A x₁) (Unitization.snd.{u1, u2} R A x₂)))
-but is expected to have type
-  forall {R : Type.{u2}} {A : Type.{u1}} [_inst_1 : Mul.{u2} R] [_inst_2 : Add.{u1} A] [_inst_3 : Mul.{u1} A] [_inst_4 : SMul.{u2, u1} R A] (x₁ : Unitization.{u2, u1} R A) (x₂ : Unitization.{u2, u1} R A), Eq.{succ u1} A (Unitization.snd.{u2, u1} R A (HMul.hMul.{max u2 u1, max u2 u1, max u2 u1} (Unitization.{u2, u1} R A) (Unitization.{u2, u1} R A) (Unitization.{u2, u1} R A) (instHMul.{max u2 u1} (Unitization.{u2, u1} R A) (Unitization.mul.{u2, u1} R A _inst_1 _inst_2 _inst_3 _inst_4)) x₁ x₂)) (HAdd.hAdd.{u1, u1, u1} A A A (instHAdd.{u1} A _inst_2) (HAdd.hAdd.{u1, u1, u1} A A A (instHAdd.{u1} A _inst_2) (HSMul.hSMul.{u2, u1, u1} R A A (instHSMul.{u2, u1} R A _inst_4) (Unitization.fst.{u2, u1} R A x₁) (Unitization.snd.{u2, u1} R A x₂)) (HSMul.hSMul.{u2, u1, u1} R A A (instHSMul.{u2, u1} R A _inst_4) (Unitization.fst.{u2, u1} R A x₂) (Unitization.snd.{u2, u1} R A x₁))) (HMul.hMul.{u1, u1, u1} A A A (instHMul.{u1} A _inst_3) (Unitization.snd.{u2, u1} R A x₁) (Unitization.snd.{u2, u1} R A x₂)))
-Case conversion may be inaccurate. Consider using '#align unitization.snd_mul Unitization.snd_mulₓ'. -/
 @[simp]
 theorem snd_mul [Mul R] [Add A] [Mul A] [SMul R A] (x₁ x₂ : Unitization R A) :
     (x₁ * x₂).snd = x₁.fst • x₂.snd + x₂.fst • x₁.snd + x₁.snd * x₂.snd :=
@@ -550,23 +391,11 @@ section
 
 variable (A)
 
-/- warning: unitization.inl_one -> Unitization.inl_one is a dubious translation:
-lean 3 declaration is
-  forall {R : Type.{u1}} (A : Type.{u2}) [_inst_1 : One.{u1} R] [_inst_2 : Zero.{u2} A], Eq.{max (succ u1) (succ u2)} (Unitization.{u1, u2} R A) (Unitization.inl.{u1, u2} R A _inst_2 (OfNat.ofNat.{u1} R 1 (OfNat.mk.{u1} R 1 (One.one.{u1} R _inst_1)))) (OfNat.ofNat.{max u1 u2} (Unitization.{u1, u2} R A) 1 (OfNat.mk.{max u1 u2} (Unitization.{u1, u2} R A) 1 (One.one.{max u1 u2} (Unitization.{u1, u2} R A) (Unitization.hasOne.{u1, u2} R A _inst_1 _inst_2))))
-but is expected to have type
-  forall {R : Type.{u2}} (A : Type.{u1}) [_inst_1 : One.{u2} R] [_inst_2 : Zero.{u1} A], Eq.{max (succ u2) (succ u1)} (Unitization.{u2, u1} R A) (Unitization.inl.{u2, u1} R A _inst_2 (OfNat.ofNat.{u2} R 1 (One.toOfNat1.{u2} R _inst_1))) (OfNat.ofNat.{max u2 u1} (Unitization.{u2, u1} R A) 1 (One.toOfNat1.{max u2 u1} (Unitization.{u2, u1} R A) (Unitization.one.{u2, u1} R A _inst_1 _inst_2)))
-Case conversion may be inaccurate. Consider using '#align unitization.inl_one Unitization.inl_oneₓ'. -/
 @[simp]
 theorem inl_one [One R] [Zero A] : (inl 1 : Unitization R A) = 1 :=
   rfl
 #align unitization.inl_one Unitization.inl_one
 
-/- warning: unitization.inl_mul -> Unitization.inl_mul is a dubious translation:
-lean 3 declaration is
-  forall {R : Type.{u1}} (A : Type.{u2}) [_inst_1 : Monoid.{u1} R] [_inst_2 : NonUnitalNonAssocSemiring.{u2} A] [_inst_3 : DistribMulAction.{u1, u2} R A _inst_1 (AddCommMonoid.toAddMonoid.{u2} A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A _inst_2))] (r₁ : R) (r₂ : R), Eq.{max (succ u1) (succ u2)} (Unitization.{u1, u2} R A) (Unitization.inl.{u1, u2} R A (MulZeroClass.toHasZero.{u2} A (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} A _inst_2)) (HMul.hMul.{u1, u1, u1} R R R (instHMul.{u1} R (MulOneClass.toHasMul.{u1} R (Monoid.toMulOneClass.{u1} R _inst_1))) r₁ r₂)) (HMul.hMul.{max u1 u2, max u1 u2, max u1 u2} (Unitization.{u1, u2} R A) (Unitization.{u1, u2} R A) (Unitization.{u1, u2} R A) (instHMul.{max u1 u2} (Unitization.{u1, u2} R A) (Unitization.hasMul.{u1, u2} R A (MulOneClass.toHasMul.{u1} R (Monoid.toMulOneClass.{u1} R _inst_1)) (Distrib.toHasAdd.{u2} A (NonUnitalNonAssocSemiring.toDistrib.{u2} A _inst_2)) (Distrib.toHasMul.{u2} A (NonUnitalNonAssocSemiring.toDistrib.{u2} A _inst_2)) (SMulZeroClass.toHasSmul.{u1, u2} R A (AddZeroClass.toHasZero.{u2} A (AddMonoid.toAddZeroClass.{u2} A (AddCommMonoid.toAddMonoid.{u2} A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A _inst_2)))) (DistribSMul.toSmulZeroClass.{u1, u2} R A (AddMonoid.toAddZeroClass.{u2} A (AddCommMonoid.toAddMonoid.{u2} A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A _inst_2))) (DistribMulAction.toDistribSMul.{u1, u2} R A _inst_1 (AddCommMonoid.toAddMonoid.{u2} A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A _inst_2)) _inst_3))))) (Unitization.inl.{u1, u2} R A (MulZeroClass.toHasZero.{u2} A (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} A _inst_2)) r₁) (Unitization.inl.{u1, u2} R A (MulZeroClass.toHasZero.{u2} A (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} A _inst_2)) r₂))
-but is expected to have type
-  forall {R : Type.{u2}} (A : Type.{u1}) [_inst_1 : Monoid.{u2} R] [_inst_2 : NonUnitalNonAssocSemiring.{u1} A] [_inst_3 : DistribMulAction.{u2, u1} R A _inst_1 (AddCommMonoid.toAddMonoid.{u1} A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A _inst_2))] (r₁ : R) (r₂ : R), Eq.{max (succ u2) (succ u1)} (Unitization.{u2, u1} R A) (Unitization.inl.{u2, u1} R A (MulZeroClass.toZero.{u1} A (NonUnitalNonAssocSemiring.toMulZeroClass.{u1} A _inst_2)) (HMul.hMul.{u2, u2, u2} R R R (instHMul.{u2} R (MulOneClass.toMul.{u2} R (Monoid.toMulOneClass.{u2} R _inst_1))) r₁ r₂)) (HMul.hMul.{max u2 u1, max u2 u1, max u2 u1} (Unitization.{u2, u1} R A) (Unitization.{u2, u1} R A) (Unitization.{u2, u1} R A) (instHMul.{max u2 u1} (Unitization.{u2, u1} R A) (Unitization.mul.{u2, u1} R A (MulOneClass.toMul.{u2} R (Monoid.toMulOneClass.{u2} R _inst_1)) (Distrib.toAdd.{u1} A (NonUnitalNonAssocSemiring.toDistrib.{u1} A _inst_2)) (NonUnitalNonAssocSemiring.toMul.{u1} A _inst_2) (SMulZeroClass.toSMul.{u2, u1} R A (MulZeroClass.toZero.{u1} A (NonUnitalNonAssocSemiring.toMulZeroClass.{u1} A _inst_2)) (DistribSMul.toSMulZeroClass.{u2, u1} R A (AddMonoid.toAddZeroClass.{u1} A (AddCommMonoid.toAddMonoid.{u1} A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A _inst_2))) (DistribMulAction.toDistribSMul.{u2, u1} R A _inst_1 (AddCommMonoid.toAddMonoid.{u1} A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A _inst_2)) _inst_3))))) (Unitization.inl.{u2, u1} R A (MulZeroClass.toZero.{u1} A (NonUnitalNonAssocSemiring.toMulZeroClass.{u1} A _inst_2)) r₁) (Unitization.inl.{u2, u1} R A (MulZeroClass.toZero.{u1} A (NonUnitalNonAssocSemiring.toMulZeroClass.{u1} A _inst_2)) r₂))
-Case conversion may be inaccurate. Consider using '#align unitization.inl_mul Unitization.inl_mulₓ'. -/
 @[simp]
 theorem inl_mul [Monoid R] [NonUnitalNonAssocSemiring A] [DistribMulAction R A] (r₁ r₂ : R) :
     (inl (r₁ * r₂) : Unitization R A) = inl r₁ * inl r₂ :=
@@ -575,12 +404,6 @@ theorem inl_mul [Monoid R] [NonUnitalNonAssocSemiring A] [DistribMulAction R A]
       simp only [smul_zero, add_zero, MulZeroClass.mul_zero]
 #align unitization.inl_mul Unitization.inl_mul
 
-/- warning: unitization.inl_mul_inl -> Unitization.inl_mul_inl is a dubious translation:
-lean 3 declaration is
-  forall {R : Type.{u1}} (A : Type.{u2}) [_inst_1 : Monoid.{u1} R] [_inst_2 : NonUnitalNonAssocSemiring.{u2} A] [_inst_3 : DistribMulAction.{u1, u2} R A _inst_1 (AddCommMonoid.toAddMonoid.{u2} A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A _inst_2))] (r₁ : R) (r₂ : R), Eq.{max (succ u1) (succ u2)} (Unitization.{u1, u2} R A) (HMul.hMul.{max u1 u2, max u1 u2, max u1 u2} (Unitization.{u1, u2} R A) (Unitization.{u1, u2} R A) (Unitization.{u1, u2} R A) (instHMul.{max u1 u2} (Unitization.{u1, u2} R A) (Unitization.hasMul.{u1, u2} R A (MulOneClass.toHasMul.{u1} R (Monoid.toMulOneClass.{u1} R _inst_1)) (Distrib.toHasAdd.{u2} A (NonUnitalNonAssocSemiring.toDistrib.{u2} A _inst_2)) (Distrib.toHasMul.{u2} A (NonUnitalNonAssocSemiring.toDistrib.{u2} A _inst_2)) (SMulZeroClass.toHasSmul.{u1, u2} R A (AddZeroClass.toHasZero.{u2} A (AddMonoid.toAddZeroClass.{u2} A (AddCommMonoid.toAddMonoid.{u2} A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A _inst_2)))) (DistribSMul.toSmulZeroClass.{u1, u2} R A (AddMonoid.toAddZeroClass.{u2} A (AddCommMonoid.toAddMonoid.{u2} A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A _inst_2))) (DistribMulAction.toDistribSMul.{u1, u2} R A _inst_1 (AddCommMonoid.toAddMonoid.{u2} A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A _inst_2)) _inst_3))))) (Unitization.inl.{u1, u2} R A (MulZeroClass.toHasZero.{u2} A (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} A _inst_2)) r₁) (Unitization.inl.{u1, u2} R A (MulZeroClass.toHasZero.{u2} A (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} A _inst_2)) r₂)) (Unitization.inl.{u1, u2} R A (MulZeroClass.toHasZero.{u2} A (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} A _inst_2)) (HMul.hMul.{u1, u1, u1} R R R (instHMul.{u1} R (MulOneClass.toHasMul.{u1} R (Monoid.toMulOneClass.{u1} R _inst_1))) r₁ r₂))
-but is expected to have type
-  forall {R : Type.{u2}} (A : Type.{u1}) [_inst_1 : Monoid.{u2} R] [_inst_2 : NonUnitalNonAssocSemiring.{u1} A] [_inst_3 : DistribMulAction.{u2, u1} R A _inst_1 (AddCommMonoid.toAddMonoid.{u1} A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A _inst_2))] (r₁ : R) (r₂ : R), Eq.{max (succ u2) (succ u1)} (Unitization.{u2, u1} R A) (HMul.hMul.{max u2 u1, max u2 u1, max u2 u1} (Unitization.{u2, u1} R A) (Unitization.{u2, u1} R A) (Unitization.{u2, u1} R A) (instHMul.{max u2 u1} (Unitization.{u2, u1} R A) (Unitization.mul.{u2, u1} R A (MulOneClass.toMul.{u2} R (Monoid.toMulOneClass.{u2} R _inst_1)) (Distrib.toAdd.{u1} A (NonUnitalNonAssocSemiring.toDistrib.{u1} A _inst_2)) (NonUnitalNonAssocSemiring.toMul.{u1} A _inst_2) (SMulZeroClass.toSMul.{u2, u1} R A (MulZeroClass.toZero.{u1} A (NonUnitalNonAssocSemiring.toMulZeroClass.{u1} A _inst_2)) (DistribSMul.toSMulZeroClass.{u2, u1} R A (AddMonoid.toAddZeroClass.{u1} A (AddCommMonoid.toAddMonoid.{u1} A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A _inst_2))) (DistribMulAction.toDistribSMul.{u2, u1} R A _inst_1 (AddCommMonoid.toAddMonoid.{u1} A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A _inst_2)) _inst_3))))) (Unitization.inl.{u2, u1} R A (MulZeroClass.toZero.{u1} A (NonUnitalNonAssocSemiring.toMulZeroClass.{u1} A _inst_2)) r₁) (Unitization.inl.{u2, u1} R A (MulZeroClass.toZero.{u1} A (NonUnitalNonAssocSemiring.toMulZeroClass.{u1} A _inst_2)) r₂)) (Unitization.inl.{u2, u1} R A (MulZeroClass.toZero.{u1} A (NonUnitalNonAssocSemiring.toMulZeroClass.{u1} A _inst_2)) (HMul.hMul.{u2, u2, u2} R R R (instHMul.{u2} R (MulOneClass.toMul.{u2} R (Monoid.toMulOneClass.{u2} R _inst_1))) r₁ r₂))
-Case conversion may be inaccurate. Consider using '#align unitization.inl_mul_inl Unitization.inl_mul_inlₓ'. -/
 theorem inl_mul_inl [Monoid R] [NonUnitalNonAssocSemiring A] [DistribMulAction R A] (r₁ r₂ : R) :
     (inl r₁ * inl r₂ : Unitization R A) = inl (r₁ * r₂) :=
   (inl_mul A r₁ r₂).symm
@@ -592,12 +415,6 @@ section
 
 variable (R)
 
-/- warning: unitization.coe_mul -> Unitization.inr_mul is a dubious translation:
-lean 3 declaration is
-  forall (R : Type.{u1}) {A : Type.{u2}} [_inst_1 : Semiring.{u1} R] [_inst_2 : AddCommMonoid.{u2} A] [_inst_3 : Mul.{u2} A] [_inst_4 : SMulWithZero.{u1, u2} R A (MulZeroClass.toHasZero.{u1} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) (AddZeroClass.toHasZero.{u2} A (AddMonoid.toAddZeroClass.{u2} A (AddCommMonoid.toAddMonoid.{u2} A _inst_2)))] (a₁ : A) (a₂ : A), Eq.{max (succ u1) (succ u2)} (Unitization.{u1, u2} R A) ((fun (a : Type.{u2}) (b : Sort.{max (succ u1) (succ u2)}) [self : HasLiftT.{succ u2, max (succ u1) (succ u2)} a b] => self.0) A (Unitization.{u1, u2} R A) (HasLiftT.mk.{succ u2, max (succ u1) (succ u2)} A (Unitization.{u1, u2} R A) (CoeTCₓ.coe.{succ u2, max (succ u1) (succ u2)} A (Unitization.{u1, u2} R A) (Unitization.hasCoeT.{u1, u2} R A (MulZeroClass.toHasZero.{u1} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))))))) (HMul.hMul.{u2, u2, u2} A A A (instHMul.{u2} A _inst_3) a₁ a₂)) (HMul.hMul.{max u1 u2, max u1 u2, max u1 u2} (Unitization.{u1, u2} R A) (Unitization.{u1, u2} R A) (Unitization.{u1, u2} R A) (instHMul.{max u1 u2} (Unitization.{u1, u2} R A) (Unitization.hasMul.{u1, u2} R A (Distrib.toHasMul.{u1} R (NonUnitalNonAssocSemiring.toDistrib.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) (AddZeroClass.toHasAdd.{u2} A (AddMonoid.toAddZeroClass.{u2} A (AddCommMonoid.toAddMonoid.{u2} A _inst_2))) _inst_3 (SMulZeroClass.toHasSmul.{u1, u2} R A (AddZeroClass.toHasZero.{u2} A (AddMonoid.toAddZeroClass.{u2} A (AddCommMonoid.toAddMonoid.{u2} A _inst_2))) (SMulWithZero.toSmulZeroClass.{u1, u2} R A (MulZeroClass.toHasZero.{u1} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) (AddZeroClass.toHasZero.{u2} A (AddMonoid.toAddZeroClass.{u2} A (AddCommMonoid.toAddMonoid.{u2} A _inst_2))) _inst_4)))) ((fun (a : Type.{u2}) (b : Sort.{max (succ u1) (succ u2)}) [self : HasLiftT.{succ u2, max (succ u1) (succ u2)} a b] => self.0) A (Unitization.{u1, u2} R A) (HasLiftT.mk.{succ u2, max (succ u1) (succ u2)} A (Unitization.{u1, u2} R A) (CoeTCₓ.coe.{succ u2, max (succ u1) (succ u2)} A (Unitization.{u1, u2} R A) (Unitization.hasCoeT.{u1, u2} R A (MulZeroClass.toHasZero.{u1} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))))))) a₁) ((fun (a : Type.{u2}) (b : Sort.{max (succ u1) (succ u2)}) [self : HasLiftT.{succ u2, max (succ u1) (succ u2)} a b] => self.0) A (Unitization.{u1, u2} R A) (HasLiftT.mk.{succ u2, max (succ u1) (succ u2)} A (Unitization.{u1, u2} R A) (CoeTCₓ.coe.{succ u2, max (succ u1) (succ u2)} A (Unitization.{u1, u2} R A) (Unitization.hasCoeT.{u1, u2} R A (MulZeroClass.toHasZero.{u1} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))))))) a₂))
-but is expected to have type
-  forall (R : Type.{u2}) {A : Type.{u1}} [_inst_1 : Semiring.{u2} R] [_inst_2 : AddCommMonoid.{u1} A] [_inst_3 : Mul.{u1} A] [_inst_4 : SMulWithZero.{u2, u1} R A (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (AddMonoid.toZero.{u1} A (AddCommMonoid.toAddMonoid.{u1} A _inst_2))] (a₁ : A) (a₂ : A), Eq.{max (succ u2) (succ u1)} (Unitization.{u2, u1} R A) (Unitization.inr.{u2, u1} R A (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (HMul.hMul.{u1, u1, u1} A A A (instHMul.{u1} A _inst_3) a₁ a₂)) (HMul.hMul.{max u2 u1, max u2 u1, max u2 u1} (Unitization.{u2, u1} R A) (Unitization.{u2, u1} R A) (Unitization.{u2, u1} R A) (instHMul.{max u2 u1} (Unitization.{u2, u1} R A) (Unitization.mul.{u2, u1} R A (NonUnitalNonAssocSemiring.toMul.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (AddZeroClass.toAdd.{u1} A (AddMonoid.toAddZeroClass.{u1} A (AddCommMonoid.toAddMonoid.{u1} A _inst_2))) _inst_3 (SMulZeroClass.toSMul.{u2, u1} R A (AddMonoid.toZero.{u1} A (AddCommMonoid.toAddMonoid.{u1} A _inst_2)) (SMulWithZero.toSMulZeroClass.{u2, u1} R A (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (AddMonoid.toZero.{u1} A (AddCommMonoid.toAddMonoid.{u1} A _inst_2)) _inst_4)))) (Unitization.inr.{u2, u1} R A (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) a₁) (Unitization.inr.{u2, u1} R A (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) a₂))
-Case conversion may be inaccurate. Consider using '#align unitization.coe_mul Unitization.inr_mulₓ'. -/
 @[simp]
 theorem inr_mul [Semiring R] [AddCommMonoid A] [Mul A] [SMulWithZero R A] (a₁ a₂ : A) :
     (↑(a₁ * a₂) : Unitization R A) = a₁ * a₂ :=
@@ -607,12 +424,6 @@ theorem inr_mul [Semiring R] [AddCommMonoid A] [Mul A] [SMulWithZero R A] (a₁
 
 end
 
-/- warning: unitization.inl_mul_coe -> Unitization.inl_mul_inr is a dubious translation:
-lean 3 declaration is
-  forall {R : Type.{u1}} {A : Type.{u2}} [_inst_1 : Semiring.{u1} R] [_inst_2 : NonUnitalNonAssocSemiring.{u2} A] [_inst_3 : DistribMulAction.{u1, u2} R A (MonoidWithZero.toMonoid.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1)) (AddCommMonoid.toAddMonoid.{u2} A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A _inst_2))] (r : R) (a : A), Eq.{max (succ u1) (succ u2)} (Unitization.{u1, u2} R A) (HMul.hMul.{max u1 u2, max u1 u2, max u1 u2} (Unitization.{u1, u2} R A) (Unitization.{u1, u2} R A) (Unitization.{u1, u2} R A) (instHMul.{max u1 u2} (Unitization.{u1, u2} R A) (Unitization.hasMul.{u1, u2} R A (Distrib.toHasMul.{u1} R (NonUnitalNonAssocSemiring.toDistrib.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) (Distrib.toHasAdd.{u2} A (NonUnitalNonAssocSemiring.toDistrib.{u2} A _inst_2)) (Distrib.toHasMul.{u2} A (NonUnitalNonAssocSemiring.toDistrib.{u2} A _inst_2)) (SMulZeroClass.toHasSmul.{u1, u2} R A (AddZeroClass.toHasZero.{u2} A (AddMonoid.toAddZeroClass.{u2} A (AddCommMonoid.toAddMonoid.{u2} A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A _inst_2)))) (DistribSMul.toSmulZeroClass.{u1, u2} R A (AddMonoid.toAddZeroClass.{u2} A (AddCommMonoid.toAddMonoid.{u2} A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A _inst_2))) (DistribMulAction.toDistribSMul.{u1, u2} R A (MonoidWithZero.toMonoid.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1)) (AddCommMonoid.toAddMonoid.{u2} A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A _inst_2)) _inst_3))))) (Unitization.inl.{u1, u2} R A (MulZeroClass.toHasZero.{u2} A (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} A _inst_2)) r) ((fun (a : Type.{u2}) (b : Sort.{max (succ u1) (succ u2)}) [self : HasLiftT.{succ u2, max (succ u1) (succ u2)} a b] => self.0) A (Unitization.{u1, u2} R A) (HasLiftT.mk.{succ u2, max (succ u1) (succ u2)} A (Unitization.{u1, u2} R A) (CoeTCₓ.coe.{succ u2, max (succ u1) (succ u2)} A (Unitization.{u1, u2} R A) (Unitization.hasCoeT.{u1, u2} R A (MulZeroClass.toHasZero.{u1} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))))))) a)) ((fun (a : Type.{u2}) (b : Sort.{max (succ u1) (succ u2)}) [self : HasLiftT.{succ u2, max (succ u1) (succ u2)} a b] => self.0) A (Unitization.{u1, u2} R A) (HasLiftT.mk.{succ u2, max (succ u1) (succ u2)} A (Unitization.{u1, u2} R A) (CoeTCₓ.coe.{succ u2, max (succ u1) (succ u2)} A (Unitization.{u1, u2} R A) (Unitization.hasCoeT.{u1, u2} R A (MulZeroClass.toHasZero.{u1} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))))))) (SMul.smul.{u1, u2} R A (SMulZeroClass.toHasSmul.{u1, u2} R A (AddZeroClass.toHasZero.{u2} A (AddMonoid.toAddZeroClass.{u2} A (AddCommMonoid.toAddMonoid.{u2} A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A _inst_2)))) (DistribSMul.toSmulZeroClass.{u1, u2} R A (AddMonoid.toAddZeroClass.{u2} A (AddCommMonoid.toAddMonoid.{u2} A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A _inst_2))) (DistribMulAction.toDistribSMul.{u1, u2} R A (MonoidWithZero.toMonoid.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1)) (AddCommMonoid.toAddMonoid.{u2} A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A _inst_2)) _inst_3))) r a))
-but is expected to have type
-  forall {R : Type.{u2}} {A : Type.{u1}} [_inst_1 : Semiring.{u2} R] [_inst_2 : NonUnitalNonAssocSemiring.{u1} A] [_inst_3 : DistribMulAction.{u2, u1} R A (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (AddCommMonoid.toAddMonoid.{u1} A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A _inst_2))] (r : R) (a : A), Eq.{max (succ u2) (succ u1)} (Unitization.{u2, u1} R A) (HMul.hMul.{max u2 u1, max u2 u1, max u2 u1} (Unitization.{u2, u1} R A) (Unitization.{u2, u1} R A) (Unitization.{u2, u1} R A) (instHMul.{max u2 u1} (Unitization.{u2, u1} R A) (Unitization.mul.{u2, u1} R A (NonUnitalNonAssocSemiring.toMul.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Distrib.toAdd.{u1} A (NonUnitalNonAssocSemiring.toDistrib.{u1} A _inst_2)) (NonUnitalNonAssocSemiring.toMul.{u1} A _inst_2) (SMulZeroClass.toSMul.{u2, u1} R A (MulZeroClass.toZero.{u1} A (NonUnitalNonAssocSemiring.toMulZeroClass.{u1} A _inst_2)) (DistribSMul.toSMulZeroClass.{u2, u1} R A (AddMonoid.toAddZeroClass.{u1} A (AddCommMonoid.toAddMonoid.{u1} A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A _inst_2))) (DistribMulAction.toDistribSMul.{u2, u1} R A (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (AddCommMonoid.toAddMonoid.{u1} A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A _inst_2)) _inst_3))))) (Unitization.inl.{u2, u1} R A (MulZeroClass.toZero.{u1} A (NonUnitalNonAssocSemiring.toMulZeroClass.{u1} A _inst_2)) r) (Unitization.inr.{u2, u1} R A (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) a)) (Unitization.inr.{u2, u1} R A (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (HSMul.hSMul.{u2, u1, u1} R A A (instHSMul.{u2, u1} R A (SMulZeroClass.toSMul.{u2, u1} R A (MulZeroClass.toZero.{u1} A (NonUnitalNonAssocSemiring.toMulZeroClass.{u1} A _inst_2)) (DistribSMul.toSMulZeroClass.{u2, u1} R A (AddMonoid.toAddZeroClass.{u1} A (AddCommMonoid.toAddMonoid.{u1} A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A _inst_2))) (DistribMulAction.toDistribSMul.{u2, u1} R A (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (AddCommMonoid.toAddMonoid.{u1} A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A _inst_2)) _inst_3)))) r a))
-Case conversion may be inaccurate. Consider using '#align unitization.inl_mul_coe Unitization.inl_mul_inrₓ'. -/
 theorem inl_mul_inr [Semiring R] [NonUnitalNonAssocSemiring A] [DistribMulAction R A] (r : R)
     (a : A) : (inl r * a : Unitization R A) = ↑(r • a) :=
   ext (MulZeroClass.mul_zero r) <|
@@ -620,12 +431,6 @@ theorem inl_mul_inr [Semiring R] [NonUnitalNonAssocSemiring A] [DistribMulAction
       rw [smul_zero, add_zero, MulZeroClass.zero_mul, add_zero]
 #align unitization.inl_mul_coe Unitization.inl_mul_inr
 
-/- warning: unitization.coe_mul_inl -> Unitization.inr_mul_inl is a dubious translation:
-lean 3 declaration is
-  forall {R : Type.{u1}} {A : Type.{u2}} [_inst_1 : Semiring.{u1} R] [_inst_2 : NonUnitalNonAssocSemiring.{u2} A] [_inst_3 : DistribMulAction.{u1, u2} R A (MonoidWithZero.toMonoid.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1)) (AddCommMonoid.toAddMonoid.{u2} A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A _inst_2))] (r : R) (a : A), Eq.{max (succ u1) (succ u2)} (Unitization.{u1, u2} R A) (HMul.hMul.{max u1 u2, max u1 u2, max u1 u2} (Unitization.{u1, u2} R A) (Unitization.{u1, u2} R A) (Unitization.{u1, u2} R A) (instHMul.{max u1 u2} (Unitization.{u1, u2} R A) (Unitization.hasMul.{u1, u2} R A (Distrib.toHasMul.{u1} R (NonUnitalNonAssocSemiring.toDistrib.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) (Distrib.toHasAdd.{u2} A (NonUnitalNonAssocSemiring.toDistrib.{u2} A _inst_2)) (Distrib.toHasMul.{u2} A (NonUnitalNonAssocSemiring.toDistrib.{u2} A _inst_2)) (SMulZeroClass.toHasSmul.{u1, u2} R A (AddZeroClass.toHasZero.{u2} A (AddMonoid.toAddZeroClass.{u2} A (AddCommMonoid.toAddMonoid.{u2} A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A _inst_2)))) (DistribSMul.toSmulZeroClass.{u1, u2} R A (AddMonoid.toAddZeroClass.{u2} A (AddCommMonoid.toAddMonoid.{u2} A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A _inst_2))) (DistribMulAction.toDistribSMul.{u1, u2} R A (MonoidWithZero.toMonoid.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1)) (AddCommMonoid.toAddMonoid.{u2} A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A _inst_2)) _inst_3))))) ((fun (a : Type.{u2}) (b : Sort.{max (succ u1) (succ u2)}) [self : HasLiftT.{succ u2, max (succ u1) (succ u2)} a b] => self.0) A (Unitization.{u1, u2} R A) (HasLiftT.mk.{succ u2, max (succ u1) (succ u2)} A (Unitization.{u1, u2} R A) (CoeTCₓ.coe.{succ u2, max (succ u1) (succ u2)} A (Unitization.{u1, u2} R A) (Unitization.hasCoeT.{u1, u2} R A (MulZeroClass.toHasZero.{u1} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))))))) a) (Unitization.inl.{u1, u2} R A (MulZeroClass.toHasZero.{u2} A (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} A _inst_2)) r)) ((fun (a : Type.{u2}) (b : Sort.{max (succ u1) (succ u2)}) [self : HasLiftT.{succ u2, max (succ u1) (succ u2)} a b] => self.0) A (Unitization.{u1, u2} R A) (HasLiftT.mk.{succ u2, max (succ u1) (succ u2)} A (Unitization.{u1, u2} R A) (CoeTCₓ.coe.{succ u2, max (succ u1) (succ u2)} A (Unitization.{u1, u2} R A) (Unitization.hasCoeT.{u1, u2} R A (MulZeroClass.toHasZero.{u1} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))))))) (SMul.smul.{u1, u2} R A (SMulZeroClass.toHasSmul.{u1, u2} R A (AddZeroClass.toHasZero.{u2} A (AddMonoid.toAddZeroClass.{u2} A (AddCommMonoid.toAddMonoid.{u2} A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A _inst_2)))) (DistribSMul.toSmulZeroClass.{u1, u2} R A (AddMonoid.toAddZeroClass.{u2} A (AddCommMonoid.toAddMonoid.{u2} A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A _inst_2))) (DistribMulAction.toDistribSMul.{u1, u2} R A (MonoidWithZero.toMonoid.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1)) (AddCommMonoid.toAddMonoid.{u2} A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A _inst_2)) _inst_3))) r a))
-but is expected to have type
-  forall {R : Type.{u2}} {A : Type.{u1}} [_inst_1 : Semiring.{u2} R] [_inst_2 : NonUnitalNonAssocSemiring.{u1} A] [_inst_3 : DistribMulAction.{u2, u1} R A (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (AddCommMonoid.toAddMonoid.{u1} A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A _inst_2))] (r : R) (a : A), Eq.{max (succ u2) (succ u1)} (Unitization.{u2, u1} R A) (HMul.hMul.{max u2 u1, max u2 u1, max u2 u1} (Unitization.{u2, u1} R A) (Unitization.{u2, u1} R A) (Unitization.{u2, u1} R A) (instHMul.{max u2 u1} (Unitization.{u2, u1} R A) (Unitization.mul.{u2, u1} R A (NonUnitalNonAssocSemiring.toMul.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Distrib.toAdd.{u1} A (NonUnitalNonAssocSemiring.toDistrib.{u1} A _inst_2)) (NonUnitalNonAssocSemiring.toMul.{u1} A _inst_2) (SMulZeroClass.toSMul.{u2, u1} R A (MulZeroClass.toZero.{u1} A (NonUnitalNonAssocSemiring.toMulZeroClass.{u1} A _inst_2)) (DistribSMul.toSMulZeroClass.{u2, u1} R A (AddMonoid.toAddZeroClass.{u1} A (AddCommMonoid.toAddMonoid.{u1} A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A _inst_2))) (DistribMulAction.toDistribSMul.{u2, u1} R A (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (AddCommMonoid.toAddMonoid.{u1} A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A _inst_2)) _inst_3))))) (Unitization.inr.{u2, u1} R A (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) a) (Unitization.inl.{u2, u1} R A (MulZeroClass.toZero.{u1} A (NonUnitalNonAssocSemiring.toMulZeroClass.{u1} A _inst_2)) r)) (Unitization.inr.{u2, u1} R A (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (HSMul.hSMul.{u2, u1, u1} R A A (instHSMul.{u2, u1} R A (SMulZeroClass.toSMul.{u2, u1} R A (MulZeroClass.toZero.{u1} A (NonUnitalNonAssocSemiring.toMulZeroClass.{u1} A _inst_2)) (DistribSMul.toSMulZeroClass.{u2, u1} R A (AddMonoid.toAddZeroClass.{u1} A (AddCommMonoid.toAddMonoid.{u1} A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A _inst_2))) (DistribMulAction.toDistribSMul.{u2, u1} R A (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (AddCommMonoid.toAddMonoid.{u1} A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A _inst_2)) _inst_3)))) r a))
-Case conversion may be inaccurate. Consider using '#align unitization.coe_mul_inl Unitization.inr_mul_inlₓ'. -/
 theorem inr_mul_inl [Semiring R] [NonUnitalNonAssocSemiring A] [DistribMulAction R A] (r : R)
     (a : A) : (a * inl r : Unitization R A) = ↑(r • a) :=
   ext (MulZeroClass.zero_mul r) <|
@@ -734,46 +539,22 @@ variable {R A : Type _}
 instance [Star R] [Star A] : Star (Unitization R A) :=
   ⟨fun ra => (star ra.fst, star ra.snd)⟩
 
-/- warning: unitization.fst_star -> Unitization.fst_star is a dubious translation:
-lean 3 declaration is
-  forall {R : Type.{u1}} {A : Type.{u2}} [_inst_1 : Star.{u1} R] [_inst_2 : Star.{u2} A] (x : Unitization.{u1, u2} R A), Eq.{succ u1} R (Unitization.fst.{u1, u2} R A (Star.star.{max u1 u2} (Unitization.{u1, u2} R A) (Unitization.hasStar.{u1, u2} R A _inst_1 _inst_2) x)) (Star.star.{u1} R _inst_1 (Unitization.fst.{u1, u2} R A x))
-but is expected to have type
-  forall {R : Type.{u2}} {A : Type.{u1}} [_inst_1 : Star.{u2} R] [_inst_2 : Star.{u1} A] (x : Unitization.{u2, u1} R A), Eq.{succ u2} R (Unitization.fst.{u2, u1} R A (Star.star.{max u2 u1} (Unitization.{u2, u1} R A) (Unitization.toStar.{u2, u1} R A _inst_1 _inst_2) x)) (Star.star.{u2} R _inst_1 (Unitization.fst.{u2, u1} R A x))
-Case conversion may be inaccurate. Consider using '#align unitization.fst_star Unitization.fst_starₓ'. -/
 @[simp]
 theorem fst_star [Star R] [Star A] (x : Unitization R A) : (star x).fst = star x.fst :=
   rfl
 #align unitization.fst_star Unitization.fst_star
 
-/- warning: unitization.snd_star -> Unitization.snd_star is a dubious translation:
-lean 3 declaration is
-  forall {R : Type.{u1}} {A : Type.{u2}} [_inst_1 : Star.{u1} R] [_inst_2 : Star.{u2} A] (x : Unitization.{u1, u2} R A), Eq.{succ u2} A (Unitization.snd.{u1, u2} R A (Star.star.{max u1 u2} (Unitization.{u1, u2} R A) (Unitization.hasStar.{u1, u2} R A _inst_1 _inst_2) x)) (Star.star.{u2} A _inst_2 (Unitization.snd.{u1, u2} R A x))
-but is expected to have type
-  forall {R : Type.{u2}} {A : Type.{u1}} [_inst_1 : Star.{u2} R] [_inst_2 : Star.{u1} A] (x : Unitization.{u2, u1} R A), Eq.{succ u1} A (Unitization.snd.{u2, u1} R A (Star.star.{max u2 u1} (Unitization.{u2, u1} R A) (Unitization.toStar.{u2, u1} R A _inst_1 _inst_2) x)) (Star.star.{u1} A _inst_2 (Unitization.snd.{u2, u1} R A x))
-Case conversion may be inaccurate. Consider using '#align unitization.snd_star Unitization.snd_starₓ'. -/
 @[simp]
 theorem snd_star [Star R] [Star A] (x : Unitization R A) : (star x).snd = star x.snd :=
   rfl
 #align unitization.snd_star Unitization.snd_star
 
-/- warning: unitization.inl_star -> Unitization.inl_star is a dubious translation:
-lean 3 declaration is
-  forall {R : Type.{u1}} {A : Type.{u2}} [_inst_1 : Star.{u1} R] [_inst_2 : AddMonoid.{u2} A] [_inst_3 : StarAddMonoid.{u2} A _inst_2] (r : R), Eq.{max (succ u1) (succ u2)} (Unitization.{u1, u2} R A) (Unitization.inl.{u1, u2} R A (AddZeroClass.toHasZero.{u2} A (AddMonoid.toAddZeroClass.{u2} A _inst_2)) (Star.star.{u1} R _inst_1 r)) (Star.star.{max u1 u2} (Unitization.{u1, u2} R A) (Unitization.hasStar.{u1, u2} R A _inst_1 (InvolutiveStar.toHasStar.{u2} A (StarAddMonoid.toHasInvolutiveStar.{u2} A _inst_2 _inst_3))) (Unitization.inl.{u1, u2} R A (AddZeroClass.toHasZero.{u2} A (AddMonoid.toAddZeroClass.{u2} A _inst_2)) r))
-but is expected to have type
-  forall {R : Type.{u2}} {A : Type.{u1}} [_inst_1 : Star.{u2} R] [_inst_2 : AddMonoid.{u1} A] [_inst_3 : StarAddMonoid.{u1} A _inst_2] (r : R), Eq.{max (succ u2) (succ u1)} (Unitization.{u2, u1} R A) (Unitization.inl.{u2, u1} R A (AddMonoid.toZero.{u1} A _inst_2) (Star.star.{u2} R _inst_1 r)) (Star.star.{max u2 u1} (Unitization.{u2, u1} R A) (Unitization.toStar.{u2, u1} R A _inst_1 (InvolutiveStar.toStar.{u1} A (StarAddMonoid.toInvolutiveStar.{u1} A _inst_2 _inst_3))) (Unitization.inl.{u2, u1} R A (AddMonoid.toZero.{u1} A _inst_2) r))
-Case conversion may be inaccurate. Consider using '#align unitization.inl_star Unitization.inl_starₓ'. -/
 @[simp]
 theorem inl_star [Star R] [AddMonoid A] [StarAddMonoid A] (r : R) :
     inl (star r) = star (inl r : Unitization R A) :=
   ext rfl (by simp only [snd_star, star_zero, snd_inl])
 #align unitization.inl_star Unitization.inl_star
 
-/- warning: unitization.coe_star -> Unitization.inr_star is a dubious translation:
-lean 3 declaration is
-  forall {R : Type.{u1}} {A : Type.{u2}} [_inst_1 : AddMonoid.{u1} R] [_inst_2 : StarAddMonoid.{u1} R _inst_1] [_inst_3 : Star.{u2} A] (a : A), Eq.{succ (max u1 u2)} (Unitization.{u1, u2} R A) ((fun (a : Type.{u2}) (b : Type.{max u1 u2}) [self : HasLiftT.{succ u2, succ (max u1 u2)} a b] => self.0) A (Unitization.{u1, u2} R A) (HasLiftT.mk.{succ u2, succ (max u1 u2)} A (Unitization.{u1, u2} R A) (CoeTCₓ.coe.{succ u2, succ (max u1 u2)} A (Unitization.{u1, u2} R A) (Unitization.hasCoeT.{u1, u2} R A (AddZeroClass.toHasZero.{u1} R (AddMonoid.toAddZeroClass.{u1} R _inst_1))))) (Star.star.{u2} A _inst_3 a)) (Star.star.{max u1 u2} (Unitization.{u1, u2} R A) (Unitization.hasStar.{u1, u2} R A (InvolutiveStar.toHasStar.{u1} R (StarAddMonoid.toHasInvolutiveStar.{u1} R _inst_1 _inst_2)) _inst_3) ((fun (a : Type.{u2}) (b : Sort.{max (succ u1) (succ u2)}) [self : HasLiftT.{succ u2, max (succ u1) (succ u2)} a b] => self.0) A (Unitization.{u1, u2} R A) (HasLiftT.mk.{succ u2, max (succ u1) (succ u2)} A (Unitization.{u1, u2} R A) (CoeTCₓ.coe.{succ u2, max (succ u1) (succ u2)} A (Unitization.{u1, u2} R A) (Unitization.hasCoeT.{u1, u2} R A (AddZeroClass.toHasZero.{u1} R (AddMonoid.toAddZeroClass.{u1} R _inst_1))))) a))
-but is expected to have type
-  forall {R : Type.{u2}} {A : Type.{u1}} [_inst_1 : AddMonoid.{u2} R] [_inst_2 : StarAddMonoid.{u2} R _inst_1] [_inst_3 : Star.{u1} A] (a : A), Eq.{max (succ u2) (succ u1)} (Unitization.{u2, u1} R A) (Unitization.inr.{u2, u1} R A (AddMonoid.toZero.{u2} R _inst_1) (Star.star.{u1} A _inst_3 a)) (Star.star.{max u2 u1} (Unitization.{u2, u1} R A) (Unitization.toStar.{u2, u1} R A (InvolutiveStar.toStar.{u2} R (StarAddMonoid.toInvolutiveStar.{u2} R _inst_1 _inst_2)) _inst_3) (Unitization.inr.{u2, u1} R A (AddMonoid.toZero.{u2} R _inst_1) a))
-Case conversion may be inaccurate. Consider using '#align unitization.coe_star Unitization.inr_starₓ'. -/
 @[simp]
 theorem inr_star [AddMonoid R] [StarAddMonoid R] [Star A] (a : A) :
     ↑(star a) = star (a : Unitization R A) :=
@@ -806,9 +587,6 @@ variable (S R A : Type _) [CommSemiring S] [CommSemiring R] [NonUnitalSemiring A
   [IsScalarTower R A A] [SMulCommClass R A A] [Algebra S R] [DistribMulAction S A]
   [IsScalarTower S R A]
 
-/- warning: unitization.algebra -> Unitization.algebra is a dubious translation:
-<too large>
-Case conversion may be inaccurate. Consider using '#align unitization.algebra Unitization.algebraₓ'. -/
 instance algebra : Algebra S (Unitization R A) :=
   {
     (Unitization.inlRingHom R A).comp
@@ -826,41 +604,23 @@ instance algebra : Algebra S (Unitization R A) :=
       rw [inl_mul_inl, inl_mul_coe, smul_one_mul, inl_smul, coe_smul, smul_one_smul] }
 #align unitization.algebra Unitization.algebra
 
-/- warning: unitization.algebra_map_eq_inl_comp -> Unitization.algebraMap_eq_inl_comp is a dubious translation:
-<too large>
-Case conversion may be inaccurate. Consider using '#align unitization.algebra_map_eq_inl_comp Unitization.algebraMap_eq_inl_compₓ'. -/
 theorem algebraMap_eq_inl_comp : ⇑(algebraMap S (Unitization R A)) = inl ∘ algebraMap S R :=
   rfl
 #align unitization.algebra_map_eq_inl_comp Unitization.algebraMap_eq_inl_comp
 
-/- warning: unitization.algebra_map_eq_inl_ring_hom_comp -> Unitization.algebraMap_eq_inlRingHom_comp is a dubious translation:
-<too large>
-Case conversion may be inaccurate. Consider using '#align unitization.algebra_map_eq_inl_ring_hom_comp Unitization.algebraMap_eq_inlRingHom_compₓ'. -/
 theorem algebraMap_eq_inlRingHom_comp :
     algebraMap S (Unitization R A) = (inlRingHom R A).comp (algebraMap S R) :=
   rfl
 #align unitization.algebra_map_eq_inl_ring_hom_comp Unitization.algebraMap_eq_inlRingHom_comp
 
-/- warning: unitization.algebra_map_eq_inl -> Unitization.algebraMap_eq_inl is a dubious translation:
-<too large>
-Case conversion may be inaccurate. Consider using '#align unitization.algebra_map_eq_inl Unitization.algebraMap_eq_inlₓ'. -/
 theorem algebraMap_eq_inl : ⇑(algebraMap R (Unitization R A)) = inl :=
   rfl
 #align unitization.algebra_map_eq_inl Unitization.algebraMap_eq_inl
 
-/- warning: unitization.algebra_map_eq_inl_hom -> Unitization.algebraMap_eq_inl_hom is a dubious translation:
-<too large>
-Case conversion may be inaccurate. Consider using '#align unitization.algebra_map_eq_inl_hom Unitization.algebraMap_eq_inl_homₓ'. -/
 theorem algebraMap_eq_inl_hom : algebraMap R (Unitization R A) = inlRingHom R A :=
   rfl
 #align unitization.algebra_map_eq_inl_hom Unitization.algebraMap_eq_inl_hom
 
-/- warning: unitization.fst_hom -> Unitization.fstHom is a dubious translation:
-lean 3 declaration is
-  forall (R : Type.{u1}) (A : Type.{u2}) [_inst_2 : CommSemiring.{u1} R] [_inst_3 : NonUnitalSemiring.{u2} A] [_inst_4 : Module.{u1, u2} R A (CommSemiring.toSemiring.{u1} R _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u2} A _inst_3))] [_inst_5 : IsScalarTower.{u1, u2, u2} R A A (SMulZeroClass.toHasSmul.{u1, u2} R A (AddZeroClass.toHasZero.{u2} A (AddMonoid.toAddZeroClass.{u2} A (AddCommMonoid.toAddMonoid.{u2} A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u2} A _inst_3))))) (SMulWithZero.toSmulZeroClass.{u1, u2} R A (MulZeroClass.toHasZero.{u1} R (MulZeroOneClass.toMulZeroClass.{u1} R (MonoidWithZero.toMulZeroOneClass.{u1} R (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R _inst_2))))) (AddZeroClass.toHasZero.{u2} A (AddMonoid.toAddZeroClass.{u2} A (AddCommMonoid.toAddMonoid.{u2} A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u2} A _inst_3))))) (MulActionWithZero.toSMulWithZero.{u1, u2} R A (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R _inst_2)) (AddZeroClass.toHasZero.{u2} A (AddMonoid.toAddZeroClass.{u2} A (AddCommMonoid.toAddMonoid.{u2} A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u2} A _inst_3))))) (Module.toMulActionWithZero.{u1, u2} R A (CommSemiring.toSemiring.{u1} R _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u2} A _inst_3)) _inst_4)))) (Mul.toSMul.{u2} A (Distrib.toHasMul.{u2} A (NonUnitalNonAssocSemiring.toDistrib.{u2} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u2} A _inst_3)))) (SMulZeroClass.toHasSmul.{u1, u2} R A (AddZeroClass.toHasZero.{u2} A (AddMonoid.toAddZeroClass.{u2} A (AddCommMonoid.toAddMonoid.{u2} A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u2} A _inst_3))))) (SMulWithZero.toSmulZeroClass.{u1, u2} R A (MulZeroClass.toHasZero.{u1} R (MulZeroOneClass.toMulZeroClass.{u1} R (MonoidWithZero.toMulZeroOneClass.{u1} R (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R _inst_2))))) (AddZeroClass.toHasZero.{u2} A (AddMonoid.toAddZeroClass.{u2} A (AddCommMonoid.toAddMonoid.{u2} A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u2} A _inst_3))))) (MulActionWithZero.toSMulWithZero.{u1, u2} R A (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R _inst_2)) (AddZeroClass.toHasZero.{u2} A (AddMonoid.toAddZeroClass.{u2} A (AddCommMonoid.toAddMonoid.{u2} A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u2} A _inst_3))))) (Module.toMulActionWithZero.{u1, u2} R A (CommSemiring.toSemiring.{u1} R _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u2} A _inst_3)) _inst_4))))] [_inst_6 : SMulCommClass.{u1, u2, u2} R A A (SMulZeroClass.toHasSmul.{u1, u2} R A (AddZeroClass.toHasZero.{u2} A (AddMonoid.toAddZeroClass.{u2} A (AddCommMonoid.toAddMonoid.{u2} A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u2} A _inst_3))))) (SMulWithZero.toSmulZeroClass.{u1, u2} R A (MulZeroClass.toHasZero.{u1} R (MulZeroOneClass.toMulZeroClass.{u1} R (MonoidWithZero.toMulZeroOneClass.{u1} R (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R _inst_2))))) (AddZeroClass.toHasZero.{u2} A (AddMonoid.toAddZeroClass.{u2} A (AddCommMonoid.toAddMonoid.{u2} A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u2} A _inst_3))))) (MulActionWithZero.toSMulWithZero.{u1, u2} R A (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R _inst_2)) (AddZeroClass.toHasZero.{u2} A (AddMonoid.toAddZeroClass.{u2} A (AddCommMonoid.toAddMonoid.{u2} A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u2} A _inst_3))))) (Module.toMulActionWithZero.{u1, u2} R A (CommSemiring.toSemiring.{u1} R _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u2} A _inst_3)) _inst_4)))) (Mul.toSMul.{u2} A (Distrib.toHasMul.{u2} A (NonUnitalNonAssocSemiring.toDistrib.{u2} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u2} A _inst_3))))], AlgHom.{u1, max u1 u2, u1} R (Unitization.{u1, u2} R A) R _inst_2 (Unitization.semiring.{u1, u2} R A _inst_2 _inst_3 _inst_4 _inst_5 _inst_6) (CommSemiring.toSemiring.{u1} R _inst_2) (Unitization.algebra.{u1, u1, u2} R R A _inst_2 _inst_2 _inst_3 _inst_4 _inst_5 _inst_6 (Algebra.id.{u1} R _inst_2) (Module.toDistribMulAction.{u1, u2} R A (CommSemiring.toSemiring.{u1} R _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u2} A _inst_3)) _inst_4) (Unitization.fstHom._proof_1.{u1, u2} R A _inst_2 _inst_3 _inst_4)) (Algebra.id.{u1} R _inst_2)
-but is expected to have type
-  forall (R : Type.{u1}) (A : Type.{u2}) [_inst_2 : CommSemiring.{u1} R] [_inst_3 : NonUnitalSemiring.{u2} A] [_inst_4 : Module.{u1, u2} R A (CommSemiring.toSemiring.{u1} R _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u2} A _inst_3))] [_inst_5 : IsScalarTower.{u1, u2, u2} R A A (SMulZeroClass.toSMul.{u1, u2} R A (SemigroupWithZero.toZero.{u2} A (NonUnitalSemiring.toSemigroupWithZero.{u2} A _inst_3)) (SMulWithZero.toSMulZeroClass.{u1, u2} R A (CommMonoidWithZero.toZero.{u1} R (CommSemiring.toCommMonoidWithZero.{u1} R _inst_2)) (SemigroupWithZero.toZero.{u2} A (NonUnitalSemiring.toSemigroupWithZero.{u2} A _inst_3)) (MulActionWithZero.toSMulWithZero.{u1, u2} R A (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R _inst_2)) (SemigroupWithZero.toZero.{u2} A (NonUnitalSemiring.toSemigroupWithZero.{u2} A _inst_3)) (Module.toMulActionWithZero.{u1, u2} R A (CommSemiring.toSemiring.{u1} R _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u2} A _inst_3)) _inst_4)))) (SMulZeroClass.toSMul.{u2, u2} A A (SemigroupWithZero.toZero.{u2} A (NonUnitalSemiring.toSemigroupWithZero.{u2} A _inst_3)) (SMulWithZero.toSMulZeroClass.{u2, u2} A A (SemigroupWithZero.toZero.{u2} A (NonUnitalSemiring.toSemigroupWithZero.{u2} A _inst_3)) (SemigroupWithZero.toZero.{u2} A (NonUnitalSemiring.toSemigroupWithZero.{u2} A _inst_3)) (MulZeroClass.toSMulWithZero.{u2} A (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u2} A _inst_3))))) (SMulZeroClass.toSMul.{u1, u2} R A (SemigroupWithZero.toZero.{u2} A (NonUnitalSemiring.toSemigroupWithZero.{u2} A _inst_3)) (SMulWithZero.toSMulZeroClass.{u1, u2} R A (CommMonoidWithZero.toZero.{u1} R (CommSemiring.toCommMonoidWithZero.{u1} R _inst_2)) (SemigroupWithZero.toZero.{u2} A (NonUnitalSemiring.toSemigroupWithZero.{u2} A _inst_3)) (MulActionWithZero.toSMulWithZero.{u1, u2} R A (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R _inst_2)) (SemigroupWithZero.toZero.{u2} A (NonUnitalSemiring.toSemigroupWithZero.{u2} A _inst_3)) (Module.toMulActionWithZero.{u1, u2} R A (CommSemiring.toSemiring.{u1} R _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u2} A _inst_3)) _inst_4))))] [_inst_6 : SMulCommClass.{u1, u2, u2} R A A (SMulZeroClass.toSMul.{u1, u2} R A (SemigroupWithZero.toZero.{u2} A (NonUnitalSemiring.toSemigroupWithZero.{u2} A _inst_3)) (SMulWithZero.toSMulZeroClass.{u1, u2} R A (CommMonoidWithZero.toZero.{u1} R (CommSemiring.toCommMonoidWithZero.{u1} R _inst_2)) (SemigroupWithZero.toZero.{u2} A (NonUnitalSemiring.toSemigroupWithZero.{u2} A _inst_3)) (MulActionWithZero.toSMulWithZero.{u1, u2} R A (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R _inst_2)) (SemigroupWithZero.toZero.{u2} A (NonUnitalSemiring.toSemigroupWithZero.{u2} A _inst_3)) (Module.toMulActionWithZero.{u1, u2} R A (CommSemiring.toSemiring.{u1} R _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u2} A _inst_3)) _inst_4)))) (SMulZeroClass.toSMul.{u2, u2} A A (SemigroupWithZero.toZero.{u2} A (NonUnitalSemiring.toSemigroupWithZero.{u2} A _inst_3)) (SMulWithZero.toSMulZeroClass.{u2, u2} A A (SemigroupWithZero.toZero.{u2} A (NonUnitalSemiring.toSemigroupWithZero.{u2} A _inst_3)) (SemigroupWithZero.toZero.{u2} A (NonUnitalSemiring.toSemigroupWithZero.{u2} A _inst_3)) (MulZeroClass.toSMulWithZero.{u2} A (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u2} A _inst_3)))))], AlgHom.{u1, max u2 u1, u1} R (Unitization.{u1, u2} R A) R _inst_2 (Unitization.semiring.{u1, u2} R A _inst_2 _inst_3 _inst_4 _inst_5 _inst_6) (CommSemiring.toSemiring.{u1} R _inst_2) (Unitization.algebra.{u1, u1, u2} R R A _inst_2 _inst_2 _inst_3 _inst_4 _inst_5 _inst_6 (Algebra.id.{u1} R _inst_2) (Module.toDistribMulAction.{u1, u2} R A (CommSemiring.toSemiring.{u1} R _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u2} A _inst_3)) _inst_4) (IsScalarTower.left.{u1, u2} R A (MonoidWithZero.toMonoid.{u1} R (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R _inst_2))) (MulActionWithZero.toMulAction.{u1, u2} R A (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R _inst_2)) (SemigroupWithZero.toZero.{u2} A (NonUnitalSemiring.toSemigroupWithZero.{u2} A _inst_3)) (Module.toMulActionWithZero.{u1, u2} R A (CommSemiring.toSemiring.{u1} R _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u2} A _inst_3)) _inst_4)))) (Algebra.id.{u1} R _inst_2)
-Case conversion may be inaccurate. Consider using '#align unitization.fst_hom Unitization.fstHomₓ'. -/
 /-- The canonical `R`-algebra projection `unitization R A → R`. -/
 @[simps]
 def fstHom : Unitization R A →ₐ[R] R where
@@ -898,9 +658,6 @@ variable {S R A : Type _} [CommSemiring S] [CommSemiring R] [NonUnitalSemiring A
   [SMulCommClass R A A] [IsScalarTower R A A] {B : Type _} [Semiring B] [Algebra S B] [Algebra S R]
   [DistribMulAction S A] [IsScalarTower S R A] {C : Type _} [Ring C] [Algebra R C]
 
-/- warning: unitization.alg_hom_ext -> Unitization.algHom_ext is a dubious translation:
-<too large>
-Case conversion may be inaccurate. Consider using '#align unitization.alg_hom_ext Unitization.algHom_extₓ'. -/
 theorem algHom_ext {φ ψ : Unitization R A →ₐ[S] B} (h : ∀ a : A, φ a = ψ a)
     (h' : ∀ r, φ (algebraMap R (Unitization R A) r) = ψ (algebraMap R (Unitization R A) r)) :
     φ = ψ := by
@@ -909,9 +666,6 @@ theorem algHom_ext {φ ψ : Unitization R A →ₐ[S] B} (h : ∀ a : A, φ a =
   simp only [map_add, ← algebra_map_eq_inl, h, h']
 #align unitization.alg_hom_ext Unitization.algHom_ext
 
-/- warning: unitization.alg_hom_ext' -> Unitization.algHom_ext' is a dubious translation:
-<too large>
-Case conversion may be inaccurate. Consider using '#align unitization.alg_hom_ext' Unitization.algHom_ext'ₓ'. -/
 /-- See note [partially-applied ext lemmas] -/
 @[ext]
 theorem algHom_ext' {φ ψ : Unitization R A →ₐ[R] C}
@@ -922,9 +676,6 @@ theorem algHom_ext' {φ ψ : Unitization R A →ₐ[R] C}
   algHom_ext (NonUnitalAlgHom.congr_fun h) (by simp [AlgHom.commutes])
 #align unitization.alg_hom_ext' Unitization.algHom_ext'
 
-/- warning: unitization.lift -> Unitization.lift is a dubious translation:
-<too large>
-Case conversion may be inaccurate. Consider using '#align unitization.lift Unitization.liftₓ'. -/
 /-- Non-unital algebra homomorphisms from `A` into a unital `R`-algebra `C` lift uniquely to
 `unitization R A →ₐ[R] C`. This is the universal property of the unitization. -/
 @[simps apply_apply]
@@ -956,9 +707,6 @@ def lift : (A →ₙₐ[R] C) ≃ (Unitization R A →ₐ[R] C)
   right_inv φ := Unitization.algHom_ext' (by ext; simp)
 #align unitization.lift Unitization.lift
 
-/- warning: unitization.lift_symm_apply -> Unitization.lift_symm_apply is a dubious translation:
-<too large>
-Case conversion may be inaccurate. Consider using '#align unitization.lift_symm_apply Unitization.lift_symm_applyₓ'. -/
 theorem lift_symm_apply (φ : Unitization R A →ₐ[R] C) (a : A) : Unitization.lift.symm φ a = φ a :=
   rfl
 #align unitization.lift_symm_apply Unitization.lift_symm_apply
Diff
@@ -666,17 +666,13 @@ instance [Semiring R] [NonUnitalNonAssocSemiring A] [Module R A] :
         show
           x₁.1 • (x₂.2 + x₃.2) + (x₂.1 + x₃.1) • x₁.2 + x₁.2 * (x₂.2 + x₃.2) =
             x₁.1 • x₂.2 + x₂.1 • x₁.2 + x₁.2 * x₂.2 + (x₁.1 • x₃.2 + x₃.1 • x₁.2 + x₁.2 * x₃.2)
-          by
-          simp only [smul_add, add_smul, mul_add]
-          abel
+          by simp only [smul_add, add_smul, mul_add]; abel
     right_distrib := fun x₁ x₂ x₃ =>
       ext (add_mul x₁.1 x₂.1 x₃.1) <|
         show
           (x₁.1 + x₂.1) • x₃.2 + x₃.1 • (x₁.2 + x₂.2) + (x₁.2 + x₂.2) * x₃.2 =
             x₁.1 • x₃.2 + x₃.1 • x₁.2 + x₁.2 * x₃.2 + (x₂.1 • x₃.2 + x₃.1 • x₂.2 + x₂.2 * x₃.2)
-          by
-          simp only [add_smul, smul_add, add_mul]
-          abel }
+          by simp only [add_smul, smul_add, add_mul]; abel }
 
 instance [CommMonoid R] [NonUnitalSemiring A] [DistribMulAction R A] [IsScalarTower R A A]
     [SMulCommClass R A A] : Monoid (Unitization R A) :=
@@ -956,14 +952,8 @@ def lift : (A →ₙₐ[R] C) ≃ (Unitization R A →ₐ[R] C)
       commutes' := fun r => by
         simp only [algebra_map_eq_inl, fst_inl, snd_inl, φ.map_zero, add_zero] }
   invFun φ := φ.toNonUnitalAlgHom.comp (inrNonUnitalAlgHom R A)
-  left_inv φ := by
-    ext
-    simp
-  right_inv φ :=
-    Unitization.algHom_ext'
-      (by
-        ext
-        simp)
+  left_inv φ := by ext; simp
+  right_inv φ := Unitization.algHom_ext' (by ext; simp)
 #align unitization.lift Unitization.lift
 
 /- warning: unitization.lift_symm_apply -> Unitization.lift_symm_apply is a dubious translation:
Diff
@@ -457,10 +457,7 @@ theorem ind {R A} [AddZeroClass R] [AddZeroClass A] {P : Unitization R A → Pro
 #align unitization.ind Unitization.ind
 
 /- warning: unitization.linear_map_ext -> Unitization.linearMap_ext is a dubious translation:
-lean 3 declaration is
-  forall {S : Type.{u1}} {R : Type.{u2}} {A : Type.{u3}} {N : Type.{u4}} [_inst_1 : Semiring.{u1} S] [_inst_2 : AddCommMonoid.{u2} R] [_inst_3 : AddCommMonoid.{u3} A] [_inst_4 : AddCommMonoid.{u4} N] [_inst_5 : Module.{u1, u2} S R _inst_1 _inst_2] [_inst_6 : Module.{u1, u3} S A _inst_1 _inst_3] [_inst_7 : Module.{u1, u4} S N _inst_1 _inst_4] {{f : LinearMap.{u1, u1, max u2 u3, u4} S S _inst_1 _inst_1 (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_1)) (Unitization.{u2, u3} R A) N (Unitization.addCommMonoid.{u2, u3} R A _inst_2 _inst_3) _inst_4 (Unitization.module.{u1, u2, u3} S R A _inst_1 _inst_2 _inst_3 _inst_5 _inst_6) _inst_7}} {{g : LinearMap.{u1, u1, max u2 u3, u4} S S _inst_1 _inst_1 (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_1)) (Unitization.{u2, u3} R A) N (Unitization.addCommMonoid.{u2, u3} R A _inst_2 _inst_3) _inst_4 (Unitization.module.{u1, u2, u3} S R A _inst_1 _inst_2 _inst_3 _inst_5 _inst_6) _inst_7}}, (forall (r : R), Eq.{succ u4} N (coeFn.{max (succ (max u2 u3)) (succ u4), max (succ (max u2 u3)) (succ u4)} (LinearMap.{u1, u1, max u2 u3, u4} S S _inst_1 _inst_1 (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_1)) (Unitization.{u2, u3} R A) N (Unitization.addCommMonoid.{u2, u3} R A _inst_2 _inst_3) _inst_4 (Unitization.module.{u1, u2, u3} S R A _inst_1 _inst_2 _inst_3 _inst_5 _inst_6) _inst_7) (fun (_x : LinearMap.{u1, u1, max u2 u3, u4} S S _inst_1 _inst_1 (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_1)) (Unitization.{u2, u3} R A) N (Unitization.addCommMonoid.{u2, u3} R A _inst_2 _inst_3) _inst_4 (Unitization.module.{u1, u2, u3} S R A _inst_1 _inst_2 _inst_3 _inst_5 _inst_6) _inst_7) => (Unitization.{u2, u3} R A) -> N) (LinearMap.hasCoeToFun.{u1, u1, max u2 u3, u4} S S (Unitization.{u2, u3} R A) N _inst_1 _inst_1 (Unitization.addCommMonoid.{u2, u3} R A _inst_2 _inst_3) _inst_4 (Unitization.module.{u1, u2, u3} S R A _inst_1 _inst_2 _inst_3 _inst_5 _inst_6) _inst_7 (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_1))) f (Unitization.inl.{u2, u3} R A (AddZeroClass.toHasZero.{u3} A (AddMonoid.toAddZeroClass.{u3} A (AddCommMonoid.toAddMonoid.{u3} A _inst_3))) r)) (coeFn.{max (succ (max u2 u3)) (succ u4), max (succ (max u2 u3)) (succ u4)} (LinearMap.{u1, u1, max u2 u3, u4} S S _inst_1 _inst_1 (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_1)) (Unitization.{u2, u3} R A) N (Unitization.addCommMonoid.{u2, u3} R A _inst_2 _inst_3) _inst_4 (Unitization.module.{u1, u2, u3} S R A _inst_1 _inst_2 _inst_3 _inst_5 _inst_6) _inst_7) (fun (_x : LinearMap.{u1, u1, max u2 u3, u4} S S _inst_1 _inst_1 (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_1)) (Unitization.{u2, u3} R A) N (Unitization.addCommMonoid.{u2, u3} R A _inst_2 _inst_3) _inst_4 (Unitization.module.{u1, u2, u3} S R A _inst_1 _inst_2 _inst_3 _inst_5 _inst_6) _inst_7) => (Unitization.{u2, u3} R A) -> N) (LinearMap.hasCoeToFun.{u1, u1, max u2 u3, u4} S S (Unitization.{u2, u3} R A) N _inst_1 _inst_1 (Unitization.addCommMonoid.{u2, u3} R A _inst_2 _inst_3) _inst_4 (Unitization.module.{u1, u2, u3} S R A _inst_1 _inst_2 _inst_3 _inst_5 _inst_6) _inst_7 (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_1))) g (Unitization.inl.{u2, u3} R A (AddZeroClass.toHasZero.{u3} A (AddMonoid.toAddZeroClass.{u3} A (AddCommMonoid.toAddMonoid.{u3} A _inst_3))) r))) -> (forall (a : A), Eq.{succ u4} N (coeFn.{max (succ (max u2 u3)) (succ u4), max (succ (max u2 u3)) (succ u4)} (LinearMap.{u1, u1, max u2 u3, u4} S S _inst_1 _inst_1 (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_1)) (Unitization.{u2, u3} R A) N (Unitization.addCommMonoid.{u2, u3} R A _inst_2 _inst_3) _inst_4 (Unitization.module.{u1, u2, u3} S R A _inst_1 _inst_2 _inst_3 _inst_5 _inst_6) _inst_7) (fun (_x : LinearMap.{u1, u1, max u2 u3, u4} S S _inst_1 _inst_1 (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_1)) (Unitization.{u2, u3} R A) N (Unitization.addCommMonoid.{u2, u3} R A _inst_2 _inst_3) _inst_4 (Unitization.module.{u1, u2, u3} S R A _inst_1 _inst_2 _inst_3 _inst_5 _inst_6) _inst_7) => (Unitization.{u2, u3} R A) -> N) (LinearMap.hasCoeToFun.{u1, u1, max u2 u3, u4} S S (Unitization.{u2, u3} R A) N _inst_1 _inst_1 (Unitization.addCommMonoid.{u2, u3} R A _inst_2 _inst_3) _inst_4 (Unitization.module.{u1, u2, u3} S R A _inst_1 _inst_2 _inst_3 _inst_5 _inst_6) _inst_7 (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_1))) f ((fun (a : Type.{u3}) (b : Sort.{max (succ u2) (succ u3)}) [self : HasLiftT.{succ u3, max (succ u2) (succ u3)} a b] => self.0) A (Unitization.{u2, u3} R A) (HasLiftT.mk.{succ u3, max (succ u2) (succ u3)} A (Unitization.{u2, u3} R A) (CoeTCₓ.coe.{succ u3, max (succ u2) (succ u3)} A (Unitization.{u2, u3} R A) (Unitization.hasCoeT.{u2, u3} R A (AddZeroClass.toHasZero.{u2} R (AddMonoid.toAddZeroClass.{u2} R (AddCommMonoid.toAddMonoid.{u2} R _inst_2)))))) a)) (coeFn.{max (succ (max u2 u3)) (succ u4), max (succ (max u2 u3)) (succ u4)} (LinearMap.{u1, u1, max u2 u3, u4} S S _inst_1 _inst_1 (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_1)) (Unitization.{u2, u3} R A) N (Unitization.addCommMonoid.{u2, u3} R A _inst_2 _inst_3) _inst_4 (Unitization.module.{u1, u2, u3} S R A _inst_1 _inst_2 _inst_3 _inst_5 _inst_6) _inst_7) (fun (_x : LinearMap.{u1, u1, max u2 u3, u4} S S _inst_1 _inst_1 (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_1)) (Unitization.{u2, u3} R A) N (Unitization.addCommMonoid.{u2, u3} R A _inst_2 _inst_3) _inst_4 (Unitization.module.{u1, u2, u3} S R A _inst_1 _inst_2 _inst_3 _inst_5 _inst_6) _inst_7) => (Unitization.{u2, u3} R A) -> N) (LinearMap.hasCoeToFun.{u1, u1, max u2 u3, u4} S S (Unitization.{u2, u3} R A) N _inst_1 _inst_1 (Unitization.addCommMonoid.{u2, u3} R A _inst_2 _inst_3) _inst_4 (Unitization.module.{u1, u2, u3} S R A _inst_1 _inst_2 _inst_3 _inst_5 _inst_6) _inst_7 (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_1))) g ((fun (a : Type.{u3}) (b : Sort.{max (succ u2) (succ u3)}) [self : HasLiftT.{succ u3, max (succ u2) (succ u3)} a b] => self.0) A (Unitization.{u2, u3} R A) (HasLiftT.mk.{succ u3, max (succ u2) (succ u3)} A (Unitization.{u2, u3} R A) (CoeTCₓ.coe.{succ u3, max (succ u2) (succ u3)} A (Unitization.{u2, u3} R A) (Unitization.hasCoeT.{u2, u3} R A (AddZeroClass.toHasZero.{u2} R (AddMonoid.toAddZeroClass.{u2} R (AddCommMonoid.toAddMonoid.{u2} R _inst_2)))))) a))) -> (Eq.{max (succ (max u2 u3)) (succ u4)} (LinearMap.{u1, u1, max u2 u3, u4} S S _inst_1 _inst_1 (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_1)) (Unitization.{u2, u3} R A) N (Unitization.addCommMonoid.{u2, u3} R A _inst_2 _inst_3) _inst_4 (Unitization.module.{u1, u2, u3} S R A _inst_1 _inst_2 _inst_3 _inst_5 _inst_6) _inst_7) f g)
-but is expected to have type
-  forall {S : Type.{u3}} {R : Type.{u2}} {A : Type.{u1}} {N : Type.{u4}} [_inst_1 : Semiring.{u3} S] [_inst_2 : AddCommMonoid.{u2} R] [_inst_3 : AddCommMonoid.{u1} A] [_inst_4 : AddCommMonoid.{u4} N] [_inst_5 : Module.{u3, u2} S R _inst_1 _inst_2] [_inst_6 : Module.{u3, u1} S A _inst_1 _inst_3] [_inst_7 : Module.{u3, u4} S N _inst_1 _inst_4] {{f : LinearMap.{u3, u3, max u1 u2, u4} S S _inst_1 _inst_1 (RingHom.id.{u3} S (Semiring.toNonAssocSemiring.{u3} S _inst_1)) (Unitization.{u2, u1} R A) N (Unitization.addCommMonoid.{u2, u1} R A _inst_2 _inst_3) _inst_4 (Unitization.module.{u3, u2, u1} S R A _inst_1 _inst_2 _inst_3 _inst_5 _inst_6) _inst_7}} {{g : LinearMap.{u3, u3, max u1 u2, u4} S S _inst_1 _inst_1 (RingHom.id.{u3} S (Semiring.toNonAssocSemiring.{u3} S _inst_1)) (Unitization.{u2, u1} R A) N (Unitization.addCommMonoid.{u2, u1} R A _inst_2 _inst_3) _inst_4 (Unitization.module.{u3, u2, u1} S R A _inst_1 _inst_2 _inst_3 _inst_5 _inst_6) _inst_7}}, (forall (r : R), Eq.{succ u4} ((fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6193 : Unitization.{u2, u1} R A) => N) (Unitization.inl.{u2, u1} R A (AddMonoid.toZero.{u1} A (AddCommMonoid.toAddMonoid.{u1} A _inst_3)) r)) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u4), max (succ u2) (succ u1), succ u4} (LinearMap.{u3, u3, max u1 u2, u4} S S _inst_1 _inst_1 (RingHom.id.{u3} S (Semiring.toNonAssocSemiring.{u3} S _inst_1)) (Unitization.{u2, u1} R A) N (Unitization.addCommMonoid.{u2, u1} R A _inst_2 _inst_3) _inst_4 (Unitization.module.{u3, u2, u1} S R A _inst_1 _inst_2 _inst_3 _inst_5 _inst_6) _inst_7) (Unitization.{u2, u1} R A) (fun (_x : Unitization.{u2, u1} R A) => (fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6193 : Unitization.{u2, u1} R A) => N) _x) (LinearMap.instFunLikeLinearMap.{u3, u3, max u2 u1, u4} S S (Unitization.{u2, u1} R A) N _inst_1 _inst_1 (Unitization.addCommMonoid.{u2, u1} R A _inst_2 _inst_3) _inst_4 (Unitization.module.{u3, u2, u1} S R A _inst_1 _inst_2 _inst_3 _inst_5 _inst_6) _inst_7 (RingHom.id.{u3} S (Semiring.toNonAssocSemiring.{u3} S _inst_1))) f (Unitization.inl.{u2, u1} R A (AddMonoid.toZero.{u1} A (AddCommMonoid.toAddMonoid.{u1} A _inst_3)) r)) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u4), max (succ u2) (succ u1), succ u4} (LinearMap.{u3, u3, max u1 u2, u4} S S _inst_1 _inst_1 (RingHom.id.{u3} S (Semiring.toNonAssocSemiring.{u3} S _inst_1)) (Unitization.{u2, u1} R A) N (Unitization.addCommMonoid.{u2, u1} R A _inst_2 _inst_3) _inst_4 (Unitization.module.{u3, u2, u1} S R A _inst_1 _inst_2 _inst_3 _inst_5 _inst_6) _inst_7) (Unitization.{u2, u1} R A) (fun (_x : Unitization.{u2, u1} R A) => (fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6193 : Unitization.{u2, u1} R A) => N) _x) (LinearMap.instFunLikeLinearMap.{u3, u3, max u2 u1, u4} S S (Unitization.{u2, u1} R A) N _inst_1 _inst_1 (Unitization.addCommMonoid.{u2, u1} R A _inst_2 _inst_3) _inst_4 (Unitization.module.{u3, u2, u1} S R A _inst_1 _inst_2 _inst_3 _inst_5 _inst_6) _inst_7 (RingHom.id.{u3} S (Semiring.toNonAssocSemiring.{u3} S _inst_1))) g (Unitization.inl.{u2, u1} R A (AddMonoid.toZero.{u1} A (AddCommMonoid.toAddMonoid.{u1} A _inst_3)) r))) -> (forall (a : A), Eq.{succ u4} ((fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6193 : Unitization.{u2, u1} R A) => N) (Unitization.inr.{u2, u1} R A (AddMonoid.toZero.{u2} R (AddCommMonoid.toAddMonoid.{u2} R _inst_2)) a)) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u4), max (succ u2) (succ u1), succ u4} (LinearMap.{u3, u3, max u1 u2, u4} S S _inst_1 _inst_1 (RingHom.id.{u3} S (Semiring.toNonAssocSemiring.{u3} S _inst_1)) (Unitization.{u2, u1} R A) N (Unitization.addCommMonoid.{u2, u1} R A _inst_2 _inst_3) _inst_4 (Unitization.module.{u3, u2, u1} S R A _inst_1 _inst_2 _inst_3 _inst_5 _inst_6) _inst_7) (Unitization.{u2, u1} R A) (fun (_x : Unitization.{u2, u1} R A) => (fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6193 : Unitization.{u2, u1} R A) => N) _x) (LinearMap.instFunLikeLinearMap.{u3, u3, max u2 u1, u4} S S (Unitization.{u2, u1} R A) N _inst_1 _inst_1 (Unitization.addCommMonoid.{u2, u1} R A _inst_2 _inst_3) _inst_4 (Unitization.module.{u3, u2, u1} S R A _inst_1 _inst_2 _inst_3 _inst_5 _inst_6) _inst_7 (RingHom.id.{u3} S (Semiring.toNonAssocSemiring.{u3} S _inst_1))) f (Unitization.inr.{u2, u1} R A (AddMonoid.toZero.{u2} R (AddCommMonoid.toAddMonoid.{u2} R _inst_2)) a)) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u4), max (succ u2) (succ u1), succ u4} (LinearMap.{u3, u3, max u1 u2, u4} S S _inst_1 _inst_1 (RingHom.id.{u3} S (Semiring.toNonAssocSemiring.{u3} S _inst_1)) (Unitization.{u2, u1} R A) N (Unitization.addCommMonoid.{u2, u1} R A _inst_2 _inst_3) _inst_4 (Unitization.module.{u3, u2, u1} S R A _inst_1 _inst_2 _inst_3 _inst_5 _inst_6) _inst_7) (Unitization.{u2, u1} R A) (fun (_x : Unitization.{u2, u1} R A) => (fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6193 : Unitization.{u2, u1} R A) => N) _x) (LinearMap.instFunLikeLinearMap.{u3, u3, max u2 u1, u4} S S (Unitization.{u2, u1} R A) N _inst_1 _inst_1 (Unitization.addCommMonoid.{u2, u1} R A _inst_2 _inst_3) _inst_4 (Unitization.module.{u3, u2, u1} S R A _inst_1 _inst_2 _inst_3 _inst_5 _inst_6) _inst_7 (RingHom.id.{u3} S (Semiring.toNonAssocSemiring.{u3} S _inst_1))) g (Unitization.inr.{u2, u1} R A (AddMonoid.toZero.{u2} R (AddCommMonoid.toAddMonoid.{u2} R _inst_2)) a))) -> (Eq.{max (max (succ u2) (succ u1)) (succ u4)} (LinearMap.{u3, u3, max u1 u2, u4} S S _inst_1 _inst_1 (RingHom.id.{u3} S (Semiring.toNonAssocSemiring.{u3} S _inst_1)) (Unitization.{u2, u1} R A) N (Unitization.addCommMonoid.{u2, u1} R A _inst_2 _inst_3) _inst_4 (Unitization.module.{u3, u2, u1} S R A _inst_1 _inst_2 _inst_3 _inst_5 _inst_6) _inst_7) f g)
+<too large>
 Case conversion may be inaccurate. Consider using '#align unitization.linear_map_ext Unitization.linearMap_extₓ'. -/
 /-- This cannot be marked `@[ext]` as it ends up being used instead of `linear_map.prod_ext` when
 working with `R × A`. -/
@@ -814,10 +811,7 @@ variable (S R A : Type _) [CommSemiring S] [CommSemiring R] [NonUnitalSemiring A
   [IsScalarTower S R A]
 
 /- warning: unitization.algebra -> Unitization.algebra is a dubious translation:
-lean 3 declaration is
-  forall (S : Type.{u1}) (R : Type.{u2}) (A : Type.{u3}) [_inst_1 : CommSemiring.{u1} S] [_inst_2 : CommSemiring.{u2} R] [_inst_3 : NonUnitalSemiring.{u3} A] [_inst_4 : Module.{u2, u3} R A (CommSemiring.toSemiring.{u2} R _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u3} A _inst_3))] [_inst_5 : IsScalarTower.{u2, u3, u3} R A A (SMulZeroClass.toHasSmul.{u2, u3} R A (AddZeroClass.toHasZero.{u3} A (AddMonoid.toAddZeroClass.{u3} A (AddCommMonoid.toAddMonoid.{u3} A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u3} A _inst_3))))) (SMulWithZero.toSmulZeroClass.{u2, u3} R A (MulZeroClass.toHasZero.{u2} R (MulZeroOneClass.toMulZeroClass.{u2} R (MonoidWithZero.toMulZeroOneClass.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R _inst_2))))) (AddZeroClass.toHasZero.{u3} A (AddMonoid.toAddZeroClass.{u3} A (AddCommMonoid.toAddMonoid.{u3} A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u3} A _inst_3))))) (MulActionWithZero.toSMulWithZero.{u2, u3} R A (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R _inst_2)) (AddZeroClass.toHasZero.{u3} A (AddMonoid.toAddZeroClass.{u3} A (AddCommMonoid.toAddMonoid.{u3} A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u3} A _inst_3))))) (Module.toMulActionWithZero.{u2, u3} R A (CommSemiring.toSemiring.{u2} R _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u3} A _inst_3)) _inst_4)))) (Mul.toSMul.{u3} A (Distrib.toHasMul.{u3} A (NonUnitalNonAssocSemiring.toDistrib.{u3} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u3} A _inst_3)))) (SMulZeroClass.toHasSmul.{u2, u3} R A (AddZeroClass.toHasZero.{u3} A (AddMonoid.toAddZeroClass.{u3} A (AddCommMonoid.toAddMonoid.{u3} A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u3} A _inst_3))))) (SMulWithZero.toSmulZeroClass.{u2, u3} R A (MulZeroClass.toHasZero.{u2} R (MulZeroOneClass.toMulZeroClass.{u2} R (MonoidWithZero.toMulZeroOneClass.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R _inst_2))))) (AddZeroClass.toHasZero.{u3} A (AddMonoid.toAddZeroClass.{u3} A (AddCommMonoid.toAddMonoid.{u3} A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u3} A _inst_3))))) (MulActionWithZero.toSMulWithZero.{u2, u3} R A (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R _inst_2)) (AddZeroClass.toHasZero.{u3} A (AddMonoid.toAddZeroClass.{u3} A (AddCommMonoid.toAddMonoid.{u3} A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u3} A _inst_3))))) (Module.toMulActionWithZero.{u2, u3} R A (CommSemiring.toSemiring.{u2} R _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u3} A _inst_3)) _inst_4))))] [_inst_6 : SMulCommClass.{u2, u3, u3} R A A (SMulZeroClass.toHasSmul.{u2, u3} R A (AddZeroClass.toHasZero.{u3} A (AddMonoid.toAddZeroClass.{u3} A (AddCommMonoid.toAddMonoid.{u3} A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u3} A _inst_3))))) (SMulWithZero.toSmulZeroClass.{u2, u3} R A (MulZeroClass.toHasZero.{u2} R (MulZeroOneClass.toMulZeroClass.{u2} R (MonoidWithZero.toMulZeroOneClass.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R _inst_2))))) (AddZeroClass.toHasZero.{u3} A (AddMonoid.toAddZeroClass.{u3} A (AddCommMonoid.toAddMonoid.{u3} A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u3} A _inst_3))))) (MulActionWithZero.toSMulWithZero.{u2, u3} R A (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R _inst_2)) (AddZeroClass.toHasZero.{u3} A (AddMonoid.toAddZeroClass.{u3} A (AddCommMonoid.toAddMonoid.{u3} A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u3} A _inst_3))))) (Module.toMulActionWithZero.{u2, u3} R A (CommSemiring.toSemiring.{u2} R _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u3} A _inst_3)) _inst_4)))) (Mul.toSMul.{u3} A (Distrib.toHasMul.{u3} A (NonUnitalNonAssocSemiring.toDistrib.{u3} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u3} A _inst_3))))] [_inst_7 : Algebra.{u1, u2} S R _inst_1 (CommSemiring.toSemiring.{u2} R _inst_2)] [_inst_8 : DistribMulAction.{u1, u3} S A (MonoidWithZero.toMonoid.{u1} S (Semiring.toMonoidWithZero.{u1} S (CommSemiring.toSemiring.{u1} S _inst_1))) (AddCommMonoid.toAddMonoid.{u3} A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u3} A _inst_3)))] [_inst_9 : IsScalarTower.{u1, u2, u3} S R A (SMulZeroClass.toHasSmul.{u1, u2} S R (AddZeroClass.toHasZero.{u2} R (AddMonoid.toAddZeroClass.{u2} R (AddCommMonoid.toAddMonoid.{u2} R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_2))))))) (SMulWithZero.toSmulZeroClass.{u1, u2} S R (MulZeroClass.toHasZero.{u1} S (MulZeroOneClass.toMulZeroClass.{u1} S (MonoidWithZero.toMulZeroOneClass.{u1} S (Semiring.toMonoidWithZero.{u1} S (CommSemiring.toSemiring.{u1} S _inst_1))))) (AddZeroClass.toHasZero.{u2} R (AddMonoid.toAddZeroClass.{u2} R (AddCommMonoid.toAddMonoid.{u2} R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_2))))))) (MulActionWithZero.toSMulWithZero.{u1, u2} S R (Semiring.toMonoidWithZero.{u1} S (CommSemiring.toSemiring.{u1} S _inst_1)) (AddZeroClass.toHasZero.{u2} R (AddMonoid.toAddZeroClass.{u2} R (AddCommMonoid.toAddMonoid.{u2} R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_2))))))) (Module.toMulActionWithZero.{u1, u2} S R (CommSemiring.toSemiring.{u1} S _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_2)))) (Algebra.toModule.{u1, u2} S R _inst_1 (CommSemiring.toSemiring.{u2} R _inst_2) _inst_7))))) (SMulZeroClass.toHasSmul.{u2, u3} R A (AddZeroClass.toHasZero.{u3} A (AddMonoid.toAddZeroClass.{u3} A (AddCommMonoid.toAddMonoid.{u3} A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u3} A _inst_3))))) (SMulWithZero.toSmulZeroClass.{u2, u3} R A (MulZeroClass.toHasZero.{u2} R (MulZeroOneClass.toMulZeroClass.{u2} R (MonoidWithZero.toMulZeroOneClass.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R _inst_2))))) (AddZeroClass.toHasZero.{u3} A (AddMonoid.toAddZeroClass.{u3} A (AddCommMonoid.toAddMonoid.{u3} A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u3} A _inst_3))))) (MulActionWithZero.toSMulWithZero.{u2, u3} R A (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R _inst_2)) (AddZeroClass.toHasZero.{u3} A (AddMonoid.toAddZeroClass.{u3} A (AddCommMonoid.toAddMonoid.{u3} A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u3} A _inst_3))))) (Module.toMulActionWithZero.{u2, u3} R A (CommSemiring.toSemiring.{u2} R _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u3} A _inst_3)) _inst_4)))) (SMulZeroClass.toHasSmul.{u1, u3} S A (AddZeroClass.toHasZero.{u3} A (AddMonoid.toAddZeroClass.{u3} A (AddCommMonoid.toAddMonoid.{u3} A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u3} A _inst_3))))) (DistribSMul.toSmulZeroClass.{u1, u3} S A (AddMonoid.toAddZeroClass.{u3} A (AddCommMonoid.toAddMonoid.{u3} A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u3} A _inst_3)))) (DistribMulAction.toDistribSMul.{u1, u3} S A (MonoidWithZero.toMonoid.{u1} S (Semiring.toMonoidWithZero.{u1} S (CommSemiring.toSemiring.{u1} S _inst_1))) (AddCommMonoid.toAddMonoid.{u3} A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u3} A _inst_3))) _inst_8)))], Algebra.{u1, max u2 u3} S (Unitization.{u2, u3} R A) _inst_1 (Unitization.semiring.{u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_5 _inst_6)
-but is expected to have type
-  forall (S : Type.{u1}) (R : Type.{u2}) (A : Type.{u3}) [_inst_1 : CommSemiring.{u1} S] [_inst_2 : CommSemiring.{u2} R] [_inst_3 : NonUnitalSemiring.{u3} A] [_inst_4 : Module.{u2, u3} R A (CommSemiring.toSemiring.{u2} R _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u3} A _inst_3))] [_inst_5 : IsScalarTower.{u2, u3, u3} R A A (SMulZeroClass.toSMul.{u2, u3} R A (SemigroupWithZero.toZero.{u3} A (NonUnitalSemiring.toSemigroupWithZero.{u3} A _inst_3)) (SMulWithZero.toSMulZeroClass.{u2, u3} R A (CommMonoidWithZero.toZero.{u2} R (CommSemiring.toCommMonoidWithZero.{u2} R _inst_2)) (SemigroupWithZero.toZero.{u3} A (NonUnitalSemiring.toSemigroupWithZero.{u3} A _inst_3)) (MulActionWithZero.toSMulWithZero.{u2, u3} R A (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R _inst_2)) (SemigroupWithZero.toZero.{u3} A (NonUnitalSemiring.toSemigroupWithZero.{u3} A _inst_3)) (Module.toMulActionWithZero.{u2, u3} R A (CommSemiring.toSemiring.{u2} R _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u3} A _inst_3)) _inst_4)))) (SMulZeroClass.toSMul.{u3, u3} A A (SemigroupWithZero.toZero.{u3} A (NonUnitalSemiring.toSemigroupWithZero.{u3} A _inst_3)) (SMulWithZero.toSMulZeroClass.{u3, u3} A A (SemigroupWithZero.toZero.{u3} A (NonUnitalSemiring.toSemigroupWithZero.{u3} A _inst_3)) (SemigroupWithZero.toZero.{u3} A (NonUnitalSemiring.toSemigroupWithZero.{u3} A _inst_3)) (MulZeroClass.toSMulWithZero.{u3} A (NonUnitalNonAssocSemiring.toMulZeroClass.{u3} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u3} A _inst_3))))) (SMulZeroClass.toSMul.{u2, u3} R A (SemigroupWithZero.toZero.{u3} A (NonUnitalSemiring.toSemigroupWithZero.{u3} A _inst_3)) (SMulWithZero.toSMulZeroClass.{u2, u3} R A (CommMonoidWithZero.toZero.{u2} R (CommSemiring.toCommMonoidWithZero.{u2} R _inst_2)) (SemigroupWithZero.toZero.{u3} A (NonUnitalSemiring.toSemigroupWithZero.{u3} A _inst_3)) (MulActionWithZero.toSMulWithZero.{u2, u3} R A (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R _inst_2)) (SemigroupWithZero.toZero.{u3} A (NonUnitalSemiring.toSemigroupWithZero.{u3} A _inst_3)) (Module.toMulActionWithZero.{u2, u3} R A (CommSemiring.toSemiring.{u2} R _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u3} A _inst_3)) _inst_4))))] [_inst_6 : SMulCommClass.{u2, u3, u3} R A A (SMulZeroClass.toSMul.{u2, u3} R A (SemigroupWithZero.toZero.{u3} A (NonUnitalSemiring.toSemigroupWithZero.{u3} A _inst_3)) (SMulWithZero.toSMulZeroClass.{u2, u3} R A (CommMonoidWithZero.toZero.{u2} R (CommSemiring.toCommMonoidWithZero.{u2} R _inst_2)) (SemigroupWithZero.toZero.{u3} A (NonUnitalSemiring.toSemigroupWithZero.{u3} A _inst_3)) (MulActionWithZero.toSMulWithZero.{u2, u3} R A (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R _inst_2)) (SemigroupWithZero.toZero.{u3} A (NonUnitalSemiring.toSemigroupWithZero.{u3} A _inst_3)) (Module.toMulActionWithZero.{u2, u3} R A (CommSemiring.toSemiring.{u2} R _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u3} A _inst_3)) _inst_4)))) (SMulZeroClass.toSMul.{u3, u3} A A (SemigroupWithZero.toZero.{u3} A (NonUnitalSemiring.toSemigroupWithZero.{u3} A _inst_3)) (SMulWithZero.toSMulZeroClass.{u3, u3} A A (SemigroupWithZero.toZero.{u3} A (NonUnitalSemiring.toSemigroupWithZero.{u3} A _inst_3)) (SemigroupWithZero.toZero.{u3} A (NonUnitalSemiring.toSemigroupWithZero.{u3} A _inst_3)) (MulZeroClass.toSMulWithZero.{u3} A (NonUnitalNonAssocSemiring.toMulZeroClass.{u3} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u3} A _inst_3)))))] [_inst_7 : Algebra.{u1, u2} S R _inst_1 (CommSemiring.toSemiring.{u2} R _inst_2)] [_inst_8 : DistribMulAction.{u1, u3} S A (MonoidWithZero.toMonoid.{u1} S (Semiring.toMonoidWithZero.{u1} S (CommSemiring.toSemiring.{u1} S _inst_1))) (AddCommMonoid.toAddMonoid.{u3} A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u3} A _inst_3)))] [_inst_9 : IsScalarTower.{u1, u2, u3} S R A (Algebra.toSMul.{u1, u2} S R _inst_1 (CommSemiring.toSemiring.{u2} R _inst_2) _inst_7) (SMulZeroClass.toSMul.{u2, u3} R A (SemigroupWithZero.toZero.{u3} A (NonUnitalSemiring.toSemigroupWithZero.{u3} A _inst_3)) (SMulWithZero.toSMulZeroClass.{u2, u3} R A (CommMonoidWithZero.toZero.{u2} R (CommSemiring.toCommMonoidWithZero.{u2} R _inst_2)) (SemigroupWithZero.toZero.{u3} A (NonUnitalSemiring.toSemigroupWithZero.{u3} A _inst_3)) (MulActionWithZero.toSMulWithZero.{u2, u3} R A (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R _inst_2)) (SemigroupWithZero.toZero.{u3} A (NonUnitalSemiring.toSemigroupWithZero.{u3} A _inst_3)) (Module.toMulActionWithZero.{u2, u3} R A (CommSemiring.toSemiring.{u2} R _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u3} A _inst_3)) _inst_4)))) (SMulZeroClass.toSMul.{u1, u3} S A (SemigroupWithZero.toZero.{u3} A (NonUnitalSemiring.toSemigroupWithZero.{u3} A _inst_3)) (DistribSMul.toSMulZeroClass.{u1, u3} S A (AddMonoid.toAddZeroClass.{u3} A (AddCommMonoid.toAddMonoid.{u3} A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u3} A _inst_3)))) (DistribMulAction.toDistribSMul.{u1, u3} S A (MonoidWithZero.toMonoid.{u1} S (Semiring.toMonoidWithZero.{u1} S (CommSemiring.toSemiring.{u1} S _inst_1))) (AddCommMonoid.toAddMonoid.{u3} A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u3} A _inst_3))) _inst_8)))], Algebra.{u1, max u3 u2} S (Unitization.{u2, u3} R A) _inst_1 (Unitization.semiring.{u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_5 _inst_6)
+<too large>
 Case conversion may be inaccurate. Consider using '#align unitization.algebra Unitization.algebraₓ'. -/
 instance algebra : Algebra S (Unitization R A) :=
   {
@@ -837,20 +831,14 @@ instance algebra : Algebra S (Unitization R A) :=
 #align unitization.algebra Unitization.algebra
 
 /- warning: unitization.algebra_map_eq_inl_comp -> Unitization.algebraMap_eq_inl_comp is a dubious translation:
-lean 3 declaration is
-  forall (S : Type.{u1}) (R : Type.{u2}) (A : Type.{u3}) [_inst_1 : CommSemiring.{u1} S] [_inst_2 : CommSemiring.{u2} R] [_inst_3 : NonUnitalSemiring.{u3} A] [_inst_4 : Module.{u2, u3} R A (CommSemiring.toSemiring.{u2} R _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u3} A _inst_3))] [_inst_5 : IsScalarTower.{u2, u3, u3} R A A (SMulZeroClass.toHasSmul.{u2, u3} R A (AddZeroClass.toHasZero.{u3} A (AddMonoid.toAddZeroClass.{u3} A (AddCommMonoid.toAddMonoid.{u3} A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u3} A _inst_3))))) (SMulWithZero.toSmulZeroClass.{u2, u3} R A (MulZeroClass.toHasZero.{u2} R (MulZeroOneClass.toMulZeroClass.{u2} R (MonoidWithZero.toMulZeroOneClass.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R _inst_2))))) (AddZeroClass.toHasZero.{u3} A (AddMonoid.toAddZeroClass.{u3} A (AddCommMonoid.toAddMonoid.{u3} A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u3} A _inst_3))))) (MulActionWithZero.toSMulWithZero.{u2, u3} R A (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R _inst_2)) (AddZeroClass.toHasZero.{u3} A (AddMonoid.toAddZeroClass.{u3} A (AddCommMonoid.toAddMonoid.{u3} A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u3} A _inst_3))))) (Module.toMulActionWithZero.{u2, u3} R A (CommSemiring.toSemiring.{u2} R _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u3} A _inst_3)) _inst_4)))) (Mul.toSMul.{u3} A (Distrib.toHasMul.{u3} A (NonUnitalNonAssocSemiring.toDistrib.{u3} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u3} A _inst_3)))) (SMulZeroClass.toHasSmul.{u2, u3} R A (AddZeroClass.toHasZero.{u3} A (AddMonoid.toAddZeroClass.{u3} A (AddCommMonoid.toAddMonoid.{u3} A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u3} A _inst_3))))) (SMulWithZero.toSmulZeroClass.{u2, u3} R A (MulZeroClass.toHasZero.{u2} R (MulZeroOneClass.toMulZeroClass.{u2} R (MonoidWithZero.toMulZeroOneClass.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R _inst_2))))) (AddZeroClass.toHasZero.{u3} A (AddMonoid.toAddZeroClass.{u3} A (AddCommMonoid.toAddMonoid.{u3} A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u3} A _inst_3))))) (MulActionWithZero.toSMulWithZero.{u2, u3} R A (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R _inst_2)) (AddZeroClass.toHasZero.{u3} A (AddMonoid.toAddZeroClass.{u3} A (AddCommMonoid.toAddMonoid.{u3} A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u3} A _inst_3))))) (Module.toMulActionWithZero.{u2, u3} R A (CommSemiring.toSemiring.{u2} R _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u3} A _inst_3)) _inst_4))))] [_inst_6 : SMulCommClass.{u2, u3, u3} R A A (SMulZeroClass.toHasSmul.{u2, u3} R A (AddZeroClass.toHasZero.{u3} A (AddMonoid.toAddZeroClass.{u3} A (AddCommMonoid.toAddMonoid.{u3} A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u3} A _inst_3))))) (SMulWithZero.toSmulZeroClass.{u2, u3} R A (MulZeroClass.toHasZero.{u2} R (MulZeroOneClass.toMulZeroClass.{u2} R (MonoidWithZero.toMulZeroOneClass.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R _inst_2))))) (AddZeroClass.toHasZero.{u3} A (AddMonoid.toAddZeroClass.{u3} A (AddCommMonoid.toAddMonoid.{u3} A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u3} A _inst_3))))) (MulActionWithZero.toSMulWithZero.{u2, u3} R A (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R _inst_2)) (AddZeroClass.toHasZero.{u3} A (AddMonoid.toAddZeroClass.{u3} A (AddCommMonoid.toAddMonoid.{u3} A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u3} A _inst_3))))) (Module.toMulActionWithZero.{u2, u3} R A (CommSemiring.toSemiring.{u2} R _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u3} A _inst_3)) _inst_4)))) (Mul.toSMul.{u3} A (Distrib.toHasMul.{u3} A (NonUnitalNonAssocSemiring.toDistrib.{u3} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u3} A _inst_3))))] [_inst_7 : Algebra.{u1, u2} S R _inst_1 (CommSemiring.toSemiring.{u2} R _inst_2)] [_inst_8 : DistribMulAction.{u1, u3} S A (MonoidWithZero.toMonoid.{u1} S (Semiring.toMonoidWithZero.{u1} S (CommSemiring.toSemiring.{u1} S _inst_1))) (AddCommMonoid.toAddMonoid.{u3} A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u3} A _inst_3)))] [_inst_9 : IsScalarTower.{u1, u2, u3} S R A (SMulZeroClass.toHasSmul.{u1, u2} S R (AddZeroClass.toHasZero.{u2} R (AddMonoid.toAddZeroClass.{u2} R (AddCommMonoid.toAddMonoid.{u2} R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_2))))))) (SMulWithZero.toSmulZeroClass.{u1, u2} S R (MulZeroClass.toHasZero.{u1} S (MulZeroOneClass.toMulZeroClass.{u1} S (MonoidWithZero.toMulZeroOneClass.{u1} S (Semiring.toMonoidWithZero.{u1} S (CommSemiring.toSemiring.{u1} S _inst_1))))) (AddZeroClass.toHasZero.{u2} R (AddMonoid.toAddZeroClass.{u2} R (AddCommMonoid.toAddMonoid.{u2} R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_2))))))) (MulActionWithZero.toSMulWithZero.{u1, u2} S R (Semiring.toMonoidWithZero.{u1} S (CommSemiring.toSemiring.{u1} S _inst_1)) (AddZeroClass.toHasZero.{u2} R (AddMonoid.toAddZeroClass.{u2} R (AddCommMonoid.toAddMonoid.{u2} R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_2))))))) (Module.toMulActionWithZero.{u1, u2} S R (CommSemiring.toSemiring.{u1} S _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_2)))) (Algebra.toModule.{u1, u2} S R _inst_1 (CommSemiring.toSemiring.{u2} R _inst_2) _inst_7))))) (SMulZeroClass.toHasSmul.{u2, u3} R A (AddZeroClass.toHasZero.{u3} A (AddMonoid.toAddZeroClass.{u3} A (AddCommMonoid.toAddMonoid.{u3} A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u3} A _inst_3))))) (SMulWithZero.toSmulZeroClass.{u2, u3} R A (MulZeroClass.toHasZero.{u2} R (MulZeroOneClass.toMulZeroClass.{u2} R (MonoidWithZero.toMulZeroOneClass.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R _inst_2))))) (AddZeroClass.toHasZero.{u3} A (AddMonoid.toAddZeroClass.{u3} A (AddCommMonoid.toAddMonoid.{u3} A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u3} A _inst_3))))) (MulActionWithZero.toSMulWithZero.{u2, u3} R A (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R _inst_2)) (AddZeroClass.toHasZero.{u3} A (AddMonoid.toAddZeroClass.{u3} A (AddCommMonoid.toAddMonoid.{u3} A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u3} A _inst_3))))) (Module.toMulActionWithZero.{u2, u3} R A (CommSemiring.toSemiring.{u2} R _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u3} A _inst_3)) _inst_4)))) (SMulZeroClass.toHasSmul.{u1, u3} S A (AddZeroClass.toHasZero.{u3} A (AddMonoid.toAddZeroClass.{u3} A (AddCommMonoid.toAddMonoid.{u3} A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u3} A _inst_3))))) (DistribSMul.toSmulZeroClass.{u1, u3} S A (AddMonoid.toAddZeroClass.{u3} A (AddCommMonoid.toAddMonoid.{u3} A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u3} A _inst_3)))) (DistribMulAction.toDistribSMul.{u1, u3} S A (MonoidWithZero.toMonoid.{u1} S (Semiring.toMonoidWithZero.{u1} S (CommSemiring.toSemiring.{u1} S _inst_1))) (AddCommMonoid.toAddMonoid.{u3} A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u3} A _inst_3))) _inst_8)))], Eq.{max (succ u1) (succ (max u2 u3))} (S -> (Unitization.{u2, u3} R A)) (coeFn.{max (succ u1) (succ (max u2 u3)), max (succ u1) (succ (max u2 u3))} (RingHom.{u1, max u2 u3} S (Unitization.{u2, u3} R A) (Semiring.toNonAssocSemiring.{u1} S (CommSemiring.toSemiring.{u1} S _inst_1)) (Semiring.toNonAssocSemiring.{max u2 u3} (Unitization.{u2, u3} R A) (Unitization.semiring.{u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_5 _inst_6))) (fun (_x : RingHom.{u1, max u2 u3} S (Unitization.{u2, u3} R A) (Semiring.toNonAssocSemiring.{u1} S (CommSemiring.toSemiring.{u1} S _inst_1)) (Semiring.toNonAssocSemiring.{max u2 u3} (Unitization.{u2, u3} R A) (Unitization.semiring.{u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_5 _inst_6))) => S -> (Unitization.{u2, u3} R A)) (RingHom.hasCoeToFun.{u1, max u2 u3} S (Unitization.{u2, u3} R A) (Semiring.toNonAssocSemiring.{u1} S (CommSemiring.toSemiring.{u1} S _inst_1)) (Semiring.toNonAssocSemiring.{max u2 u3} (Unitization.{u2, u3} R A) (Unitization.semiring.{u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_5 _inst_6))) (algebraMap.{u1, max u2 u3} S (Unitization.{u2, u3} R A) _inst_1 (Unitization.semiring.{u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_5 _inst_6) (Unitization.algebra.{u1, u2, u3} S R A _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 _inst_6 _inst_7 _inst_8 _inst_9))) (Function.comp.{succ u1, succ u2, max (succ u2) (succ u3)} S R (Unitization.{u2, u3} R A) (Unitization.inl.{u2, u3} R A (MulZeroClass.toHasZero.{u3} A (NonUnitalNonAssocSemiring.toMulZeroClass.{u3} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u3} A _inst_3)))) (coeFn.{max (succ u1) (succ u2), max (succ u1) (succ u2)} (RingHom.{u1, u2} S R (Semiring.toNonAssocSemiring.{u1} S (CommSemiring.toSemiring.{u1} S _inst_1)) (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_2))) (fun (_x : RingHom.{u1, u2} S R (Semiring.toNonAssocSemiring.{u1} S (CommSemiring.toSemiring.{u1} S _inst_1)) (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_2))) => S -> R) (RingHom.hasCoeToFun.{u1, u2} S R (Semiring.toNonAssocSemiring.{u1} S (CommSemiring.toSemiring.{u1} S _inst_1)) (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_2))) (algebraMap.{u1, u2} S R _inst_1 (CommSemiring.toSemiring.{u2} R _inst_2) _inst_7)))
-but is expected to have type
-  forall (S : Type.{u3}) (R : Type.{u2}) (A : Type.{u1}) [_inst_1 : CommSemiring.{u3} S] [_inst_2 : CommSemiring.{u2} R] [_inst_3 : NonUnitalSemiring.{u1} A] [_inst_4 : Module.{u2, u1} R A (CommSemiring.toSemiring.{u2} R _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u1} A _inst_3))] [_inst_5 : IsScalarTower.{u2, u1, u1} R A A (SMulZeroClass.toSMul.{u2, u1} R A (SemigroupWithZero.toZero.{u1} A (NonUnitalSemiring.toSemigroupWithZero.{u1} A _inst_3)) (SMulWithZero.toSMulZeroClass.{u2, u1} R A (CommMonoidWithZero.toZero.{u2} R (CommSemiring.toCommMonoidWithZero.{u2} R _inst_2)) (SemigroupWithZero.toZero.{u1} A (NonUnitalSemiring.toSemigroupWithZero.{u1} A _inst_3)) (MulActionWithZero.toSMulWithZero.{u2, u1} R A (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R _inst_2)) (SemigroupWithZero.toZero.{u1} A (NonUnitalSemiring.toSemigroupWithZero.{u1} A _inst_3)) (Module.toMulActionWithZero.{u2, u1} R A (CommSemiring.toSemiring.{u2} R _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u1} A _inst_3)) _inst_4)))) (SMulZeroClass.toSMul.{u1, u1} A A (SemigroupWithZero.toZero.{u1} A (NonUnitalSemiring.toSemigroupWithZero.{u1} A _inst_3)) (SMulWithZero.toSMulZeroClass.{u1, u1} A A (SemigroupWithZero.toZero.{u1} A (NonUnitalSemiring.toSemigroupWithZero.{u1} A _inst_3)) (SemigroupWithZero.toZero.{u1} A (NonUnitalSemiring.toSemigroupWithZero.{u1} A _inst_3)) (MulZeroClass.toSMulWithZero.{u1} A (NonUnitalNonAssocSemiring.toMulZeroClass.{u1} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u1} A _inst_3))))) (SMulZeroClass.toSMul.{u2, u1} R A (SemigroupWithZero.toZero.{u1} A (NonUnitalSemiring.toSemigroupWithZero.{u1} A _inst_3)) (SMulWithZero.toSMulZeroClass.{u2, u1} R A (CommMonoidWithZero.toZero.{u2} R (CommSemiring.toCommMonoidWithZero.{u2} R _inst_2)) (SemigroupWithZero.toZero.{u1} A (NonUnitalSemiring.toSemigroupWithZero.{u1} A _inst_3)) (MulActionWithZero.toSMulWithZero.{u2, u1} R A (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R _inst_2)) (SemigroupWithZero.toZero.{u1} A (NonUnitalSemiring.toSemigroupWithZero.{u1} A _inst_3)) (Module.toMulActionWithZero.{u2, u1} R A (CommSemiring.toSemiring.{u2} R _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u1} A _inst_3)) _inst_4))))] [_inst_6 : SMulCommClass.{u2, u1, u1} R A A (SMulZeroClass.toSMul.{u2, u1} R A (SemigroupWithZero.toZero.{u1} A (NonUnitalSemiring.toSemigroupWithZero.{u1} A _inst_3)) (SMulWithZero.toSMulZeroClass.{u2, u1} R A (CommMonoidWithZero.toZero.{u2} R (CommSemiring.toCommMonoidWithZero.{u2} R _inst_2)) (SemigroupWithZero.toZero.{u1} A (NonUnitalSemiring.toSemigroupWithZero.{u1} A _inst_3)) (MulActionWithZero.toSMulWithZero.{u2, u1} R A (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R _inst_2)) (SemigroupWithZero.toZero.{u1} A (NonUnitalSemiring.toSemigroupWithZero.{u1} A _inst_3)) (Module.toMulActionWithZero.{u2, u1} R A (CommSemiring.toSemiring.{u2} R _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u1} A _inst_3)) _inst_4)))) (SMulZeroClass.toSMul.{u1, u1} A A (SemigroupWithZero.toZero.{u1} A (NonUnitalSemiring.toSemigroupWithZero.{u1} A _inst_3)) (SMulWithZero.toSMulZeroClass.{u1, u1} A A (SemigroupWithZero.toZero.{u1} A (NonUnitalSemiring.toSemigroupWithZero.{u1} A _inst_3)) (SemigroupWithZero.toZero.{u1} A (NonUnitalSemiring.toSemigroupWithZero.{u1} A _inst_3)) (MulZeroClass.toSMulWithZero.{u1} A (NonUnitalNonAssocSemiring.toMulZeroClass.{u1} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u1} A _inst_3)))))] [_inst_7 : Algebra.{u3, u2} S R _inst_1 (CommSemiring.toSemiring.{u2} R _inst_2)] [_inst_8 : DistribMulAction.{u3, u1} S A (MonoidWithZero.toMonoid.{u3} S (Semiring.toMonoidWithZero.{u3} S (CommSemiring.toSemiring.{u3} S _inst_1))) (AddCommMonoid.toAddMonoid.{u1} A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u1} A _inst_3)))] [_inst_9 : IsScalarTower.{u3, u2, u1} S R A (Algebra.toSMul.{u3, u2} S R _inst_1 (CommSemiring.toSemiring.{u2} R _inst_2) _inst_7) (SMulZeroClass.toSMul.{u2, u1} R A (SemigroupWithZero.toZero.{u1} A (NonUnitalSemiring.toSemigroupWithZero.{u1} A _inst_3)) (SMulWithZero.toSMulZeroClass.{u2, u1} R A (CommMonoidWithZero.toZero.{u2} R (CommSemiring.toCommMonoidWithZero.{u2} R _inst_2)) (SemigroupWithZero.toZero.{u1} A (NonUnitalSemiring.toSemigroupWithZero.{u1} A _inst_3)) (MulActionWithZero.toSMulWithZero.{u2, u1} R A (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R _inst_2)) (SemigroupWithZero.toZero.{u1} A (NonUnitalSemiring.toSemigroupWithZero.{u1} A _inst_3)) (Module.toMulActionWithZero.{u2, u1} R A (CommSemiring.toSemiring.{u2} R _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u1} A _inst_3)) _inst_4)))) (SMulZeroClass.toSMul.{u3, u1} S A (SemigroupWithZero.toZero.{u1} A (NonUnitalSemiring.toSemigroupWithZero.{u1} A _inst_3)) (DistribSMul.toSMulZeroClass.{u3, u1} S A (AddMonoid.toAddZeroClass.{u1} A (AddCommMonoid.toAddMonoid.{u1} A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u1} A _inst_3)))) (DistribMulAction.toDistribSMul.{u3, u1} S A (MonoidWithZero.toMonoid.{u3} S (Semiring.toMonoidWithZero.{u3} S (CommSemiring.toSemiring.{u3} S _inst_1))) (AddCommMonoid.toAddMonoid.{u1} A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u1} A _inst_3))) _inst_8)))], Eq.{max (max (succ u3) (succ u2)) (succ u1)} (forall (ᾰ : S), (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : S) => Unitization.{u2, u1} R A) ᾰ) (FunLike.coe.{max (max (succ u3) (succ u2)) (succ u1), succ u3, max (succ u2) (succ u1)} (RingHom.{u3, max u1 u2} S (Unitization.{u2, u1} R A) (Semiring.toNonAssocSemiring.{u3} S (CommSemiring.toSemiring.{u3} S _inst_1)) (Semiring.toNonAssocSemiring.{max u1 u2} (Unitization.{u2, u1} R A) (Unitization.semiring.{u2, u1} R A _inst_2 _inst_3 _inst_4 _inst_5 _inst_6))) S (fun (_x : S) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : S) => Unitization.{u2, u1} R A) _x) (MulHomClass.toFunLike.{max (max u3 u2) u1, u3, max u2 u1} (RingHom.{u3, max u1 u2} S (Unitization.{u2, u1} R A) (Semiring.toNonAssocSemiring.{u3} S (CommSemiring.toSemiring.{u3} S _inst_1)) (Semiring.toNonAssocSemiring.{max u1 u2} (Unitization.{u2, u1} R A) (Unitization.semiring.{u2, u1} R A _inst_2 _inst_3 _inst_4 _inst_5 _inst_6))) S (Unitization.{u2, u1} R A) (NonUnitalNonAssocSemiring.toMul.{u3} S (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} S (Semiring.toNonAssocSemiring.{u3} S (CommSemiring.toSemiring.{u3} S _inst_1)))) (NonUnitalNonAssocSemiring.toMul.{max u2 u1} (Unitization.{u2, u1} R A) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{max u2 u1} (Unitization.{u2, u1} R A) (Semiring.toNonAssocSemiring.{max u1 u2} (Unitization.{u2, u1} R A) (Unitization.semiring.{u2, u1} R A _inst_2 _inst_3 _inst_4 _inst_5 _inst_6)))) (NonUnitalRingHomClass.toMulHomClass.{max (max u3 u2) u1, u3, max u2 u1} (RingHom.{u3, max u1 u2} S (Unitization.{u2, u1} R A) (Semiring.toNonAssocSemiring.{u3} S (CommSemiring.toSemiring.{u3} S _inst_1)) (Semiring.toNonAssocSemiring.{max u1 u2} (Unitization.{u2, u1} R A) (Unitization.semiring.{u2, u1} R A _inst_2 _inst_3 _inst_4 _inst_5 _inst_6))) S (Unitization.{u2, u1} R A) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} S (Semiring.toNonAssocSemiring.{u3} S (CommSemiring.toSemiring.{u3} S _inst_1))) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{max u2 u1} (Unitization.{u2, u1} R A) (Semiring.toNonAssocSemiring.{max u1 u2} (Unitization.{u2, u1} R A) (Unitization.semiring.{u2, u1} R A _inst_2 _inst_3 _inst_4 _inst_5 _inst_6))) (RingHomClass.toNonUnitalRingHomClass.{max (max u3 u2) u1, u3, max u2 u1} (RingHom.{u3, max u1 u2} S (Unitization.{u2, u1} R A) (Semiring.toNonAssocSemiring.{u3} S (CommSemiring.toSemiring.{u3} S _inst_1)) (Semiring.toNonAssocSemiring.{max u1 u2} (Unitization.{u2, u1} R A) (Unitization.semiring.{u2, u1} R A _inst_2 _inst_3 _inst_4 _inst_5 _inst_6))) S (Unitization.{u2, u1} R A) (Semiring.toNonAssocSemiring.{u3} S (CommSemiring.toSemiring.{u3} S _inst_1)) (Semiring.toNonAssocSemiring.{max u1 u2} (Unitization.{u2, u1} R A) (Unitization.semiring.{u2, u1} R A _inst_2 _inst_3 _inst_4 _inst_5 _inst_6)) (RingHom.instRingHomClassRingHom.{u3, max u2 u1} S (Unitization.{u2, u1} R A) (Semiring.toNonAssocSemiring.{u3} S (CommSemiring.toSemiring.{u3} S _inst_1)) (Semiring.toNonAssocSemiring.{max u1 u2} (Unitization.{u2, u1} R A) (Unitization.semiring.{u2, u1} R A _inst_2 _inst_3 _inst_4 _inst_5 _inst_6)))))) (algebraMap.{u3, max u1 u2} S (Unitization.{u2, u1} R A) _inst_1 (Unitization.semiring.{u2, u1} R A _inst_2 _inst_3 _inst_4 _inst_5 _inst_6) (Unitization.algebra.{u3, u2, u1} S R A _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 _inst_6 _inst_7 _inst_8 _inst_9))) (Function.comp.{succ u3, succ u2, max (succ u1) (succ u2)} S R (Unitization.{u2, u1} R A) (Unitization.inl.{u2, u1} R A (SemigroupWithZero.toZero.{u1} A (NonUnitalSemiring.toSemigroupWithZero.{u1} A _inst_3))) (FunLike.coe.{max (succ u3) (succ u2), succ u3, succ u2} (RingHom.{u3, u2} S R (Semiring.toNonAssocSemiring.{u3} S (CommSemiring.toSemiring.{u3} S _inst_1)) (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_2))) S (fun (_x : S) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : S) => R) _x) (MulHomClass.toFunLike.{max u3 u2, u3, u2} (RingHom.{u3, u2} S R (Semiring.toNonAssocSemiring.{u3} S (CommSemiring.toSemiring.{u3} S _inst_1)) (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_2))) S R (NonUnitalNonAssocSemiring.toMul.{u3} S (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} S (Semiring.toNonAssocSemiring.{u3} S (CommSemiring.toSemiring.{u3} S _inst_1)))) (NonUnitalNonAssocSemiring.toMul.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_2)))) (NonUnitalRingHomClass.toMulHomClass.{max u3 u2, u3, u2} (RingHom.{u3, u2} S R (Semiring.toNonAssocSemiring.{u3} S (CommSemiring.toSemiring.{u3} S _inst_1)) (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_2))) S R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} S (Semiring.toNonAssocSemiring.{u3} S (CommSemiring.toSemiring.{u3} S _inst_1))) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_2))) (RingHomClass.toNonUnitalRingHomClass.{max u3 u2, u3, u2} (RingHom.{u3, u2} S R (Semiring.toNonAssocSemiring.{u3} S (CommSemiring.toSemiring.{u3} S _inst_1)) (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_2))) S R (Semiring.toNonAssocSemiring.{u3} S (CommSemiring.toSemiring.{u3} S _inst_1)) (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_2)) (RingHom.instRingHomClassRingHom.{u3, u2} S R (Semiring.toNonAssocSemiring.{u3} S (CommSemiring.toSemiring.{u3} S _inst_1)) (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_2)))))) (algebraMap.{u3, u2} S R _inst_1 (CommSemiring.toSemiring.{u2} R _inst_2) _inst_7)))
+<too large>
 Case conversion may be inaccurate. Consider using '#align unitization.algebra_map_eq_inl_comp Unitization.algebraMap_eq_inl_compₓ'. -/
 theorem algebraMap_eq_inl_comp : ⇑(algebraMap S (Unitization R A)) = inl ∘ algebraMap S R :=
   rfl
 #align unitization.algebra_map_eq_inl_comp Unitization.algebraMap_eq_inl_comp
 
 /- warning: unitization.algebra_map_eq_inl_ring_hom_comp -> Unitization.algebraMap_eq_inlRingHom_comp is a dubious translation:
-lean 3 declaration is
-  forall (S : Type.{u1}) (R : Type.{u2}) (A : Type.{u3}) [_inst_1 : CommSemiring.{u1} S] [_inst_2 : CommSemiring.{u2} R] [_inst_3 : NonUnitalSemiring.{u3} A] [_inst_4 : Module.{u2, u3} R A (CommSemiring.toSemiring.{u2} R _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u3} A _inst_3))] [_inst_5 : IsScalarTower.{u2, u3, u3} R A A (SMulZeroClass.toHasSmul.{u2, u3} R A (AddZeroClass.toHasZero.{u3} A (AddMonoid.toAddZeroClass.{u3} A (AddCommMonoid.toAddMonoid.{u3} A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u3} A _inst_3))))) (SMulWithZero.toSmulZeroClass.{u2, u3} R A (MulZeroClass.toHasZero.{u2} R (MulZeroOneClass.toMulZeroClass.{u2} R (MonoidWithZero.toMulZeroOneClass.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R _inst_2))))) (AddZeroClass.toHasZero.{u3} A (AddMonoid.toAddZeroClass.{u3} A (AddCommMonoid.toAddMonoid.{u3} A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u3} A _inst_3))))) (MulActionWithZero.toSMulWithZero.{u2, u3} R A (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R _inst_2)) (AddZeroClass.toHasZero.{u3} A (AddMonoid.toAddZeroClass.{u3} A (AddCommMonoid.toAddMonoid.{u3} A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u3} A _inst_3))))) (Module.toMulActionWithZero.{u2, u3} R A (CommSemiring.toSemiring.{u2} R _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u3} A _inst_3)) _inst_4)))) (Mul.toSMul.{u3} A (Distrib.toHasMul.{u3} A (NonUnitalNonAssocSemiring.toDistrib.{u3} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u3} A _inst_3)))) (SMulZeroClass.toHasSmul.{u2, u3} R A (AddZeroClass.toHasZero.{u3} A (AddMonoid.toAddZeroClass.{u3} A (AddCommMonoid.toAddMonoid.{u3} A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u3} A _inst_3))))) (SMulWithZero.toSmulZeroClass.{u2, u3} R A (MulZeroClass.toHasZero.{u2} R (MulZeroOneClass.toMulZeroClass.{u2} R (MonoidWithZero.toMulZeroOneClass.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R _inst_2))))) (AddZeroClass.toHasZero.{u3} A (AddMonoid.toAddZeroClass.{u3} A (AddCommMonoid.toAddMonoid.{u3} A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u3} A _inst_3))))) (MulActionWithZero.toSMulWithZero.{u2, u3} R A (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R _inst_2)) (AddZeroClass.toHasZero.{u3} A (AddMonoid.toAddZeroClass.{u3} A (AddCommMonoid.toAddMonoid.{u3} A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u3} A _inst_3))))) (Module.toMulActionWithZero.{u2, u3} R A (CommSemiring.toSemiring.{u2} R _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u3} A _inst_3)) _inst_4))))] [_inst_6 : SMulCommClass.{u2, u3, u3} R A A (SMulZeroClass.toHasSmul.{u2, u3} R A (AddZeroClass.toHasZero.{u3} A (AddMonoid.toAddZeroClass.{u3} A (AddCommMonoid.toAddMonoid.{u3} A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u3} A _inst_3))))) (SMulWithZero.toSmulZeroClass.{u2, u3} R A (MulZeroClass.toHasZero.{u2} R (MulZeroOneClass.toMulZeroClass.{u2} R (MonoidWithZero.toMulZeroOneClass.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R _inst_2))))) (AddZeroClass.toHasZero.{u3} A (AddMonoid.toAddZeroClass.{u3} A (AddCommMonoid.toAddMonoid.{u3} A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u3} A _inst_3))))) (MulActionWithZero.toSMulWithZero.{u2, u3} R A (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R _inst_2)) (AddZeroClass.toHasZero.{u3} A (AddMonoid.toAddZeroClass.{u3} A (AddCommMonoid.toAddMonoid.{u3} A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u3} A _inst_3))))) (Module.toMulActionWithZero.{u2, u3} R A (CommSemiring.toSemiring.{u2} R _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u3} A _inst_3)) _inst_4)))) (Mul.toSMul.{u3} A (Distrib.toHasMul.{u3} A (NonUnitalNonAssocSemiring.toDistrib.{u3} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u3} A _inst_3))))] [_inst_7 : Algebra.{u1, u2} S R _inst_1 (CommSemiring.toSemiring.{u2} R _inst_2)] [_inst_8 : DistribMulAction.{u1, u3} S A (MonoidWithZero.toMonoid.{u1} S (Semiring.toMonoidWithZero.{u1} S (CommSemiring.toSemiring.{u1} S _inst_1))) (AddCommMonoid.toAddMonoid.{u3} A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u3} A _inst_3)))] [_inst_9 : IsScalarTower.{u1, u2, u3} S R A (SMulZeroClass.toHasSmul.{u1, u2} S R (AddZeroClass.toHasZero.{u2} R (AddMonoid.toAddZeroClass.{u2} R (AddCommMonoid.toAddMonoid.{u2} R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_2))))))) (SMulWithZero.toSmulZeroClass.{u1, u2} S R (MulZeroClass.toHasZero.{u1} S (MulZeroOneClass.toMulZeroClass.{u1} S (MonoidWithZero.toMulZeroOneClass.{u1} S (Semiring.toMonoidWithZero.{u1} S (CommSemiring.toSemiring.{u1} S _inst_1))))) (AddZeroClass.toHasZero.{u2} R (AddMonoid.toAddZeroClass.{u2} R (AddCommMonoid.toAddMonoid.{u2} R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_2))))))) (MulActionWithZero.toSMulWithZero.{u1, u2} S R (Semiring.toMonoidWithZero.{u1} S (CommSemiring.toSemiring.{u1} S _inst_1)) (AddZeroClass.toHasZero.{u2} R (AddMonoid.toAddZeroClass.{u2} R (AddCommMonoid.toAddMonoid.{u2} R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_2))))))) (Module.toMulActionWithZero.{u1, u2} S R (CommSemiring.toSemiring.{u1} S _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_2)))) (Algebra.toModule.{u1, u2} S R _inst_1 (CommSemiring.toSemiring.{u2} R _inst_2) _inst_7))))) (SMulZeroClass.toHasSmul.{u2, u3} R A (AddZeroClass.toHasZero.{u3} A (AddMonoid.toAddZeroClass.{u3} A (AddCommMonoid.toAddMonoid.{u3} A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u3} A _inst_3))))) (SMulWithZero.toSmulZeroClass.{u2, u3} R A (MulZeroClass.toHasZero.{u2} R (MulZeroOneClass.toMulZeroClass.{u2} R (MonoidWithZero.toMulZeroOneClass.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R _inst_2))))) (AddZeroClass.toHasZero.{u3} A (AddMonoid.toAddZeroClass.{u3} A (AddCommMonoid.toAddMonoid.{u3} A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u3} A _inst_3))))) (MulActionWithZero.toSMulWithZero.{u2, u3} R A (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R _inst_2)) (AddZeroClass.toHasZero.{u3} A (AddMonoid.toAddZeroClass.{u3} A (AddCommMonoid.toAddMonoid.{u3} A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u3} A _inst_3))))) (Module.toMulActionWithZero.{u2, u3} R A (CommSemiring.toSemiring.{u2} R _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u3} A _inst_3)) _inst_4)))) (SMulZeroClass.toHasSmul.{u1, u3} S A (AddZeroClass.toHasZero.{u3} A (AddMonoid.toAddZeroClass.{u3} A (AddCommMonoid.toAddMonoid.{u3} A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u3} A _inst_3))))) (DistribSMul.toSmulZeroClass.{u1, u3} S A (AddMonoid.toAddZeroClass.{u3} A (AddCommMonoid.toAddMonoid.{u3} A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u3} A _inst_3)))) (DistribMulAction.toDistribSMul.{u1, u3} S A (MonoidWithZero.toMonoid.{u1} S (Semiring.toMonoidWithZero.{u1} S (CommSemiring.toSemiring.{u1} S _inst_1))) (AddCommMonoid.toAddMonoid.{u3} A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u3} A _inst_3))) _inst_8)))], Eq.{max (succ u1) (succ (max u2 u3))} (RingHom.{u1, max u2 u3} S (Unitization.{u2, u3} R A) (Semiring.toNonAssocSemiring.{u1} S (CommSemiring.toSemiring.{u1} S _inst_1)) (Semiring.toNonAssocSemiring.{max u2 u3} (Unitization.{u2, u3} R A) (Unitization.semiring.{u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_5 _inst_6))) (algebraMap.{u1, max u2 u3} S (Unitization.{u2, u3} R A) _inst_1 (Unitization.semiring.{u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_5 _inst_6) (Unitization.algebra.{u1, u2, u3} S R A _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 _inst_6 _inst_7 _inst_8 _inst_9)) (RingHom.comp.{u1, u2, max u2 u3} S R (Unitization.{u2, u3} R A) (Semiring.toNonAssocSemiring.{u1} S (CommSemiring.toSemiring.{u1} S _inst_1)) (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_2)) (Unitization.nonAssocSemiring.{u2, u3} R A (CommSemiring.toSemiring.{u2} R _inst_2) (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u3} A _inst_3) _inst_4) (Unitization.inlRingHom.{u2, u3} R A (CommSemiring.toSemiring.{u2} R _inst_2) _inst_3 _inst_4) (algebraMap.{u1, u2} S R _inst_1 (CommSemiring.toSemiring.{u2} R _inst_2) _inst_7))
-but is expected to have type
-  forall (S : Type.{u3}) (R : Type.{u2}) (A : Type.{u1}) [_inst_1 : CommSemiring.{u3} S] [_inst_2 : CommSemiring.{u2} R] [_inst_3 : NonUnitalSemiring.{u1} A] [_inst_4 : Module.{u2, u1} R A (CommSemiring.toSemiring.{u2} R _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u1} A _inst_3))] [_inst_5 : IsScalarTower.{u2, u1, u1} R A A (SMulZeroClass.toSMul.{u2, u1} R A (SemigroupWithZero.toZero.{u1} A (NonUnitalSemiring.toSemigroupWithZero.{u1} A _inst_3)) (SMulWithZero.toSMulZeroClass.{u2, u1} R A (CommMonoidWithZero.toZero.{u2} R (CommSemiring.toCommMonoidWithZero.{u2} R _inst_2)) (SemigroupWithZero.toZero.{u1} A (NonUnitalSemiring.toSemigroupWithZero.{u1} A _inst_3)) (MulActionWithZero.toSMulWithZero.{u2, u1} R A (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R _inst_2)) (SemigroupWithZero.toZero.{u1} A (NonUnitalSemiring.toSemigroupWithZero.{u1} A _inst_3)) (Module.toMulActionWithZero.{u2, u1} R A (CommSemiring.toSemiring.{u2} R _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u1} A _inst_3)) _inst_4)))) (SMulZeroClass.toSMul.{u1, u1} A A (SemigroupWithZero.toZero.{u1} A (NonUnitalSemiring.toSemigroupWithZero.{u1} A _inst_3)) (SMulWithZero.toSMulZeroClass.{u1, u1} A A (SemigroupWithZero.toZero.{u1} A (NonUnitalSemiring.toSemigroupWithZero.{u1} A _inst_3)) (SemigroupWithZero.toZero.{u1} A (NonUnitalSemiring.toSemigroupWithZero.{u1} A _inst_3)) (MulZeroClass.toSMulWithZero.{u1} A (NonUnitalNonAssocSemiring.toMulZeroClass.{u1} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u1} A _inst_3))))) (SMulZeroClass.toSMul.{u2, u1} R A (SemigroupWithZero.toZero.{u1} A (NonUnitalSemiring.toSemigroupWithZero.{u1} A _inst_3)) (SMulWithZero.toSMulZeroClass.{u2, u1} R A (CommMonoidWithZero.toZero.{u2} R (CommSemiring.toCommMonoidWithZero.{u2} R _inst_2)) (SemigroupWithZero.toZero.{u1} A (NonUnitalSemiring.toSemigroupWithZero.{u1} A _inst_3)) (MulActionWithZero.toSMulWithZero.{u2, u1} R A (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R _inst_2)) (SemigroupWithZero.toZero.{u1} A (NonUnitalSemiring.toSemigroupWithZero.{u1} A _inst_3)) (Module.toMulActionWithZero.{u2, u1} R A (CommSemiring.toSemiring.{u2} R _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u1} A _inst_3)) _inst_4))))] [_inst_6 : SMulCommClass.{u2, u1, u1} R A A (SMulZeroClass.toSMul.{u2, u1} R A (SemigroupWithZero.toZero.{u1} A (NonUnitalSemiring.toSemigroupWithZero.{u1} A _inst_3)) (SMulWithZero.toSMulZeroClass.{u2, u1} R A (CommMonoidWithZero.toZero.{u2} R (CommSemiring.toCommMonoidWithZero.{u2} R _inst_2)) (SemigroupWithZero.toZero.{u1} A (NonUnitalSemiring.toSemigroupWithZero.{u1} A _inst_3)) (MulActionWithZero.toSMulWithZero.{u2, u1} R A (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R _inst_2)) (SemigroupWithZero.toZero.{u1} A (NonUnitalSemiring.toSemigroupWithZero.{u1} A _inst_3)) (Module.toMulActionWithZero.{u2, u1} R A (CommSemiring.toSemiring.{u2} R _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u1} A _inst_3)) _inst_4)))) (SMulZeroClass.toSMul.{u1, u1} A A (SemigroupWithZero.toZero.{u1} A (NonUnitalSemiring.toSemigroupWithZero.{u1} A _inst_3)) (SMulWithZero.toSMulZeroClass.{u1, u1} A A (SemigroupWithZero.toZero.{u1} A (NonUnitalSemiring.toSemigroupWithZero.{u1} A _inst_3)) (SemigroupWithZero.toZero.{u1} A (NonUnitalSemiring.toSemigroupWithZero.{u1} A _inst_3)) (MulZeroClass.toSMulWithZero.{u1} A (NonUnitalNonAssocSemiring.toMulZeroClass.{u1} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u1} A _inst_3)))))] [_inst_7 : Algebra.{u3, u2} S R _inst_1 (CommSemiring.toSemiring.{u2} R _inst_2)] [_inst_8 : DistribMulAction.{u3, u1} S A (MonoidWithZero.toMonoid.{u3} S (Semiring.toMonoidWithZero.{u3} S (CommSemiring.toSemiring.{u3} S _inst_1))) (AddCommMonoid.toAddMonoid.{u1} A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u1} A _inst_3)))] [_inst_9 : IsScalarTower.{u3, u2, u1} S R A (Algebra.toSMul.{u3, u2} S R _inst_1 (CommSemiring.toSemiring.{u2} R _inst_2) _inst_7) (SMulZeroClass.toSMul.{u2, u1} R A (SemigroupWithZero.toZero.{u1} A (NonUnitalSemiring.toSemigroupWithZero.{u1} A _inst_3)) (SMulWithZero.toSMulZeroClass.{u2, u1} R A (CommMonoidWithZero.toZero.{u2} R (CommSemiring.toCommMonoidWithZero.{u2} R _inst_2)) (SemigroupWithZero.toZero.{u1} A (NonUnitalSemiring.toSemigroupWithZero.{u1} A _inst_3)) (MulActionWithZero.toSMulWithZero.{u2, u1} R A (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R _inst_2)) (SemigroupWithZero.toZero.{u1} A (NonUnitalSemiring.toSemigroupWithZero.{u1} A _inst_3)) (Module.toMulActionWithZero.{u2, u1} R A (CommSemiring.toSemiring.{u2} R _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u1} A _inst_3)) _inst_4)))) (SMulZeroClass.toSMul.{u3, u1} S A (SemigroupWithZero.toZero.{u1} A (NonUnitalSemiring.toSemigroupWithZero.{u1} A _inst_3)) (DistribSMul.toSMulZeroClass.{u3, u1} S A (AddMonoid.toAddZeroClass.{u1} A (AddCommMonoid.toAddMonoid.{u1} A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u1} A _inst_3)))) (DistribMulAction.toDistribSMul.{u3, u1} S A (MonoidWithZero.toMonoid.{u3} S (Semiring.toMonoidWithZero.{u3} S (CommSemiring.toSemiring.{u3} S _inst_1))) (AddCommMonoid.toAddMonoid.{u1} A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u1} A _inst_3))) _inst_8)))], Eq.{max (max (succ u3) (succ u2)) (succ u1)} (RingHom.{u3, max u1 u2} S (Unitization.{u2, u1} R A) (Semiring.toNonAssocSemiring.{u3} S (CommSemiring.toSemiring.{u3} S _inst_1)) (Semiring.toNonAssocSemiring.{max u1 u2} (Unitization.{u2, u1} R A) (Unitization.semiring.{u2, u1} R A _inst_2 _inst_3 _inst_4 _inst_5 _inst_6))) (algebraMap.{u3, max u1 u2} S (Unitization.{u2, u1} R A) _inst_1 (Unitization.semiring.{u2, u1} R A _inst_2 _inst_3 _inst_4 _inst_5 _inst_6) (Unitization.algebra.{u3, u2, u1} S R A _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 _inst_6 _inst_7 _inst_8 _inst_9)) (RingHom.comp.{u3, u2, max u2 u1} S R (Unitization.{u2, u1} R A) (Semiring.toNonAssocSemiring.{u3} S (CommSemiring.toSemiring.{u3} S _inst_1)) (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_2)) (Unitization.nonAssocSemiring.{u2, u1} R A (CommSemiring.toSemiring.{u2} R _inst_2) (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u1} A _inst_3) _inst_4) (Unitization.inlRingHom.{u2, u1} R A (CommSemiring.toSemiring.{u2} R _inst_2) _inst_3 _inst_4) (algebraMap.{u3, u2} S R _inst_1 (CommSemiring.toSemiring.{u2} R _inst_2) _inst_7))
+<too large>
 Case conversion may be inaccurate. Consider using '#align unitization.algebra_map_eq_inl_ring_hom_comp Unitization.algebraMap_eq_inlRingHom_compₓ'. -/
 theorem algebraMap_eq_inlRingHom_comp :
     algebraMap S (Unitization R A) = (inlRingHom R A).comp (algebraMap S R) :=
@@ -858,20 +846,14 @@ theorem algebraMap_eq_inlRingHom_comp :
 #align unitization.algebra_map_eq_inl_ring_hom_comp Unitization.algebraMap_eq_inlRingHom_comp
 
 /- warning: unitization.algebra_map_eq_inl -> Unitization.algebraMap_eq_inl is a dubious translation:
-lean 3 declaration is
-  forall (R : Type.{u1}) (A : Type.{u2}) [_inst_2 : CommSemiring.{u1} R] [_inst_3 : NonUnitalSemiring.{u2} A] [_inst_4 : Module.{u1, u2} R A (CommSemiring.toSemiring.{u1} R _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u2} A _inst_3))] [_inst_5 : IsScalarTower.{u1, u2, u2} R A A (SMulZeroClass.toHasSmul.{u1, u2} R A (AddZeroClass.toHasZero.{u2} A (AddMonoid.toAddZeroClass.{u2} A (AddCommMonoid.toAddMonoid.{u2} A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u2} A _inst_3))))) (SMulWithZero.toSmulZeroClass.{u1, u2} R A (MulZeroClass.toHasZero.{u1} R (MulZeroOneClass.toMulZeroClass.{u1} R (MonoidWithZero.toMulZeroOneClass.{u1} R (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R _inst_2))))) (AddZeroClass.toHasZero.{u2} A (AddMonoid.toAddZeroClass.{u2} A (AddCommMonoid.toAddMonoid.{u2} A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u2} A _inst_3))))) (MulActionWithZero.toSMulWithZero.{u1, u2} R A (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R _inst_2)) (AddZeroClass.toHasZero.{u2} A (AddMonoid.toAddZeroClass.{u2} A (AddCommMonoid.toAddMonoid.{u2} A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u2} A _inst_3))))) (Module.toMulActionWithZero.{u1, u2} R A (CommSemiring.toSemiring.{u1} R _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u2} A _inst_3)) _inst_4)))) (Mul.toSMul.{u2} A (Distrib.toHasMul.{u2} A (NonUnitalNonAssocSemiring.toDistrib.{u2} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u2} A _inst_3)))) (SMulZeroClass.toHasSmul.{u1, u2} R A (AddZeroClass.toHasZero.{u2} A (AddMonoid.toAddZeroClass.{u2} A (AddCommMonoid.toAddMonoid.{u2} A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u2} A _inst_3))))) (SMulWithZero.toSmulZeroClass.{u1, u2} R A (MulZeroClass.toHasZero.{u1} R (MulZeroOneClass.toMulZeroClass.{u1} R (MonoidWithZero.toMulZeroOneClass.{u1} R (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R _inst_2))))) (AddZeroClass.toHasZero.{u2} A (AddMonoid.toAddZeroClass.{u2} A (AddCommMonoid.toAddMonoid.{u2} A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u2} A _inst_3))))) (MulActionWithZero.toSMulWithZero.{u1, u2} R A (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R _inst_2)) (AddZeroClass.toHasZero.{u2} A (AddMonoid.toAddZeroClass.{u2} A (AddCommMonoid.toAddMonoid.{u2} A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u2} A _inst_3))))) (Module.toMulActionWithZero.{u1, u2} R A (CommSemiring.toSemiring.{u1} R _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u2} A _inst_3)) _inst_4))))] [_inst_6 : SMulCommClass.{u1, u2, u2} R A A (SMulZeroClass.toHasSmul.{u1, u2} R A (AddZeroClass.toHasZero.{u2} A (AddMonoid.toAddZeroClass.{u2} A (AddCommMonoid.toAddMonoid.{u2} A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u2} A _inst_3))))) (SMulWithZero.toSmulZeroClass.{u1, u2} R A (MulZeroClass.toHasZero.{u1} R (MulZeroOneClass.toMulZeroClass.{u1} R (MonoidWithZero.toMulZeroOneClass.{u1} R (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R _inst_2))))) (AddZeroClass.toHasZero.{u2} A (AddMonoid.toAddZeroClass.{u2} A (AddCommMonoid.toAddMonoid.{u2} A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u2} A _inst_3))))) (MulActionWithZero.toSMulWithZero.{u1, u2} R A (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R _inst_2)) (AddZeroClass.toHasZero.{u2} A (AddMonoid.toAddZeroClass.{u2} A (AddCommMonoid.toAddMonoid.{u2} A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u2} A _inst_3))))) (Module.toMulActionWithZero.{u1, u2} R A (CommSemiring.toSemiring.{u1} R _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u2} A _inst_3)) _inst_4)))) (Mul.toSMul.{u2} A (Distrib.toHasMul.{u2} A (NonUnitalNonAssocSemiring.toDistrib.{u2} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u2} A _inst_3))))], Eq.{max (succ u1) (succ (max u1 u2))} (R -> (Unitization.{u1, u2} R A)) (coeFn.{max (succ u1) (succ (max u1 u2)), max (succ u1) (succ (max u1 u2))} (RingHom.{u1, max u1 u2} R (Unitization.{u1, u2} R A) (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R _inst_2)) (Semiring.toNonAssocSemiring.{max u1 u2} (Unitization.{u1, u2} R A) (Unitization.semiring.{u1, u2} R A _inst_2 _inst_3 _inst_4 _inst_5 _inst_6))) (fun (_x : RingHom.{u1, max u1 u2} R (Unitization.{u1, u2} R A) (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R _inst_2)) (Semiring.toNonAssocSemiring.{max u1 u2} (Unitization.{u1, u2} R A) (Unitization.semiring.{u1, u2} R A _inst_2 _inst_3 _inst_4 _inst_5 _inst_6))) => R -> (Unitization.{u1, u2} R A)) (RingHom.hasCoeToFun.{u1, max u1 u2} R (Unitization.{u1, u2} R A) (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R _inst_2)) (Semiring.toNonAssocSemiring.{max u1 u2} (Unitization.{u1, u2} R A) (Unitization.semiring.{u1, u2} R A _inst_2 _inst_3 _inst_4 _inst_5 _inst_6))) (algebraMap.{u1, max u1 u2} R (Unitization.{u1, u2} R A) _inst_2 (Unitization.semiring.{u1, u2} R A _inst_2 _inst_3 _inst_4 _inst_5 _inst_6) (Unitization.algebra.{u1, u1, u2} R R A _inst_2 _inst_2 _inst_3 _inst_4 _inst_5 _inst_6 (Algebra.id.{u1} R _inst_2) (Module.toDistribMulAction.{u1, u2} R A (CommSemiring.toSemiring.{u1} R _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u2} A _inst_3)) _inst_4) (IsScalarTower.left.{u1, u2} R A (MonoidWithZero.toMonoid.{u1} R (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R _inst_2))) (MulActionWithZero.toMulAction.{u1, u2} R A (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R _inst_2)) (AddZeroClass.toHasZero.{u2} A (AddMonoid.toAddZeroClass.{u2} A (AddCommMonoid.toAddMonoid.{u2} A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u2} A _inst_3))))) (Module.toMulActionWithZero.{u1, u2} R A (CommSemiring.toSemiring.{u1} R _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u2} A _inst_3)) _inst_4)))))) (Unitization.inl.{u1, u2} R A (MulZeroClass.toHasZero.{u2} A (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u2} A _inst_3))))
-but is expected to have type
-  forall (R : Type.{u2}) (A : Type.{u1}) [_inst_2 : CommSemiring.{u2} R] [_inst_3 : NonUnitalSemiring.{u1} A] [_inst_4 : Module.{u2, u1} R A (CommSemiring.toSemiring.{u2} R _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u1} A _inst_3))] [_inst_5 : IsScalarTower.{u2, u1, u1} R A A (SMulZeroClass.toSMul.{u2, u1} R A (SemigroupWithZero.toZero.{u1} A (NonUnitalSemiring.toSemigroupWithZero.{u1} A _inst_3)) (SMulWithZero.toSMulZeroClass.{u2, u1} R A (CommMonoidWithZero.toZero.{u2} R (CommSemiring.toCommMonoidWithZero.{u2} R _inst_2)) (SemigroupWithZero.toZero.{u1} A (NonUnitalSemiring.toSemigroupWithZero.{u1} A _inst_3)) (MulActionWithZero.toSMulWithZero.{u2, u1} R A (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R _inst_2)) (SemigroupWithZero.toZero.{u1} A (NonUnitalSemiring.toSemigroupWithZero.{u1} A _inst_3)) (Module.toMulActionWithZero.{u2, u1} R A (CommSemiring.toSemiring.{u2} R _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u1} A _inst_3)) _inst_4)))) (SMulZeroClass.toSMul.{u1, u1} A A (SemigroupWithZero.toZero.{u1} A (NonUnitalSemiring.toSemigroupWithZero.{u1} A _inst_3)) (SMulWithZero.toSMulZeroClass.{u1, u1} A A (SemigroupWithZero.toZero.{u1} A (NonUnitalSemiring.toSemigroupWithZero.{u1} A _inst_3)) (SemigroupWithZero.toZero.{u1} A (NonUnitalSemiring.toSemigroupWithZero.{u1} A _inst_3)) (MulZeroClass.toSMulWithZero.{u1} A (NonUnitalNonAssocSemiring.toMulZeroClass.{u1} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u1} A _inst_3))))) (SMulZeroClass.toSMul.{u2, u1} R A (SemigroupWithZero.toZero.{u1} A (NonUnitalSemiring.toSemigroupWithZero.{u1} A _inst_3)) (SMulWithZero.toSMulZeroClass.{u2, u1} R A (CommMonoidWithZero.toZero.{u2} R (CommSemiring.toCommMonoidWithZero.{u2} R _inst_2)) (SemigroupWithZero.toZero.{u1} A (NonUnitalSemiring.toSemigroupWithZero.{u1} A _inst_3)) (MulActionWithZero.toSMulWithZero.{u2, u1} R A (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R _inst_2)) (SemigroupWithZero.toZero.{u1} A (NonUnitalSemiring.toSemigroupWithZero.{u1} A _inst_3)) (Module.toMulActionWithZero.{u2, u1} R A (CommSemiring.toSemiring.{u2} R _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u1} A _inst_3)) _inst_4))))] [_inst_6 : SMulCommClass.{u2, u1, u1} R A A (SMulZeroClass.toSMul.{u2, u1} R A (SemigroupWithZero.toZero.{u1} A (NonUnitalSemiring.toSemigroupWithZero.{u1} A _inst_3)) (SMulWithZero.toSMulZeroClass.{u2, u1} R A (CommMonoidWithZero.toZero.{u2} R (CommSemiring.toCommMonoidWithZero.{u2} R _inst_2)) (SemigroupWithZero.toZero.{u1} A (NonUnitalSemiring.toSemigroupWithZero.{u1} A _inst_3)) (MulActionWithZero.toSMulWithZero.{u2, u1} R A (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R _inst_2)) (SemigroupWithZero.toZero.{u1} A (NonUnitalSemiring.toSemigroupWithZero.{u1} A _inst_3)) (Module.toMulActionWithZero.{u2, u1} R A (CommSemiring.toSemiring.{u2} R _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u1} A _inst_3)) _inst_4)))) (SMulZeroClass.toSMul.{u1, u1} A A (SemigroupWithZero.toZero.{u1} A (NonUnitalSemiring.toSemigroupWithZero.{u1} A _inst_3)) (SMulWithZero.toSMulZeroClass.{u1, u1} A A (SemigroupWithZero.toZero.{u1} A (NonUnitalSemiring.toSemigroupWithZero.{u1} A _inst_3)) (SemigroupWithZero.toZero.{u1} A (NonUnitalSemiring.toSemigroupWithZero.{u1} A _inst_3)) (MulZeroClass.toSMulWithZero.{u1} A (NonUnitalNonAssocSemiring.toMulZeroClass.{u1} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u1} A _inst_3)))))], Eq.{max (succ u2) (succ u1)} (forall (ᾰ : R), (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : R) => Unitization.{u2, u1} R A) ᾰ) (FunLike.coe.{max (succ u2) (succ u1), succ u2, max (succ u2) (succ u1)} (RingHom.{u2, max u1 u2} R (Unitization.{u2, u1} R A) (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_2)) (Semiring.toNonAssocSemiring.{max u1 u2} (Unitization.{u2, u1} R A) (Unitization.semiring.{u2, u1} R A _inst_2 _inst_3 _inst_4 _inst_5 _inst_6))) R (fun (_x : R) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : R) => Unitization.{u2, u1} R A) _x) (MulHomClass.toFunLike.{max u2 u1, u2, max u2 u1} (RingHom.{u2, max u1 u2} R (Unitization.{u2, u1} R A) (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_2)) (Semiring.toNonAssocSemiring.{max u1 u2} (Unitization.{u2, u1} R A) (Unitization.semiring.{u2, u1} R A _inst_2 _inst_3 _inst_4 _inst_5 _inst_6))) R (Unitization.{u2, u1} R A) (NonUnitalNonAssocSemiring.toMul.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_2)))) (NonUnitalNonAssocSemiring.toMul.{max u2 u1} (Unitization.{u2, u1} R A) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{max u2 u1} (Unitization.{u2, u1} R A) (Semiring.toNonAssocSemiring.{max u1 u2} (Unitization.{u2, u1} R A) (Unitization.semiring.{u2, u1} R A _inst_2 _inst_3 _inst_4 _inst_5 _inst_6)))) (NonUnitalRingHomClass.toMulHomClass.{max u2 u1, u2, max u2 u1} (RingHom.{u2, max u1 u2} R (Unitization.{u2, u1} R A) (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_2)) (Semiring.toNonAssocSemiring.{max u1 u2} (Unitization.{u2, u1} R A) (Unitization.semiring.{u2, u1} R A _inst_2 _inst_3 _inst_4 _inst_5 _inst_6))) R (Unitization.{u2, u1} R A) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_2))) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{max u2 u1} (Unitization.{u2, u1} R A) (Semiring.toNonAssocSemiring.{max u1 u2} (Unitization.{u2, u1} R A) (Unitization.semiring.{u2, u1} R A _inst_2 _inst_3 _inst_4 _inst_5 _inst_6))) (RingHomClass.toNonUnitalRingHomClass.{max u2 u1, u2, max u2 u1} (RingHom.{u2, max u1 u2} R (Unitization.{u2, u1} R A) (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_2)) (Semiring.toNonAssocSemiring.{max u1 u2} (Unitization.{u2, u1} R A) (Unitization.semiring.{u2, u1} R A _inst_2 _inst_3 _inst_4 _inst_5 _inst_6))) R (Unitization.{u2, u1} R A) (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_2)) (Semiring.toNonAssocSemiring.{max u1 u2} (Unitization.{u2, u1} R A) (Unitization.semiring.{u2, u1} R A _inst_2 _inst_3 _inst_4 _inst_5 _inst_6)) (RingHom.instRingHomClassRingHom.{u2, max u2 u1} R (Unitization.{u2, u1} R A) (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_2)) (Semiring.toNonAssocSemiring.{max u1 u2} (Unitization.{u2, u1} R A) (Unitization.semiring.{u2, u1} R A _inst_2 _inst_3 _inst_4 _inst_5 _inst_6)))))) (algebraMap.{u2, max u1 u2} R (Unitization.{u2, u1} R A) _inst_2 (Unitization.semiring.{u2, u1} R A _inst_2 _inst_3 _inst_4 _inst_5 _inst_6) (Unitization.algebra.{u2, u2, u1} R R A _inst_2 _inst_2 _inst_3 _inst_4 _inst_5 _inst_6 (Algebra.id.{u2} R _inst_2) (Module.toDistribMulAction.{u2, u1} R A (CommSemiring.toSemiring.{u2} R _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u1} A _inst_3)) _inst_4) (IsScalarTower.left.{u2, u1} R A (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R _inst_2))) (MulActionWithZero.toMulAction.{u2, u1} R A (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R _inst_2)) (SemigroupWithZero.toZero.{u1} A (NonUnitalSemiring.toSemigroupWithZero.{u1} A _inst_3)) (Module.toMulActionWithZero.{u2, u1} R A (CommSemiring.toSemiring.{u2} R _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u1} A _inst_3)) _inst_4)))))) (Unitization.inl.{u2, u1} R A (SemigroupWithZero.toZero.{u1} A (NonUnitalSemiring.toSemigroupWithZero.{u1} A _inst_3)))
+<too large>
 Case conversion may be inaccurate. Consider using '#align unitization.algebra_map_eq_inl Unitization.algebraMap_eq_inlₓ'. -/
 theorem algebraMap_eq_inl : ⇑(algebraMap R (Unitization R A)) = inl :=
   rfl
 #align unitization.algebra_map_eq_inl Unitization.algebraMap_eq_inl
 
 /- warning: unitization.algebra_map_eq_inl_hom -> Unitization.algebraMap_eq_inl_hom is a dubious translation:
-lean 3 declaration is
-  forall (R : Type.{u1}) (A : Type.{u2}) [_inst_2 : CommSemiring.{u1} R] [_inst_3 : NonUnitalSemiring.{u2} A] [_inst_4 : Module.{u1, u2} R A (CommSemiring.toSemiring.{u1} R _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u2} A _inst_3))] [_inst_5 : IsScalarTower.{u1, u2, u2} R A A (SMulZeroClass.toHasSmul.{u1, u2} R A (AddZeroClass.toHasZero.{u2} A (AddMonoid.toAddZeroClass.{u2} A (AddCommMonoid.toAddMonoid.{u2} A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u2} A _inst_3))))) (SMulWithZero.toSmulZeroClass.{u1, u2} R A (MulZeroClass.toHasZero.{u1} R (MulZeroOneClass.toMulZeroClass.{u1} R (MonoidWithZero.toMulZeroOneClass.{u1} R (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R _inst_2))))) (AddZeroClass.toHasZero.{u2} A (AddMonoid.toAddZeroClass.{u2} A (AddCommMonoid.toAddMonoid.{u2} A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u2} A _inst_3))))) (MulActionWithZero.toSMulWithZero.{u1, u2} R A (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R _inst_2)) (AddZeroClass.toHasZero.{u2} A (AddMonoid.toAddZeroClass.{u2} A (AddCommMonoid.toAddMonoid.{u2} A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u2} A _inst_3))))) (Module.toMulActionWithZero.{u1, u2} R A (CommSemiring.toSemiring.{u1} R _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u2} A _inst_3)) _inst_4)))) (Mul.toSMul.{u2} A (Distrib.toHasMul.{u2} A (NonUnitalNonAssocSemiring.toDistrib.{u2} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u2} A _inst_3)))) (SMulZeroClass.toHasSmul.{u1, u2} R A (AddZeroClass.toHasZero.{u2} A (AddMonoid.toAddZeroClass.{u2} A (AddCommMonoid.toAddMonoid.{u2} A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u2} A _inst_3))))) (SMulWithZero.toSmulZeroClass.{u1, u2} R A (MulZeroClass.toHasZero.{u1} R (MulZeroOneClass.toMulZeroClass.{u1} R (MonoidWithZero.toMulZeroOneClass.{u1} R (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R _inst_2))))) (AddZeroClass.toHasZero.{u2} A (AddMonoid.toAddZeroClass.{u2} A (AddCommMonoid.toAddMonoid.{u2} A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u2} A _inst_3))))) (MulActionWithZero.toSMulWithZero.{u1, u2} R A (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R _inst_2)) (AddZeroClass.toHasZero.{u2} A (AddMonoid.toAddZeroClass.{u2} A (AddCommMonoid.toAddMonoid.{u2} A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u2} A _inst_3))))) (Module.toMulActionWithZero.{u1, u2} R A (CommSemiring.toSemiring.{u1} R _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u2} A _inst_3)) _inst_4))))] [_inst_6 : SMulCommClass.{u1, u2, u2} R A A (SMulZeroClass.toHasSmul.{u1, u2} R A (AddZeroClass.toHasZero.{u2} A (AddMonoid.toAddZeroClass.{u2} A (AddCommMonoid.toAddMonoid.{u2} A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u2} A _inst_3))))) (SMulWithZero.toSmulZeroClass.{u1, u2} R A (MulZeroClass.toHasZero.{u1} R (MulZeroOneClass.toMulZeroClass.{u1} R (MonoidWithZero.toMulZeroOneClass.{u1} R (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R _inst_2))))) (AddZeroClass.toHasZero.{u2} A (AddMonoid.toAddZeroClass.{u2} A (AddCommMonoid.toAddMonoid.{u2} A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u2} A _inst_3))))) (MulActionWithZero.toSMulWithZero.{u1, u2} R A (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R _inst_2)) (AddZeroClass.toHasZero.{u2} A (AddMonoid.toAddZeroClass.{u2} A (AddCommMonoid.toAddMonoid.{u2} A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u2} A _inst_3))))) (Module.toMulActionWithZero.{u1, u2} R A (CommSemiring.toSemiring.{u1} R _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u2} A _inst_3)) _inst_4)))) (Mul.toSMul.{u2} A (Distrib.toHasMul.{u2} A (NonUnitalNonAssocSemiring.toDistrib.{u2} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u2} A _inst_3))))], Eq.{max (succ u1) (succ (max u1 u2))} (RingHom.{u1, max u1 u2} R (Unitization.{u1, u2} R A) (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R _inst_2)) (Semiring.toNonAssocSemiring.{max u1 u2} (Unitization.{u1, u2} R A) (Unitization.semiring.{u1, u2} R A _inst_2 _inst_3 _inst_4 _inst_5 _inst_6))) (algebraMap.{u1, max u1 u2} R (Unitization.{u1, u2} R A) _inst_2 (Unitization.semiring.{u1, u2} R A _inst_2 _inst_3 _inst_4 _inst_5 _inst_6) (Unitization.algebra.{u1, u1, u2} R R A _inst_2 _inst_2 _inst_3 _inst_4 _inst_5 _inst_6 (Algebra.id.{u1} R _inst_2) (Module.toDistribMulAction.{u1, u2} R A (CommSemiring.toSemiring.{u1} R _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u2} A _inst_3)) _inst_4) (IsScalarTower.left.{u1, u2} R A (MonoidWithZero.toMonoid.{u1} R (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R _inst_2))) (MulActionWithZero.toMulAction.{u1, u2} R A (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R _inst_2)) (AddZeroClass.toHasZero.{u2} A (AddMonoid.toAddZeroClass.{u2} A (AddCommMonoid.toAddMonoid.{u2} A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u2} A _inst_3))))) (Module.toMulActionWithZero.{u1, u2} R A (CommSemiring.toSemiring.{u1} R _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u2} A _inst_3)) _inst_4))))) (Unitization.inlRingHom.{u1, u2} R A (CommSemiring.toSemiring.{u1} R _inst_2) _inst_3 _inst_4)
-but is expected to have type
-  forall (R : Type.{u2}) (A : Type.{u1}) [_inst_2 : CommSemiring.{u2} R] [_inst_3 : NonUnitalSemiring.{u1} A] [_inst_4 : Module.{u2, u1} R A (CommSemiring.toSemiring.{u2} R _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u1} A _inst_3))] [_inst_5 : IsScalarTower.{u2, u1, u1} R A A (SMulZeroClass.toSMul.{u2, u1} R A (SemigroupWithZero.toZero.{u1} A (NonUnitalSemiring.toSemigroupWithZero.{u1} A _inst_3)) (SMulWithZero.toSMulZeroClass.{u2, u1} R A (CommMonoidWithZero.toZero.{u2} R (CommSemiring.toCommMonoidWithZero.{u2} R _inst_2)) (SemigroupWithZero.toZero.{u1} A (NonUnitalSemiring.toSemigroupWithZero.{u1} A _inst_3)) (MulActionWithZero.toSMulWithZero.{u2, u1} R A (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R _inst_2)) (SemigroupWithZero.toZero.{u1} A (NonUnitalSemiring.toSemigroupWithZero.{u1} A _inst_3)) (Module.toMulActionWithZero.{u2, u1} R A (CommSemiring.toSemiring.{u2} R _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u1} A _inst_3)) _inst_4)))) (SMulZeroClass.toSMul.{u1, u1} A A (SemigroupWithZero.toZero.{u1} A (NonUnitalSemiring.toSemigroupWithZero.{u1} A _inst_3)) (SMulWithZero.toSMulZeroClass.{u1, u1} A A (SemigroupWithZero.toZero.{u1} A (NonUnitalSemiring.toSemigroupWithZero.{u1} A _inst_3)) (SemigroupWithZero.toZero.{u1} A (NonUnitalSemiring.toSemigroupWithZero.{u1} A _inst_3)) (MulZeroClass.toSMulWithZero.{u1} A (NonUnitalNonAssocSemiring.toMulZeroClass.{u1} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u1} A _inst_3))))) (SMulZeroClass.toSMul.{u2, u1} R A (SemigroupWithZero.toZero.{u1} A (NonUnitalSemiring.toSemigroupWithZero.{u1} A _inst_3)) (SMulWithZero.toSMulZeroClass.{u2, u1} R A (CommMonoidWithZero.toZero.{u2} R (CommSemiring.toCommMonoidWithZero.{u2} R _inst_2)) (SemigroupWithZero.toZero.{u1} A (NonUnitalSemiring.toSemigroupWithZero.{u1} A _inst_3)) (MulActionWithZero.toSMulWithZero.{u2, u1} R A (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R _inst_2)) (SemigroupWithZero.toZero.{u1} A (NonUnitalSemiring.toSemigroupWithZero.{u1} A _inst_3)) (Module.toMulActionWithZero.{u2, u1} R A (CommSemiring.toSemiring.{u2} R _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u1} A _inst_3)) _inst_4))))] [_inst_6 : SMulCommClass.{u2, u1, u1} R A A (SMulZeroClass.toSMul.{u2, u1} R A (SemigroupWithZero.toZero.{u1} A (NonUnitalSemiring.toSemigroupWithZero.{u1} A _inst_3)) (SMulWithZero.toSMulZeroClass.{u2, u1} R A (CommMonoidWithZero.toZero.{u2} R (CommSemiring.toCommMonoidWithZero.{u2} R _inst_2)) (SemigroupWithZero.toZero.{u1} A (NonUnitalSemiring.toSemigroupWithZero.{u1} A _inst_3)) (MulActionWithZero.toSMulWithZero.{u2, u1} R A (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R _inst_2)) (SemigroupWithZero.toZero.{u1} A (NonUnitalSemiring.toSemigroupWithZero.{u1} A _inst_3)) (Module.toMulActionWithZero.{u2, u1} R A (CommSemiring.toSemiring.{u2} R _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u1} A _inst_3)) _inst_4)))) (SMulZeroClass.toSMul.{u1, u1} A A (SemigroupWithZero.toZero.{u1} A (NonUnitalSemiring.toSemigroupWithZero.{u1} A _inst_3)) (SMulWithZero.toSMulZeroClass.{u1, u1} A A (SemigroupWithZero.toZero.{u1} A (NonUnitalSemiring.toSemigroupWithZero.{u1} A _inst_3)) (SemigroupWithZero.toZero.{u1} A (NonUnitalSemiring.toSemigroupWithZero.{u1} A _inst_3)) (MulZeroClass.toSMulWithZero.{u1} A (NonUnitalNonAssocSemiring.toMulZeroClass.{u1} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u1} A _inst_3)))))], Eq.{max (succ u2) (succ u1)} (RingHom.{u2, max u1 u2} R (Unitization.{u2, u1} R A) (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_2)) (Semiring.toNonAssocSemiring.{max u1 u2} (Unitization.{u2, u1} R A) (Unitization.semiring.{u2, u1} R A _inst_2 _inst_3 _inst_4 _inst_5 _inst_6))) (algebraMap.{u2, max u1 u2} R (Unitization.{u2, u1} R A) _inst_2 (Unitization.semiring.{u2, u1} R A _inst_2 _inst_3 _inst_4 _inst_5 _inst_6) (Unitization.algebra.{u2, u2, u1} R R A _inst_2 _inst_2 _inst_3 _inst_4 _inst_5 _inst_6 (Algebra.id.{u2} R _inst_2) (Module.toDistribMulAction.{u2, u1} R A (CommSemiring.toSemiring.{u2} R _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u1} A _inst_3)) _inst_4) (IsScalarTower.left.{u2, u1} R A (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R _inst_2))) (MulActionWithZero.toMulAction.{u2, u1} R A (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R _inst_2)) (SemigroupWithZero.toZero.{u1} A (NonUnitalSemiring.toSemigroupWithZero.{u1} A _inst_3)) (Module.toMulActionWithZero.{u2, u1} R A (CommSemiring.toSemiring.{u2} R _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u1} A _inst_3)) _inst_4))))) (Unitization.inlRingHom.{u2, u1} R A (CommSemiring.toSemiring.{u2} R _inst_2) _inst_3 _inst_4)
+<too large>
 Case conversion may be inaccurate. Consider using '#align unitization.algebra_map_eq_inl_hom Unitization.algebraMap_eq_inl_homₓ'. -/
 theorem algebraMap_eq_inl_hom : algebraMap R (Unitization R A) = inlRingHom R A :=
   rfl
@@ -921,10 +903,7 @@ variable {S R A : Type _} [CommSemiring S] [CommSemiring R] [NonUnitalSemiring A
   [DistribMulAction S A] [IsScalarTower S R A] {C : Type _} [Ring C] [Algebra R C]
 
 /- warning: unitization.alg_hom_ext -> Unitization.algHom_ext is a dubious translation:
-lean 3 declaration is
-  forall {S : Type.{u1}} {R : Type.{u2}} {A : Type.{u3}} [_inst_1 : CommSemiring.{u1} S] [_inst_2 : CommSemiring.{u2} R] [_inst_3 : NonUnitalSemiring.{u3} A] [_inst_4 : Module.{u2, u3} R A (CommSemiring.toSemiring.{u2} R _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u3} A _inst_3))] [_inst_5 : SMulCommClass.{u2, u3, u3} R A A (SMulZeroClass.toHasSmul.{u2, u3} R A (AddZeroClass.toHasZero.{u3} A (AddMonoid.toAddZeroClass.{u3} A (AddCommMonoid.toAddMonoid.{u3} A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u3} A _inst_3))))) (SMulWithZero.toSmulZeroClass.{u2, u3} R A (MulZeroClass.toHasZero.{u2} R (MulZeroOneClass.toMulZeroClass.{u2} R (MonoidWithZero.toMulZeroOneClass.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R _inst_2))))) (AddZeroClass.toHasZero.{u3} A (AddMonoid.toAddZeroClass.{u3} A (AddCommMonoid.toAddMonoid.{u3} A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u3} A _inst_3))))) (MulActionWithZero.toSMulWithZero.{u2, u3} R A (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R _inst_2)) (AddZeroClass.toHasZero.{u3} A (AddMonoid.toAddZeroClass.{u3} A (AddCommMonoid.toAddMonoid.{u3} A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u3} A _inst_3))))) (Module.toMulActionWithZero.{u2, u3} R A (CommSemiring.toSemiring.{u2} R _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u3} A _inst_3)) _inst_4)))) (Mul.toSMul.{u3} A (Distrib.toHasMul.{u3} A (NonUnitalNonAssocSemiring.toDistrib.{u3} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u3} A _inst_3))))] [_inst_6 : IsScalarTower.{u2, u3, u3} R A A (SMulZeroClass.toHasSmul.{u2, u3} R A (AddZeroClass.toHasZero.{u3} A (AddMonoid.toAddZeroClass.{u3} A (AddCommMonoid.toAddMonoid.{u3} A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u3} A _inst_3))))) (SMulWithZero.toSmulZeroClass.{u2, u3} R A (MulZeroClass.toHasZero.{u2} R (MulZeroOneClass.toMulZeroClass.{u2} R (MonoidWithZero.toMulZeroOneClass.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R _inst_2))))) (AddZeroClass.toHasZero.{u3} A (AddMonoid.toAddZeroClass.{u3} A (AddCommMonoid.toAddMonoid.{u3} A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u3} A _inst_3))))) (MulActionWithZero.toSMulWithZero.{u2, u3} R A (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R _inst_2)) (AddZeroClass.toHasZero.{u3} A (AddMonoid.toAddZeroClass.{u3} A (AddCommMonoid.toAddMonoid.{u3} A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u3} A _inst_3))))) (Module.toMulActionWithZero.{u2, u3} R A (CommSemiring.toSemiring.{u2} R _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u3} A _inst_3)) _inst_4)))) (Mul.toSMul.{u3} A (Distrib.toHasMul.{u3} A (NonUnitalNonAssocSemiring.toDistrib.{u3} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u3} A _inst_3)))) (SMulZeroClass.toHasSmul.{u2, u3} R A (AddZeroClass.toHasZero.{u3} A (AddMonoid.toAddZeroClass.{u3} A (AddCommMonoid.toAddMonoid.{u3} A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u3} A _inst_3))))) (SMulWithZero.toSmulZeroClass.{u2, u3} R A (MulZeroClass.toHasZero.{u2} R (MulZeroOneClass.toMulZeroClass.{u2} R (MonoidWithZero.toMulZeroOneClass.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R _inst_2))))) (AddZeroClass.toHasZero.{u3} A (AddMonoid.toAddZeroClass.{u3} A (AddCommMonoid.toAddMonoid.{u3} A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u3} A _inst_3))))) (MulActionWithZero.toSMulWithZero.{u2, u3} R A (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R _inst_2)) (AddZeroClass.toHasZero.{u3} A (AddMonoid.toAddZeroClass.{u3} A (AddCommMonoid.toAddMonoid.{u3} A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u3} A _inst_3))))) (Module.toMulActionWithZero.{u2, u3} R A (CommSemiring.toSemiring.{u2} R _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u3} A _inst_3)) _inst_4))))] {B : Type.{u4}} [_inst_7 : Semiring.{u4} B] [_inst_8 : Algebra.{u1, u4} S B _inst_1 _inst_7] [_inst_9 : Algebra.{u1, u2} S R _inst_1 (CommSemiring.toSemiring.{u2} R _inst_2)] [_inst_10 : DistribMulAction.{u1, u3} S A (MonoidWithZero.toMonoid.{u1} S (Semiring.toMonoidWithZero.{u1} S (CommSemiring.toSemiring.{u1} S _inst_1))) (AddCommMonoid.toAddMonoid.{u3} A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u3} A _inst_3)))] [_inst_11 : IsScalarTower.{u1, u2, u3} S R A (SMulZeroClass.toHasSmul.{u1, u2} S R (AddZeroClass.toHasZero.{u2} R (AddMonoid.toAddZeroClass.{u2} R (AddCommMonoid.toAddMonoid.{u2} R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_2))))))) (SMulWithZero.toSmulZeroClass.{u1, u2} S R (MulZeroClass.toHasZero.{u1} S (MulZeroOneClass.toMulZeroClass.{u1} S (MonoidWithZero.toMulZeroOneClass.{u1} S (Semiring.toMonoidWithZero.{u1} S (CommSemiring.toSemiring.{u1} S _inst_1))))) (AddZeroClass.toHasZero.{u2} R (AddMonoid.toAddZeroClass.{u2} R (AddCommMonoid.toAddMonoid.{u2} R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_2))))))) (MulActionWithZero.toSMulWithZero.{u1, u2} S R (Semiring.toMonoidWithZero.{u1} S (CommSemiring.toSemiring.{u1} S _inst_1)) (AddZeroClass.toHasZero.{u2} R (AddMonoid.toAddZeroClass.{u2} R (AddCommMonoid.toAddMonoid.{u2} R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_2))))))) (Module.toMulActionWithZero.{u1, u2} S R (CommSemiring.toSemiring.{u1} S _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_2)))) (Algebra.toModule.{u1, u2} S R _inst_1 (CommSemiring.toSemiring.{u2} R _inst_2) _inst_9))))) (SMulZeroClass.toHasSmul.{u2, u3} R A (AddZeroClass.toHasZero.{u3} A (AddMonoid.toAddZeroClass.{u3} A (AddCommMonoid.toAddMonoid.{u3} A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u3} A _inst_3))))) (SMulWithZero.toSmulZeroClass.{u2, u3} R A (MulZeroClass.toHasZero.{u2} R (MulZeroOneClass.toMulZeroClass.{u2} R (MonoidWithZero.toMulZeroOneClass.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R _inst_2))))) (AddZeroClass.toHasZero.{u3} A (AddMonoid.toAddZeroClass.{u3} A (AddCommMonoid.toAddMonoid.{u3} A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u3} A _inst_3))))) (MulActionWithZero.toSMulWithZero.{u2, u3} R A (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R _inst_2)) (AddZeroClass.toHasZero.{u3} A (AddMonoid.toAddZeroClass.{u3} A (AddCommMonoid.toAddMonoid.{u3} A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u3} A _inst_3))))) (Module.toMulActionWithZero.{u2, u3} R A (CommSemiring.toSemiring.{u2} R _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u3} A _inst_3)) _inst_4)))) (SMulZeroClass.toHasSmul.{u1, u3} S A (AddZeroClass.toHasZero.{u3} A (AddMonoid.toAddZeroClass.{u3} A (AddCommMonoid.toAddMonoid.{u3} A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u3} A _inst_3))))) (DistribSMul.toSmulZeroClass.{u1, u3} S A (AddMonoid.toAddZeroClass.{u3} A (AddCommMonoid.toAddMonoid.{u3} A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u3} A _inst_3)))) (DistribMulAction.toDistribSMul.{u1, u3} S A (MonoidWithZero.toMonoid.{u1} S (Semiring.toMonoidWithZero.{u1} S (CommSemiring.toSemiring.{u1} S _inst_1))) (AddCommMonoid.toAddMonoid.{u3} A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u3} A _inst_3))) _inst_10)))] {φ : AlgHom.{u1, max u2 u3, u4} S (Unitization.{u2, u3} R A) B _inst_1 (Unitization.semiring.{u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5) _inst_7 (Unitization.algebra.{u1, u2, u3} S R A _inst_1 _inst_2 _inst_3 _inst_4 _inst_6 _inst_5 _inst_9 _inst_10 _inst_11) _inst_8} {ψ : AlgHom.{u1, max u2 u3, u4} S (Unitization.{u2, u3} R A) B _inst_1 (Unitization.semiring.{u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5) _inst_7 (Unitization.algebra.{u1, u2, u3} S R A _inst_1 _inst_2 _inst_3 _inst_4 _inst_6 _inst_5 _inst_9 _inst_10 _inst_11) _inst_8}, (forall (a : A), Eq.{succ u4} B (coeFn.{max (succ (max u2 u3)) (succ u4), max (succ (max u2 u3)) (succ u4)} (AlgHom.{u1, max u2 u3, u4} S (Unitization.{u2, u3} R A) B _inst_1 (Unitization.semiring.{u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5) _inst_7 (Unitization.algebra.{u1, u2, u3} S R A _inst_1 _inst_2 _inst_3 _inst_4 _inst_6 _inst_5 _inst_9 _inst_10 _inst_11) _inst_8) (fun (_x : AlgHom.{u1, max u2 u3, u4} S (Unitization.{u2, u3} R A) B _inst_1 (Unitization.semiring.{u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5) _inst_7 (Unitization.algebra.{u1, u2, u3} S R A _inst_1 _inst_2 _inst_3 _inst_4 _inst_6 _inst_5 _inst_9 _inst_10 _inst_11) _inst_8) => (Unitization.{u2, u3} R A) -> B) ([anonymous].{u1, max u2 u3, u4} S (Unitization.{u2, u3} R A) B _inst_1 (Unitization.semiring.{u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5) _inst_7 (Unitization.algebra.{u1, u2, u3} S R A _inst_1 _inst_2 _inst_3 _inst_4 _inst_6 _inst_5 _inst_9 _inst_10 _inst_11) _inst_8) φ ((fun (a : Type.{u3}) (b : Sort.{max (succ u2) (succ u3)}) [self : HasLiftT.{succ u3, max (succ u2) (succ u3)} a b] => self.0) A (Unitization.{u2, u3} R A) (HasLiftT.mk.{succ u3, max (succ u2) (succ u3)} A (Unitization.{u2, u3} R A) (CoeTCₓ.coe.{succ u3, max (succ u2) (succ u3)} A (Unitization.{u2, u3} R A) (Unitization.hasCoeT.{u2, u3} R A (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_2)))))))) a)) (coeFn.{max (succ (max u2 u3)) (succ u4), max (succ (max u2 u3)) (succ u4)} (AlgHom.{u1, max u2 u3, u4} S (Unitization.{u2, u3} R A) B _inst_1 (Unitization.semiring.{u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5) _inst_7 (Unitization.algebra.{u1, u2, u3} S R A _inst_1 _inst_2 _inst_3 _inst_4 _inst_6 _inst_5 _inst_9 _inst_10 _inst_11) _inst_8) (fun (_x : AlgHom.{u1, max u2 u3, u4} S (Unitization.{u2, u3} R A) B _inst_1 (Unitization.semiring.{u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5) _inst_7 (Unitization.algebra.{u1, u2, u3} S R A _inst_1 _inst_2 _inst_3 _inst_4 _inst_6 _inst_5 _inst_9 _inst_10 _inst_11) _inst_8) => (Unitization.{u2, u3} R A) -> B) ([anonymous].{u1, max u2 u3, u4} S (Unitization.{u2, u3} R A) B _inst_1 (Unitization.semiring.{u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5) _inst_7 (Unitization.algebra.{u1, u2, u3} S R A _inst_1 _inst_2 _inst_3 _inst_4 _inst_6 _inst_5 _inst_9 _inst_10 _inst_11) _inst_8) ψ ((fun (a : Type.{u3}) (b : Sort.{max (succ u2) (succ u3)}) [self : HasLiftT.{succ u3, max (succ u2) (succ u3)} a b] => self.0) A (Unitization.{u2, u3} R A) (HasLiftT.mk.{succ u3, max (succ u2) (succ u3)} A (Unitization.{u2, u3} R A) (CoeTCₓ.coe.{succ u3, max (succ u2) (succ u3)} A (Unitization.{u2, u3} R A) (Unitization.hasCoeT.{u2, u3} R A (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_2)))))))) a))) -> (forall (r : R), Eq.{succ u4} B (coeFn.{max (succ (max u2 u3)) (succ u4), max (succ (max u2 u3)) (succ u4)} (AlgHom.{u1, max u2 u3, u4} S (Unitization.{u2, u3} R A) B _inst_1 (Unitization.semiring.{u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5) _inst_7 (Unitization.algebra.{u1, u2, u3} S R A _inst_1 _inst_2 _inst_3 _inst_4 _inst_6 _inst_5 _inst_9 _inst_10 _inst_11) _inst_8) (fun (_x : AlgHom.{u1, max u2 u3, u4} S (Unitization.{u2, u3} R A) B _inst_1 (Unitization.semiring.{u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5) _inst_7 (Unitization.algebra.{u1, u2, u3} S R A _inst_1 _inst_2 _inst_3 _inst_4 _inst_6 _inst_5 _inst_9 _inst_10 _inst_11) _inst_8) => (Unitization.{u2, u3} R A) -> B) ([anonymous].{u1, max u2 u3, u4} S (Unitization.{u2, u3} R A) B _inst_1 (Unitization.semiring.{u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5) _inst_7 (Unitization.algebra.{u1, u2, u3} S R A _inst_1 _inst_2 _inst_3 _inst_4 _inst_6 _inst_5 _inst_9 _inst_10 _inst_11) _inst_8) φ (coeFn.{max (succ u2) (succ (max u2 u3)), max (succ u2) (succ (max u2 u3))} (RingHom.{u2, max u2 u3} R (Unitization.{u2, u3} R A) (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_2)) (Semiring.toNonAssocSemiring.{max u2 u3} (Unitization.{u2, u3} R A) (Unitization.semiring.{u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5))) (fun (_x : RingHom.{u2, max u2 u3} R (Unitization.{u2, u3} R A) (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_2)) (Semiring.toNonAssocSemiring.{max u2 u3} (Unitization.{u2, u3} R A) (Unitization.semiring.{u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5))) => R -> (Unitization.{u2, u3} R A)) (RingHom.hasCoeToFun.{u2, max u2 u3} R (Unitization.{u2, u3} R A) (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_2)) (Semiring.toNonAssocSemiring.{max u2 u3} (Unitization.{u2, u3} R A) (Unitization.semiring.{u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5))) (algebraMap.{u2, max u2 u3} R (Unitization.{u2, u3} R A) _inst_2 (Unitization.semiring.{u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5) (Unitization.algebra.{u2, u2, u3} R R A _inst_2 _inst_2 _inst_3 _inst_4 _inst_6 _inst_5 (Algebra.id.{u2} R _inst_2) (Module.toDistribMulAction.{u2, u3} R A (CommSemiring.toSemiring.{u2} R _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u3} A _inst_3)) _inst_4) (IsScalarTower.left.{u2, u3} R A (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R _inst_2))) (MulActionWithZero.toMulAction.{u2, u3} R A (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R _inst_2)) (AddZeroClass.toHasZero.{u3} A (AddMonoid.toAddZeroClass.{u3} A (AddCommMonoid.toAddMonoid.{u3} A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u3} A _inst_3))))) (Module.toMulActionWithZero.{u2, u3} R A (CommSemiring.toSemiring.{u2} R _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u3} A _inst_3)) _inst_4))))) r)) (coeFn.{max (succ (max u2 u3)) (succ u4), max (succ (max u2 u3)) (succ u4)} (AlgHom.{u1, max u2 u3, u4} S (Unitization.{u2, u3} R A) B _inst_1 (Unitization.semiring.{u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5) _inst_7 (Unitization.algebra.{u1, u2, u3} S R A _inst_1 _inst_2 _inst_3 _inst_4 _inst_6 _inst_5 _inst_9 _inst_10 _inst_11) _inst_8) (fun (_x : AlgHom.{u1, max u2 u3, u4} S (Unitization.{u2, u3} R A) B _inst_1 (Unitization.semiring.{u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5) _inst_7 (Unitization.algebra.{u1, u2, u3} S R A _inst_1 _inst_2 _inst_3 _inst_4 _inst_6 _inst_5 _inst_9 _inst_10 _inst_11) _inst_8) => (Unitization.{u2, u3} R A) -> B) ([anonymous].{u1, max u2 u3, u4} S (Unitization.{u2, u3} R A) B _inst_1 (Unitization.semiring.{u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5) _inst_7 (Unitization.algebra.{u1, u2, u3} S R A _inst_1 _inst_2 _inst_3 _inst_4 _inst_6 _inst_5 _inst_9 _inst_10 _inst_11) _inst_8) ψ (coeFn.{max (succ u2) (succ (max u2 u3)), max (succ u2) (succ (max u2 u3))} (RingHom.{u2, max u2 u3} R (Unitization.{u2, u3} R A) (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_2)) (Semiring.toNonAssocSemiring.{max u2 u3} (Unitization.{u2, u3} R A) (Unitization.semiring.{u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5))) (fun (_x : RingHom.{u2, max u2 u3} R (Unitization.{u2, u3} R A) (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_2)) (Semiring.toNonAssocSemiring.{max u2 u3} (Unitization.{u2, u3} R A) (Unitization.semiring.{u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5))) => R -> (Unitization.{u2, u3} R A)) (RingHom.hasCoeToFun.{u2, max u2 u3} R (Unitization.{u2, u3} R A) (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_2)) (Semiring.toNonAssocSemiring.{max u2 u3} (Unitization.{u2, u3} R A) (Unitization.semiring.{u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5))) (algebraMap.{u2, max u2 u3} R (Unitization.{u2, u3} R A) _inst_2 (Unitization.semiring.{u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5) (Unitization.algebra.{u2, u2, u3} R R A _inst_2 _inst_2 _inst_3 _inst_4 _inst_6 _inst_5 (Algebra.id.{u2} R _inst_2) (Module.toDistribMulAction.{u2, u3} R A (CommSemiring.toSemiring.{u2} R _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u3} A _inst_3)) _inst_4) (IsScalarTower.left.{u2, u3} R A (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R _inst_2))) (MulActionWithZero.toMulAction.{u2, u3} R A (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R _inst_2)) (AddZeroClass.toHasZero.{u3} A (AddMonoid.toAddZeroClass.{u3} A (AddCommMonoid.toAddMonoid.{u3} A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u3} A _inst_3))))) (Module.toMulActionWithZero.{u2, u3} R A (CommSemiring.toSemiring.{u2} R _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u3} A _inst_3)) _inst_4))))) r))) -> (Eq.{max (succ (max u2 u3)) (succ u4)} (AlgHom.{u1, max u2 u3, u4} S (Unitization.{u2, u3} R A) B _inst_1 (Unitization.semiring.{u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5) _inst_7 (Unitization.algebra.{u1, u2, u3} S R A _inst_1 _inst_2 _inst_3 _inst_4 _inst_6 _inst_5 _inst_9 _inst_10 _inst_11) _inst_8) φ ψ)
-but is expected to have type
-  forall {S : Type.{u4}} {R : Type.{u2}} {A : Type.{u3}} [_inst_1 : CommSemiring.{u4} S] [_inst_2 : CommSemiring.{u2} R] [_inst_3 : NonUnitalSemiring.{u3} A] [_inst_4 : Module.{u2, u3} R A (CommSemiring.toSemiring.{u2} R _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u3} A _inst_3))] [_inst_5 : SMulCommClass.{u2, u3, u3} R A A (SMulZeroClass.toSMul.{u2, u3} R A (SemigroupWithZero.toZero.{u3} A (NonUnitalSemiring.toSemigroupWithZero.{u3} A _inst_3)) (SMulWithZero.toSMulZeroClass.{u2, u3} R A (CommMonoidWithZero.toZero.{u2} R (CommSemiring.toCommMonoidWithZero.{u2} R _inst_2)) (SemigroupWithZero.toZero.{u3} A (NonUnitalSemiring.toSemigroupWithZero.{u3} A _inst_3)) (MulActionWithZero.toSMulWithZero.{u2, u3} R A (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R _inst_2)) (SemigroupWithZero.toZero.{u3} A (NonUnitalSemiring.toSemigroupWithZero.{u3} A _inst_3)) (Module.toMulActionWithZero.{u2, u3} R A (CommSemiring.toSemiring.{u2} R _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u3} A _inst_3)) _inst_4)))) (SMulZeroClass.toSMul.{u3, u3} A A (SemigroupWithZero.toZero.{u3} A (NonUnitalSemiring.toSemigroupWithZero.{u3} A _inst_3)) (SMulWithZero.toSMulZeroClass.{u3, u3} A A (SemigroupWithZero.toZero.{u3} A (NonUnitalSemiring.toSemigroupWithZero.{u3} A _inst_3)) (SemigroupWithZero.toZero.{u3} A (NonUnitalSemiring.toSemigroupWithZero.{u3} A _inst_3)) (MulZeroClass.toSMulWithZero.{u3} A (NonUnitalNonAssocSemiring.toMulZeroClass.{u3} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u3} A _inst_3)))))] [_inst_6 : IsScalarTower.{u2, u3, u3} R A A (SMulZeroClass.toSMul.{u2, u3} R A (SemigroupWithZero.toZero.{u3} A (NonUnitalSemiring.toSemigroupWithZero.{u3} A _inst_3)) (SMulWithZero.toSMulZeroClass.{u2, u3} R A (CommMonoidWithZero.toZero.{u2} R (CommSemiring.toCommMonoidWithZero.{u2} R _inst_2)) (SemigroupWithZero.toZero.{u3} A (NonUnitalSemiring.toSemigroupWithZero.{u3} A _inst_3)) (MulActionWithZero.toSMulWithZero.{u2, u3} R A (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R _inst_2)) (SemigroupWithZero.toZero.{u3} A (NonUnitalSemiring.toSemigroupWithZero.{u3} A _inst_3)) (Module.toMulActionWithZero.{u2, u3} R A (CommSemiring.toSemiring.{u2} R _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u3} A _inst_3)) _inst_4)))) (SMulZeroClass.toSMul.{u3, u3} A A (SemigroupWithZero.toZero.{u3} A (NonUnitalSemiring.toSemigroupWithZero.{u3} A _inst_3)) (SMulWithZero.toSMulZeroClass.{u3, u3} A A (SemigroupWithZero.toZero.{u3} A (NonUnitalSemiring.toSemigroupWithZero.{u3} A _inst_3)) (SemigroupWithZero.toZero.{u3} A (NonUnitalSemiring.toSemigroupWithZero.{u3} A _inst_3)) (MulZeroClass.toSMulWithZero.{u3} A (NonUnitalNonAssocSemiring.toMulZeroClass.{u3} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u3} A _inst_3))))) (SMulZeroClass.toSMul.{u2, u3} R A (SemigroupWithZero.toZero.{u3} A (NonUnitalSemiring.toSemigroupWithZero.{u3} A _inst_3)) (SMulWithZero.toSMulZeroClass.{u2, u3} R A (CommMonoidWithZero.toZero.{u2} R (CommSemiring.toCommMonoidWithZero.{u2} R _inst_2)) (SemigroupWithZero.toZero.{u3} A (NonUnitalSemiring.toSemigroupWithZero.{u3} A _inst_3)) (MulActionWithZero.toSMulWithZero.{u2, u3} R A (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R _inst_2)) (SemigroupWithZero.toZero.{u3} A (NonUnitalSemiring.toSemigroupWithZero.{u3} A _inst_3)) (Module.toMulActionWithZero.{u2, u3} R A (CommSemiring.toSemiring.{u2} R _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u3} A _inst_3)) _inst_4))))] {B : Type.{u1}} [_inst_7 : Semiring.{u1} B] [_inst_8 : Algebra.{u4, u1} S B _inst_1 _inst_7] [_inst_9 : Algebra.{u4, u2} S R _inst_1 (CommSemiring.toSemiring.{u2} R _inst_2)] [_inst_10 : DistribMulAction.{u4, u3} S A (MonoidWithZero.toMonoid.{u4} S (Semiring.toMonoidWithZero.{u4} S (CommSemiring.toSemiring.{u4} S _inst_1))) (AddCommMonoid.toAddMonoid.{u3} A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u3} A _inst_3)))] [_inst_11 : IsScalarTower.{u4, u2, u3} S R A (Algebra.toSMul.{u4, u2} S R _inst_1 (CommSemiring.toSemiring.{u2} R _inst_2) _inst_9) (SMulZeroClass.toSMul.{u2, u3} R A (SemigroupWithZero.toZero.{u3} A (NonUnitalSemiring.toSemigroupWithZero.{u3} A _inst_3)) (SMulWithZero.toSMulZeroClass.{u2, u3} R A (CommMonoidWithZero.toZero.{u2} R (CommSemiring.toCommMonoidWithZero.{u2} R _inst_2)) (SemigroupWithZero.toZero.{u3} A (NonUnitalSemiring.toSemigroupWithZero.{u3} A _inst_3)) (MulActionWithZero.toSMulWithZero.{u2, u3} R A (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R _inst_2)) (SemigroupWithZero.toZero.{u3} A (NonUnitalSemiring.toSemigroupWithZero.{u3} A _inst_3)) (Module.toMulActionWithZero.{u2, u3} R A (CommSemiring.toSemiring.{u2} R _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u3} A _inst_3)) _inst_4)))) (SMulZeroClass.toSMul.{u4, u3} S A (SemigroupWithZero.toZero.{u3} A (NonUnitalSemiring.toSemigroupWithZero.{u3} A _inst_3)) (DistribSMul.toSMulZeroClass.{u4, u3} S A (AddMonoid.toAddZeroClass.{u3} A (AddCommMonoid.toAddMonoid.{u3} A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u3} A _inst_3)))) (DistribMulAction.toDistribSMul.{u4, u3} S A (MonoidWithZero.toMonoid.{u4} S (Semiring.toMonoidWithZero.{u4} S (CommSemiring.toSemiring.{u4} S _inst_1))) (AddCommMonoid.toAddMonoid.{u3} A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u3} A _inst_3))) _inst_10)))] {φ : AlgHom.{u4, max u3 u2, u1} S (Unitization.{u2, u3} R A) B _inst_1 (Unitization.semiring.{u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5) _inst_7 (Unitization.algebra.{u4, u2, u3} S R A _inst_1 _inst_2 _inst_3 _inst_4 _inst_6 _inst_5 _inst_9 _inst_10 _inst_11) _inst_8} {ψ : AlgHom.{u4, max u3 u2, u1} S (Unitization.{u2, u3} R A) B _inst_1 (Unitization.semiring.{u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5) _inst_7 (Unitization.algebra.{u4, u2, u3} S R A _inst_1 _inst_2 _inst_3 _inst_4 _inst_6 _inst_5 _inst_9 _inst_10 _inst_11) _inst_8}, (forall (a : A), Eq.{succ u1} ((fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2187 : Unitization.{u2, u3} R A) => B) (Unitization.inr.{u2, u3} R A (CommMonoidWithZero.toZero.{u2} R (CommSemiring.toCommMonoidWithZero.{u2} R _inst_2)) a)) (FunLike.coe.{max (max (succ u2) (succ u3)) (succ u1), max (succ u2) (succ u3), succ u1} (AlgHom.{u4, max u3 u2, u1} S (Unitization.{u2, u3} R A) B _inst_1 (Unitization.semiring.{u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5) _inst_7 (Unitization.algebra.{u4, u2, u3} S R A _inst_1 _inst_2 _inst_3 _inst_4 _inst_6 _inst_5 _inst_9 _inst_10 _inst_11) _inst_8) (Unitization.{u2, u3} R A) (fun (_x : Unitization.{u2, u3} R A) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2187 : Unitization.{u2, u3} R A) => B) _x) (SMulHomClass.toFunLike.{max (max u2 u3) u1, u4, max u2 u3, u1} (AlgHom.{u4, max u3 u2, u1} S (Unitization.{u2, u3} R A) B _inst_1 (Unitization.semiring.{u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5) _inst_7 (Unitization.algebra.{u4, u2, u3} S R A _inst_1 _inst_2 _inst_3 _inst_4 _inst_6 _inst_5 _inst_9 _inst_10 _inst_11) _inst_8) S (Unitization.{u2, u3} R A) B (SMulZeroClass.toSMul.{u4, max u2 u3} S (Unitization.{u2, u3} R A) (AddMonoid.toZero.{max u2 u3} (Unitization.{u2, u3} R A) (AddCommMonoid.toAddMonoid.{max u2 u3} (Unitization.{u2, u3} R A) (NonUnitalNonAssocSemiring.toAddCommMonoid.{max u2 u3} (Unitization.{u2, u3} R A) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{max u2 u3} (Unitization.{u2, u3} R A) (Semiring.toNonAssocSemiring.{max u2 u3} (Unitization.{u2, u3} R A) (Unitization.semiring.{u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5)))))) (DistribSMul.toSMulZeroClass.{u4, max u2 u3} S (Unitization.{u2, u3} R A) (AddMonoid.toAddZeroClass.{max u2 u3} (Unitization.{u2, u3} R A) (AddCommMonoid.toAddMonoid.{max u2 u3} (Unitization.{u2, u3} R A) (NonUnitalNonAssocSemiring.toAddCommMonoid.{max u2 u3} (Unitization.{u2, u3} R A) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{max u2 u3} (Unitization.{u2, u3} R A) (Semiring.toNonAssocSemiring.{max u2 u3} (Unitization.{u2, u3} R A) (Unitization.semiring.{u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5)))))) (DistribMulAction.toDistribSMul.{u4, max u2 u3} S (Unitization.{u2, u3} R A) (MonoidWithZero.toMonoid.{u4} S (Semiring.toMonoidWithZero.{u4} S (CommSemiring.toSemiring.{u4} S _inst_1))) (AddCommMonoid.toAddMonoid.{max u2 u3} (Unitization.{u2, u3} R A) (NonUnitalNonAssocSemiring.toAddCommMonoid.{max u2 u3} (Unitization.{u2, u3} R A) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{max u2 u3} (Unitization.{u2, u3} R A) (Semiring.toNonAssocSemiring.{max u2 u3} (Unitization.{u2, u3} R A) (Unitization.semiring.{u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5))))) (Module.toDistribMulAction.{u4, max u2 u3} S (Unitization.{u2, u3} R A) (CommSemiring.toSemiring.{u4} S _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{max u2 u3} (Unitization.{u2, u3} R A) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{max u2 u3} (Unitization.{u2, u3} R A) (Semiring.toNonAssocSemiring.{max u2 u3} (Unitization.{u2, u3} R A) (Unitization.semiring.{u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5)))) (Algebra.toModule.{u4, max u2 u3} S (Unitization.{u2, u3} R A) _inst_1 (Unitization.semiring.{u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5) (Unitization.algebra.{u4, u2, u3} S R A _inst_1 _inst_2 _inst_3 _inst_4 _inst_6 _inst_5 _inst_9 _inst_10 _inst_11)))))) (SMulZeroClass.toSMul.{u4, u1} S B (AddMonoid.toZero.{u1} B (AddCommMonoid.toAddMonoid.{u1} B (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} B (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} B (Semiring.toNonAssocSemiring.{u1} B _inst_7))))) (DistribSMul.toSMulZeroClass.{u4, u1} S B (AddMonoid.toAddZeroClass.{u1} B (AddCommMonoid.toAddMonoid.{u1} B (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} B (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} B (Semiring.toNonAssocSemiring.{u1} B _inst_7))))) (DistribMulAction.toDistribSMul.{u4, u1} S B (MonoidWithZero.toMonoid.{u4} S (Semiring.toMonoidWithZero.{u4} S (CommSemiring.toSemiring.{u4} S _inst_1))) (AddCommMonoid.toAddMonoid.{u1} B (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} B (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} B (Semiring.toNonAssocSemiring.{u1} B _inst_7)))) (Module.toDistribMulAction.{u4, u1} S B (CommSemiring.toSemiring.{u4} S _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} B (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} B (Semiring.toNonAssocSemiring.{u1} B _inst_7))) (Algebra.toModule.{u4, u1} S B _inst_1 _inst_7 _inst_8))))) (DistribMulActionHomClass.toSMulHomClass.{max (max u2 u3) u1, u4, max u2 u3, u1} (AlgHom.{u4, max u3 u2, u1} S (Unitization.{u2, u3} R A) B _inst_1 (Unitization.semiring.{u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5) _inst_7 (Unitization.algebra.{u4, u2, u3} S R A _inst_1 _inst_2 _inst_3 _inst_4 _inst_6 _inst_5 _inst_9 _inst_10 _inst_11) _inst_8) S (Unitization.{u2, u3} R A) B (MonoidWithZero.toMonoid.{u4} S (Semiring.toMonoidWithZero.{u4} S (CommSemiring.toSemiring.{u4} S _inst_1))) (AddCommMonoid.toAddMonoid.{max u2 u3} (Unitization.{u2, u3} R A) (NonUnitalNonAssocSemiring.toAddCommMonoid.{max u2 u3} (Unitization.{u2, u3} R A) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{max u2 u3} (Unitization.{u2, u3} R A) (Semiring.toNonAssocSemiring.{max u2 u3} (Unitization.{u2, u3} R A) (Unitization.semiring.{u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5))))) (AddCommMonoid.toAddMonoid.{u1} B (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} B (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} B (Semiring.toNonAssocSemiring.{u1} B _inst_7)))) (Module.toDistribMulAction.{u4, max u2 u3} S (Unitization.{u2, u3} R A) (CommSemiring.toSemiring.{u4} S _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{max u2 u3} (Unitization.{u2, u3} R A) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{max u2 u3} (Unitization.{u2, u3} R A) (Semiring.toNonAssocSemiring.{max u2 u3} (Unitization.{u2, u3} R A) (Unitization.semiring.{u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5)))) (Algebra.toModule.{u4, max u2 u3} S (Unitization.{u2, u3} R A) _inst_1 (Unitization.semiring.{u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5) (Unitization.algebra.{u4, u2, u3} S R A _inst_1 _inst_2 _inst_3 _inst_4 _inst_6 _inst_5 _inst_9 _inst_10 _inst_11))) (Module.toDistribMulAction.{u4, u1} S B (CommSemiring.toSemiring.{u4} S _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} B (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} B (Semiring.toNonAssocSemiring.{u1} B _inst_7))) (Algebra.toModule.{u4, u1} S B _inst_1 _inst_7 _inst_8)) (NonUnitalAlgHomClass.toDistribMulActionHomClass.{max (max u2 u3) u1, u4, max u2 u3, u1} (AlgHom.{u4, max u3 u2, u1} S (Unitization.{u2, u3} R A) B _inst_1 (Unitization.semiring.{u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5) _inst_7 (Unitization.algebra.{u4, u2, u3} S R A _inst_1 _inst_2 _inst_3 _inst_4 _inst_6 _inst_5 _inst_9 _inst_10 _inst_11) _inst_8) S (Unitization.{u2, u3} R A) B (MonoidWithZero.toMonoid.{u4} S (Semiring.toMonoidWithZero.{u4} S (CommSemiring.toSemiring.{u4} S _inst_1))) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{max u2 u3} (Unitization.{u2, u3} R A) (Semiring.toNonAssocSemiring.{max u2 u3} (Unitization.{u2, u3} R A) (Unitization.semiring.{u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5))) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} B (Semiring.toNonAssocSemiring.{u1} B _inst_7)) (Module.toDistribMulAction.{u4, max u2 u3} S (Unitization.{u2, u3} R A) (CommSemiring.toSemiring.{u4} S _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{max u2 u3} (Unitization.{u2, u3} R A) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{max u2 u3} (Unitization.{u2, u3} R A) (Semiring.toNonAssocSemiring.{max u2 u3} (Unitization.{u2, u3} R A) (Unitization.semiring.{u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5)))) (Algebra.toModule.{u4, max u2 u3} S (Unitization.{u2, u3} R A) _inst_1 (Unitization.semiring.{u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5) (Unitization.algebra.{u4, u2, u3} S R A _inst_1 _inst_2 _inst_3 _inst_4 _inst_6 _inst_5 _inst_9 _inst_10 _inst_11))) (Module.toDistribMulAction.{u4, u1} S B (CommSemiring.toSemiring.{u4} S _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} B (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} B (Semiring.toNonAssocSemiring.{u1} B _inst_7))) (Algebra.toModule.{u4, u1} S B _inst_1 _inst_7 _inst_8)) (AlgHom.instNonUnitalAlgHomClassToMonoidToMonoidWithZeroToSemiringToNonUnitalNonAssocSemiringToNonAssocSemiringToNonUnitalNonAssocSemiringToNonAssocSemiringToDistribMulActionToAddCommMonoidToModuleToDistribMulActionToAddCommMonoidToModule.{u4, max u2 u3, u1, max (max u2 u3) u1} S (Unitization.{u2, u3} R A) B _inst_1 (Unitization.semiring.{u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5) _inst_7 (Unitization.algebra.{u4, u2, u3} S R A _inst_1 _inst_2 _inst_3 _inst_4 _inst_6 _inst_5 _inst_9 _inst_10 _inst_11) _inst_8 (AlgHom.{u4, max u3 u2, u1} S (Unitization.{u2, u3} R A) B _inst_1 (Unitization.semiring.{u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5) _inst_7 (Unitization.algebra.{u4, u2, u3} S R A _inst_1 _inst_2 _inst_3 _inst_4 _inst_6 _inst_5 _inst_9 _inst_10 _inst_11) _inst_8) (AlgHom.algHomClass.{u4, max u2 u3, u1} S (Unitization.{u2, u3} R A) B _inst_1 (Unitization.semiring.{u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5) _inst_7 (Unitization.algebra.{u4, u2, u3} S R A _inst_1 _inst_2 _inst_3 _inst_4 _inst_6 _inst_5 _inst_9 _inst_10 _inst_11) _inst_8))))) φ (Unitization.inr.{u2, u3} R A (CommMonoidWithZero.toZero.{u2} R (CommSemiring.toCommMonoidWithZero.{u2} R _inst_2)) a)) (FunLike.coe.{max (max (succ u2) (succ u3)) (succ u1), max (succ u2) (succ u3), succ u1} (AlgHom.{u4, max u3 u2, u1} S (Unitization.{u2, u3} R A) B _inst_1 (Unitization.semiring.{u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5) _inst_7 (Unitization.algebra.{u4, u2, u3} S R A _inst_1 _inst_2 _inst_3 _inst_4 _inst_6 _inst_5 _inst_9 _inst_10 _inst_11) _inst_8) (Unitization.{u2, u3} R A) (fun (_x : Unitization.{u2, u3} R A) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2187 : Unitization.{u2, u3} R A) => B) _x) (SMulHomClass.toFunLike.{max (max u2 u3) u1, u4, max u2 u3, u1} (AlgHom.{u4, max u3 u2, u1} S (Unitization.{u2, u3} R A) B _inst_1 (Unitization.semiring.{u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5) _inst_7 (Unitization.algebra.{u4, u2, u3} S R A _inst_1 _inst_2 _inst_3 _inst_4 _inst_6 _inst_5 _inst_9 _inst_10 _inst_11) _inst_8) S (Unitization.{u2, u3} R A) B (SMulZeroClass.toSMul.{u4, max u2 u3} S (Unitization.{u2, u3} R A) (AddMonoid.toZero.{max u2 u3} (Unitization.{u2, u3} R A) (AddCommMonoid.toAddMonoid.{max u2 u3} (Unitization.{u2, u3} R A) (NonUnitalNonAssocSemiring.toAddCommMonoid.{max u2 u3} (Unitization.{u2, u3} R A) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{max u2 u3} (Unitization.{u2, u3} R A) (Semiring.toNonAssocSemiring.{max u2 u3} (Unitization.{u2, u3} R A) (Unitization.semiring.{u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5)))))) (DistribSMul.toSMulZeroClass.{u4, max u2 u3} S (Unitization.{u2, u3} R A) (AddMonoid.toAddZeroClass.{max u2 u3} (Unitization.{u2, u3} R A) (AddCommMonoid.toAddMonoid.{max u2 u3} (Unitization.{u2, u3} R A) (NonUnitalNonAssocSemiring.toAddCommMonoid.{max u2 u3} (Unitization.{u2, u3} R A) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{max u2 u3} (Unitization.{u2, u3} R A) (Semiring.toNonAssocSemiring.{max u2 u3} (Unitization.{u2, u3} R A) (Unitization.semiring.{u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5)))))) (DistribMulAction.toDistribSMul.{u4, max u2 u3} S (Unitization.{u2, u3} R A) (MonoidWithZero.toMonoid.{u4} S (Semiring.toMonoidWithZero.{u4} S (CommSemiring.toSemiring.{u4} S _inst_1))) (AddCommMonoid.toAddMonoid.{max u2 u3} (Unitization.{u2, u3} R A) (NonUnitalNonAssocSemiring.toAddCommMonoid.{max u2 u3} (Unitization.{u2, u3} R A) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{max u2 u3} (Unitization.{u2, u3} R A) (Semiring.toNonAssocSemiring.{max u2 u3} (Unitization.{u2, u3} R A) (Unitization.semiring.{u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5))))) (Module.toDistribMulAction.{u4, max u2 u3} S (Unitization.{u2, u3} R A) (CommSemiring.toSemiring.{u4} S _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{max u2 u3} (Unitization.{u2, u3} R A) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{max u2 u3} (Unitization.{u2, u3} R A) (Semiring.toNonAssocSemiring.{max u2 u3} (Unitization.{u2, u3} R A) (Unitization.semiring.{u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5)))) (Algebra.toModule.{u4, max u2 u3} S (Unitization.{u2, u3} R A) _inst_1 (Unitization.semiring.{u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5) (Unitization.algebra.{u4, u2, u3} S R A _inst_1 _inst_2 _inst_3 _inst_4 _inst_6 _inst_5 _inst_9 _inst_10 _inst_11)))))) (SMulZeroClass.toSMul.{u4, u1} S B (AddMonoid.toZero.{u1} B (AddCommMonoid.toAddMonoid.{u1} B (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} B (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} B (Semiring.toNonAssocSemiring.{u1} B _inst_7))))) (DistribSMul.toSMulZeroClass.{u4, u1} S B (AddMonoid.toAddZeroClass.{u1} B (AddCommMonoid.toAddMonoid.{u1} B (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} B (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} B (Semiring.toNonAssocSemiring.{u1} B _inst_7))))) (DistribMulAction.toDistribSMul.{u4, u1} S B (MonoidWithZero.toMonoid.{u4} S (Semiring.toMonoidWithZero.{u4} S (CommSemiring.toSemiring.{u4} S _inst_1))) (AddCommMonoid.toAddMonoid.{u1} B (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} B (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} B (Semiring.toNonAssocSemiring.{u1} B _inst_7)))) (Module.toDistribMulAction.{u4, u1} S B (CommSemiring.toSemiring.{u4} S _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} B (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} B (Semiring.toNonAssocSemiring.{u1} B _inst_7))) (Algebra.toModule.{u4, u1} S B _inst_1 _inst_7 _inst_8))))) (DistribMulActionHomClass.toSMulHomClass.{max (max u2 u3) u1, u4, max u2 u3, u1} (AlgHom.{u4, max u3 u2, u1} S (Unitization.{u2, u3} R A) B _inst_1 (Unitization.semiring.{u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5) _inst_7 (Unitization.algebra.{u4, u2, u3} S R A _inst_1 _inst_2 _inst_3 _inst_4 _inst_6 _inst_5 _inst_9 _inst_10 _inst_11) _inst_8) S (Unitization.{u2, u3} R A) B (MonoidWithZero.toMonoid.{u4} S (Semiring.toMonoidWithZero.{u4} S (CommSemiring.toSemiring.{u4} S _inst_1))) (AddCommMonoid.toAddMonoid.{max u2 u3} (Unitization.{u2, u3} R A) (NonUnitalNonAssocSemiring.toAddCommMonoid.{max u2 u3} (Unitization.{u2, u3} R A) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{max u2 u3} (Unitization.{u2, u3} R A) (Semiring.toNonAssocSemiring.{max u2 u3} (Unitization.{u2, u3} R A) (Unitization.semiring.{u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5))))) (AddCommMonoid.toAddMonoid.{u1} B (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} B (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} B (Semiring.toNonAssocSemiring.{u1} B _inst_7)))) (Module.toDistribMulAction.{u4, max u2 u3} S (Unitization.{u2, u3} R A) (CommSemiring.toSemiring.{u4} S _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{max u2 u3} (Unitization.{u2, u3} R A) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{max u2 u3} (Unitization.{u2, u3} R A) (Semiring.toNonAssocSemiring.{max u2 u3} (Unitization.{u2, u3} R A) (Unitization.semiring.{u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5)))) (Algebra.toModule.{u4, max u2 u3} S (Unitization.{u2, u3} R A) _inst_1 (Unitization.semiring.{u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5) (Unitization.algebra.{u4, u2, u3} S R A _inst_1 _inst_2 _inst_3 _inst_4 _inst_6 _inst_5 _inst_9 _inst_10 _inst_11))) (Module.toDistribMulAction.{u4, u1} S B (CommSemiring.toSemiring.{u4} S _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} B (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} B (Semiring.toNonAssocSemiring.{u1} B _inst_7))) (Algebra.toModule.{u4, u1} S B _inst_1 _inst_7 _inst_8)) (NonUnitalAlgHomClass.toDistribMulActionHomClass.{max (max u2 u3) u1, u4, max u2 u3, u1} (AlgHom.{u4, max u3 u2, u1} S (Unitization.{u2, u3} R A) B _inst_1 (Unitization.semiring.{u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5) _inst_7 (Unitization.algebra.{u4, u2, u3} S R A _inst_1 _inst_2 _inst_3 _inst_4 _inst_6 _inst_5 _inst_9 _inst_10 _inst_11) _inst_8) S (Unitization.{u2, u3} R A) B (MonoidWithZero.toMonoid.{u4} S (Semiring.toMonoidWithZero.{u4} S (CommSemiring.toSemiring.{u4} S _inst_1))) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{max u2 u3} (Unitization.{u2, u3} R A) (Semiring.toNonAssocSemiring.{max u2 u3} (Unitization.{u2, u3} R A) (Unitization.semiring.{u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5))) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} B (Semiring.toNonAssocSemiring.{u1} B _inst_7)) (Module.toDistribMulAction.{u4, max u2 u3} S (Unitization.{u2, u3} R A) (CommSemiring.toSemiring.{u4} S _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{max u2 u3} (Unitization.{u2, u3} R A) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{max u2 u3} (Unitization.{u2, u3} R A) (Semiring.toNonAssocSemiring.{max u2 u3} (Unitization.{u2, u3} R A) (Unitization.semiring.{u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5)))) (Algebra.toModule.{u4, max u2 u3} S (Unitization.{u2, u3} R A) _inst_1 (Unitization.semiring.{u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5) (Unitization.algebra.{u4, u2, u3} S R A _inst_1 _inst_2 _inst_3 _inst_4 _inst_6 _inst_5 _inst_9 _inst_10 _inst_11))) (Module.toDistribMulAction.{u4, u1} S B (CommSemiring.toSemiring.{u4} S _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} B (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} B (Semiring.toNonAssocSemiring.{u1} B _inst_7))) (Algebra.toModule.{u4, u1} S B _inst_1 _inst_7 _inst_8)) (AlgHom.instNonUnitalAlgHomClassToMonoidToMonoidWithZeroToSemiringToNonUnitalNonAssocSemiringToNonAssocSemiringToNonUnitalNonAssocSemiringToNonAssocSemiringToDistribMulActionToAddCommMonoidToModuleToDistribMulActionToAddCommMonoidToModule.{u4, max u2 u3, u1, max (max u2 u3) u1} S (Unitization.{u2, u3} R A) B _inst_1 (Unitization.semiring.{u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5) _inst_7 (Unitization.algebra.{u4, u2, u3} S R A _inst_1 _inst_2 _inst_3 _inst_4 _inst_6 _inst_5 _inst_9 _inst_10 _inst_11) _inst_8 (AlgHom.{u4, max u3 u2, u1} S (Unitization.{u2, u3} R A) B _inst_1 (Unitization.semiring.{u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5) _inst_7 (Unitization.algebra.{u4, u2, u3} S R A _inst_1 _inst_2 _inst_3 _inst_4 _inst_6 _inst_5 _inst_9 _inst_10 _inst_11) _inst_8) (AlgHom.algHomClass.{u4, max u2 u3, u1} S (Unitization.{u2, u3} R A) B _inst_1 (Unitization.semiring.{u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5) _inst_7 (Unitization.algebra.{u4, u2, u3} S R A _inst_1 _inst_2 _inst_3 _inst_4 _inst_6 _inst_5 _inst_9 _inst_10 _inst_11) _inst_8))))) ψ (Unitization.inr.{u2, u3} R A (CommMonoidWithZero.toZero.{u2} R (CommSemiring.toCommMonoidWithZero.{u2} R _inst_2)) a))) -> (forall (r : R), Eq.{succ u1} ((fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2187 : Unitization.{u2, u3} R A) => B) (FunLike.coe.{max (succ u2) (succ u3), succ u2, max (succ u2) (succ u3)} (RingHom.{u2, max u3 u2} R (Unitization.{u2, u3} R A) (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_2)) (Semiring.toNonAssocSemiring.{max u3 u2} (Unitization.{u2, u3} R A) (Unitization.semiring.{u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5))) R (fun (a : R) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : R) => Unitization.{u2, u3} R A) a) (MulHomClass.toFunLike.{max u2 u3, u2, max u2 u3} (RingHom.{u2, max u3 u2} R (Unitization.{u2, u3} R A) (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_2)) (Semiring.toNonAssocSemiring.{max u3 u2} (Unitization.{u2, u3} R A) (Unitization.semiring.{u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5))) R (Unitization.{u2, u3} R A) (NonUnitalNonAssocSemiring.toMul.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_2)))) (NonUnitalNonAssocSemiring.toMul.{max u2 u3} (Unitization.{u2, u3} R A) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{max u2 u3} (Unitization.{u2, u3} R A) (Semiring.toNonAssocSemiring.{max u3 u2} (Unitization.{u2, u3} R A) (Unitization.semiring.{u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5)))) (NonUnitalRingHomClass.toMulHomClass.{max u2 u3, u2, max u2 u3} (RingHom.{u2, max u3 u2} R (Unitization.{u2, u3} R A) (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_2)) (Semiring.toNonAssocSemiring.{max u3 u2} (Unitization.{u2, u3} R A) (Unitization.semiring.{u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5))) R (Unitization.{u2, u3} R A) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_2))) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{max u2 u3} (Unitization.{u2, u3} R A) (Semiring.toNonAssocSemiring.{max u3 u2} (Unitization.{u2, u3} R A) (Unitization.semiring.{u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5))) (RingHomClass.toNonUnitalRingHomClass.{max u2 u3, u2, max u2 u3} (RingHom.{u2, max u3 u2} R (Unitization.{u2, u3} R A) (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_2)) (Semiring.toNonAssocSemiring.{max u3 u2} (Unitization.{u2, u3} R A) (Unitization.semiring.{u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5))) R (Unitization.{u2, u3} R A) (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_2)) (Semiring.toNonAssocSemiring.{max u3 u2} (Unitization.{u2, u3} R A) (Unitization.semiring.{u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5)) (RingHom.instRingHomClassRingHom.{u2, max u2 u3} R (Unitization.{u2, u3} R A) (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_2)) (Semiring.toNonAssocSemiring.{max u3 u2} (Unitization.{u2, u3} R A) (Unitization.semiring.{u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5)))))) (algebraMap.{u2, max u3 u2} R (Unitization.{u2, u3} R A) _inst_2 (Unitization.semiring.{u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5) (Unitization.algebra.{u2, u2, u3} R R A _inst_2 _inst_2 _inst_3 _inst_4 _inst_6 _inst_5 (Algebra.id.{u2} R _inst_2) (Module.toDistribMulAction.{u2, u3} R A (CommSemiring.toSemiring.{u2} R _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u3} A _inst_3)) _inst_4) (IsScalarTower.left.{u2, u3} R A (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R _inst_2))) (MulActionWithZero.toMulAction.{u2, u3} R A (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R _inst_2)) (SemigroupWithZero.toZero.{u3} A (NonUnitalSemiring.toSemigroupWithZero.{u3} A _inst_3)) (Module.toMulActionWithZero.{u2, u3} R A (CommSemiring.toSemiring.{u2} R _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u3} A _inst_3)) _inst_4))))) r)) (FunLike.coe.{max (max (succ u2) (succ u3)) (succ u1), max (succ u2) (succ u3), succ u1} (AlgHom.{u4, max u3 u2, u1} S (Unitization.{u2, u3} R A) B _inst_1 (Unitization.semiring.{u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5) _inst_7 (Unitization.algebra.{u4, u2, u3} S R A _inst_1 _inst_2 _inst_3 _inst_4 _inst_6 _inst_5 _inst_9 _inst_10 _inst_11) _inst_8) (Unitization.{u2, u3} R A) (fun (_x : Unitization.{u2, u3} R A) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2187 : Unitization.{u2, u3} R A) => B) _x) (SMulHomClass.toFunLike.{max (max u2 u3) u1, u4, max u2 u3, u1} (AlgHom.{u4, max u3 u2, u1} S (Unitization.{u2, u3} R A) B _inst_1 (Unitization.semiring.{u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5) _inst_7 (Unitization.algebra.{u4, u2, u3} S R A _inst_1 _inst_2 _inst_3 _inst_4 _inst_6 _inst_5 _inst_9 _inst_10 _inst_11) _inst_8) S (Unitization.{u2, u3} R A) B (SMulZeroClass.toSMul.{u4, max u2 u3} S (Unitization.{u2, u3} R A) (AddMonoid.toZero.{max u2 u3} (Unitization.{u2, u3} R A) (AddCommMonoid.toAddMonoid.{max u2 u3} (Unitization.{u2, u3} R A) (NonUnitalNonAssocSemiring.toAddCommMonoid.{max u2 u3} (Unitization.{u2, u3} R A) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{max u2 u3} (Unitization.{u2, u3} R A) (Semiring.toNonAssocSemiring.{max u2 u3} (Unitization.{u2, u3} R A) (Unitization.semiring.{u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5)))))) (DistribSMul.toSMulZeroClass.{u4, max u2 u3} S (Unitization.{u2, u3} R A) (AddMonoid.toAddZeroClass.{max u2 u3} (Unitization.{u2, u3} R A) (AddCommMonoid.toAddMonoid.{max u2 u3} (Unitization.{u2, u3} R A) (NonUnitalNonAssocSemiring.toAddCommMonoid.{max u2 u3} (Unitization.{u2, u3} R A) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{max u2 u3} (Unitization.{u2, u3} R A) (Semiring.toNonAssocSemiring.{max u2 u3} (Unitization.{u2, u3} R A) (Unitization.semiring.{u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5)))))) (DistribMulAction.toDistribSMul.{u4, max u2 u3} S (Unitization.{u2, u3} R A) (MonoidWithZero.toMonoid.{u4} S (Semiring.toMonoidWithZero.{u4} S (CommSemiring.toSemiring.{u4} S _inst_1))) (AddCommMonoid.toAddMonoid.{max u2 u3} (Unitization.{u2, u3} R A) (NonUnitalNonAssocSemiring.toAddCommMonoid.{max u2 u3} (Unitization.{u2, u3} R A) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{max u2 u3} (Unitization.{u2, u3} R A) (Semiring.toNonAssocSemiring.{max u2 u3} (Unitization.{u2, u3} R A) (Unitization.semiring.{u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5))))) (Module.toDistribMulAction.{u4, max u2 u3} S (Unitization.{u2, u3} R A) (CommSemiring.toSemiring.{u4} S _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{max u2 u3} (Unitization.{u2, u3} R A) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{max u2 u3} (Unitization.{u2, u3} R A) (Semiring.toNonAssocSemiring.{max u2 u3} (Unitization.{u2, u3} R A) (Unitization.semiring.{u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5)))) (Algebra.toModule.{u4, max u2 u3} S (Unitization.{u2, u3} R A) _inst_1 (Unitization.semiring.{u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5) (Unitization.algebra.{u4, u2, u3} S R A _inst_1 _inst_2 _inst_3 _inst_4 _inst_6 _inst_5 _inst_9 _inst_10 _inst_11)))))) (SMulZeroClass.toSMul.{u4, u1} S B (AddMonoid.toZero.{u1} B (AddCommMonoid.toAddMonoid.{u1} B (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} B (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} B (Semiring.toNonAssocSemiring.{u1} B _inst_7))))) (DistribSMul.toSMulZeroClass.{u4, u1} S B (AddMonoid.toAddZeroClass.{u1} B (AddCommMonoid.toAddMonoid.{u1} B (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} B (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} B (Semiring.toNonAssocSemiring.{u1} B _inst_7))))) (DistribMulAction.toDistribSMul.{u4, u1} S B (MonoidWithZero.toMonoid.{u4} S (Semiring.toMonoidWithZero.{u4} S (CommSemiring.toSemiring.{u4} S _inst_1))) (AddCommMonoid.toAddMonoid.{u1} B (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} B (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} B (Semiring.toNonAssocSemiring.{u1} B _inst_7)))) (Module.toDistribMulAction.{u4, u1} S B (CommSemiring.toSemiring.{u4} S _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} B (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} B (Semiring.toNonAssocSemiring.{u1} B _inst_7))) (Algebra.toModule.{u4, u1} S B _inst_1 _inst_7 _inst_8))))) (DistribMulActionHomClass.toSMulHomClass.{max (max u2 u3) u1, u4, max u2 u3, u1} (AlgHom.{u4, max u3 u2, u1} S (Unitization.{u2, u3} R A) B _inst_1 (Unitization.semiring.{u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5) _inst_7 (Unitization.algebra.{u4, u2, u3} S R A _inst_1 _inst_2 _inst_3 _inst_4 _inst_6 _inst_5 _inst_9 _inst_10 _inst_11) _inst_8) S (Unitization.{u2, u3} R A) B (MonoidWithZero.toMonoid.{u4} S (Semiring.toMonoidWithZero.{u4} S (CommSemiring.toSemiring.{u4} S _inst_1))) (AddCommMonoid.toAddMonoid.{max u2 u3} (Unitization.{u2, u3} R A) (NonUnitalNonAssocSemiring.toAddCommMonoid.{max u2 u3} (Unitization.{u2, u3} R A) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{max u2 u3} (Unitization.{u2, u3} R A) (Semiring.toNonAssocSemiring.{max u2 u3} (Unitization.{u2, u3} R A) (Unitization.semiring.{u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5))))) (AddCommMonoid.toAddMonoid.{u1} B (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} B (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} B (Semiring.toNonAssocSemiring.{u1} B _inst_7)))) (Module.toDistribMulAction.{u4, max u2 u3} S (Unitization.{u2, u3} R A) (CommSemiring.toSemiring.{u4} S _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{max u2 u3} (Unitization.{u2, u3} R A) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{max u2 u3} (Unitization.{u2, u3} R A) (Semiring.toNonAssocSemiring.{max u2 u3} (Unitization.{u2, u3} R A) (Unitization.semiring.{u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5)))) (Algebra.toModule.{u4, max u2 u3} S (Unitization.{u2, u3} R A) _inst_1 (Unitization.semiring.{u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5) (Unitization.algebra.{u4, u2, u3} S R A _inst_1 _inst_2 _inst_3 _inst_4 _inst_6 _inst_5 _inst_9 _inst_10 _inst_11))) (Module.toDistribMulAction.{u4, u1} S B (CommSemiring.toSemiring.{u4} S _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} B (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} B (Semiring.toNonAssocSemiring.{u1} B _inst_7))) (Algebra.toModule.{u4, u1} S B _inst_1 _inst_7 _inst_8)) (NonUnitalAlgHomClass.toDistribMulActionHomClass.{max (max u2 u3) u1, u4, max u2 u3, u1} (AlgHom.{u4, max u3 u2, u1} S (Unitization.{u2, u3} R A) B _inst_1 (Unitization.semiring.{u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5) _inst_7 (Unitization.algebra.{u4, u2, u3} S R A _inst_1 _inst_2 _inst_3 _inst_4 _inst_6 _inst_5 _inst_9 _inst_10 _inst_11) _inst_8) S (Unitization.{u2, u3} R A) B (MonoidWithZero.toMonoid.{u4} S (Semiring.toMonoidWithZero.{u4} S (CommSemiring.toSemiring.{u4} S _inst_1))) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{max u2 u3} (Unitization.{u2, u3} R A) (Semiring.toNonAssocSemiring.{max u2 u3} (Unitization.{u2, u3} R A) (Unitization.semiring.{u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5))) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} B (Semiring.toNonAssocSemiring.{u1} B _inst_7)) (Module.toDistribMulAction.{u4, max u2 u3} S (Unitization.{u2, u3} R A) (CommSemiring.toSemiring.{u4} S _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{max u2 u3} (Unitization.{u2, u3} R A) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{max u2 u3} (Unitization.{u2, u3} R A) (Semiring.toNonAssocSemiring.{max u2 u3} (Unitization.{u2, u3} R A) (Unitization.semiring.{u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5)))) (Algebra.toModule.{u4, max u2 u3} S (Unitization.{u2, u3} R A) _inst_1 (Unitization.semiring.{u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5) (Unitization.algebra.{u4, u2, u3} S R A _inst_1 _inst_2 _inst_3 _inst_4 _inst_6 _inst_5 _inst_9 _inst_10 _inst_11))) (Module.toDistribMulAction.{u4, u1} S B (CommSemiring.toSemiring.{u4} S _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} B (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} B (Semiring.toNonAssocSemiring.{u1} B _inst_7))) (Algebra.toModule.{u4, u1} S B _inst_1 _inst_7 _inst_8)) (AlgHom.instNonUnitalAlgHomClassToMonoidToMonoidWithZeroToSemiringToNonUnitalNonAssocSemiringToNonAssocSemiringToNonUnitalNonAssocSemiringToNonAssocSemiringToDistribMulActionToAddCommMonoidToModuleToDistribMulActionToAddCommMonoidToModule.{u4, max u2 u3, u1, max (max u2 u3) u1} S (Unitization.{u2, u3} R A) B _inst_1 (Unitization.semiring.{u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5) _inst_7 (Unitization.algebra.{u4, u2, u3} S R A _inst_1 _inst_2 _inst_3 _inst_4 _inst_6 _inst_5 _inst_9 _inst_10 _inst_11) _inst_8 (AlgHom.{u4, max u3 u2, u1} S (Unitization.{u2, u3} R A) B _inst_1 (Unitization.semiring.{u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5) _inst_7 (Unitization.algebra.{u4, u2, u3} S R A _inst_1 _inst_2 _inst_3 _inst_4 _inst_6 _inst_5 _inst_9 _inst_10 _inst_11) _inst_8) (AlgHom.algHomClass.{u4, max u2 u3, u1} S (Unitization.{u2, u3} R A) B _inst_1 (Unitization.semiring.{u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5) _inst_7 (Unitization.algebra.{u4, u2, u3} S R A _inst_1 _inst_2 _inst_3 _inst_4 _inst_6 _inst_5 _inst_9 _inst_10 _inst_11) _inst_8))))) φ (FunLike.coe.{max (succ u2) (succ u3), succ u2, max (succ u2) (succ u3)} (RingHom.{u2, max u3 u2} R (Unitization.{u2, u3} R A) (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_2)) (Semiring.toNonAssocSemiring.{max u3 u2} (Unitization.{u2, u3} R A) (Unitization.semiring.{u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5))) R (fun (_x : R) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : R) => Unitization.{u2, u3} R A) _x) (MulHomClass.toFunLike.{max u2 u3, u2, max u2 u3} (RingHom.{u2, max u3 u2} R (Unitization.{u2, u3} R A) (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_2)) (Semiring.toNonAssocSemiring.{max u3 u2} (Unitization.{u2, u3} R A) (Unitization.semiring.{u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5))) R (Unitization.{u2, u3} R A) (NonUnitalNonAssocSemiring.toMul.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_2)))) (NonUnitalNonAssocSemiring.toMul.{max u2 u3} (Unitization.{u2, u3} R A) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{max u2 u3} (Unitization.{u2, u3} R A) (Semiring.toNonAssocSemiring.{max u3 u2} (Unitization.{u2, u3} R A) (Unitization.semiring.{u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5)))) (NonUnitalRingHomClass.toMulHomClass.{max u2 u3, u2, max u2 u3} (RingHom.{u2, max u3 u2} R (Unitization.{u2, u3} R A) (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_2)) (Semiring.toNonAssocSemiring.{max u3 u2} (Unitization.{u2, u3} R A) (Unitization.semiring.{u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5))) R (Unitization.{u2, u3} R A) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_2))) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{max u2 u3} (Unitization.{u2, u3} R A) (Semiring.toNonAssocSemiring.{max u3 u2} (Unitization.{u2, u3} R A) (Unitization.semiring.{u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5))) (RingHomClass.toNonUnitalRingHomClass.{max u2 u3, u2, max u2 u3} (RingHom.{u2, max u3 u2} R (Unitization.{u2, u3} R A) (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_2)) (Semiring.toNonAssocSemiring.{max u3 u2} (Unitization.{u2, u3} R A) (Unitization.semiring.{u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5))) R (Unitization.{u2, u3} R A) (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_2)) (Semiring.toNonAssocSemiring.{max u3 u2} (Unitization.{u2, u3} R A) (Unitization.semiring.{u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5)) (RingHom.instRingHomClassRingHom.{u2, max u2 u3} R (Unitization.{u2, u3} R A) (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_2)) (Semiring.toNonAssocSemiring.{max u3 u2} (Unitization.{u2, u3} R A) (Unitization.semiring.{u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5)))))) (algebraMap.{u2, max u3 u2} R (Unitization.{u2, u3} R A) _inst_2 (Unitization.semiring.{u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5) (Unitization.algebra.{u2, u2, u3} R R A _inst_2 _inst_2 _inst_3 _inst_4 _inst_6 _inst_5 (Algebra.id.{u2} R _inst_2) (Module.toDistribMulAction.{u2, u3} R A (CommSemiring.toSemiring.{u2} R _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u3} A _inst_3)) _inst_4) (IsScalarTower.left.{u2, u3} R A (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R _inst_2))) (MulActionWithZero.toMulAction.{u2, u3} R A (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R _inst_2)) (SemigroupWithZero.toZero.{u3} A (NonUnitalSemiring.toSemigroupWithZero.{u3} A _inst_3)) (Module.toMulActionWithZero.{u2, u3} R A (CommSemiring.toSemiring.{u2} R _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u3} A _inst_3)) _inst_4))))) r)) (FunLike.coe.{max (max (succ u2) (succ u3)) (succ u1), max (succ u2) (succ u3), succ u1} (AlgHom.{u4, max u3 u2, u1} S (Unitization.{u2, u3} R A) B _inst_1 (Unitization.semiring.{u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5) _inst_7 (Unitization.algebra.{u4, u2, u3} S R A _inst_1 _inst_2 _inst_3 _inst_4 _inst_6 _inst_5 _inst_9 _inst_10 _inst_11) _inst_8) (Unitization.{u2, u3} R A) (fun (_x : Unitization.{u2, u3} R A) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2187 : Unitization.{u2, u3} R A) => B) _x) (SMulHomClass.toFunLike.{max (max u2 u3) u1, u4, max u2 u3, u1} (AlgHom.{u4, max u3 u2, u1} S (Unitization.{u2, u3} R A) B _inst_1 (Unitization.semiring.{u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5) _inst_7 (Unitization.algebra.{u4, u2, u3} S R A _inst_1 _inst_2 _inst_3 _inst_4 _inst_6 _inst_5 _inst_9 _inst_10 _inst_11) _inst_8) S (Unitization.{u2, u3} R A) B (SMulZeroClass.toSMul.{u4, max u2 u3} S (Unitization.{u2, u3} R A) (AddMonoid.toZero.{max u2 u3} (Unitization.{u2, u3} R A) (AddCommMonoid.toAddMonoid.{max u2 u3} (Unitization.{u2, u3} R A) (NonUnitalNonAssocSemiring.toAddCommMonoid.{max u2 u3} (Unitization.{u2, u3} R A) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{max u2 u3} (Unitization.{u2, u3} R A) (Semiring.toNonAssocSemiring.{max u2 u3} (Unitization.{u2, u3} R A) (Unitization.semiring.{u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5)))))) (DistribSMul.toSMulZeroClass.{u4, max u2 u3} S (Unitization.{u2, u3} R A) (AddMonoid.toAddZeroClass.{max u2 u3} (Unitization.{u2, u3} R A) (AddCommMonoid.toAddMonoid.{max u2 u3} (Unitization.{u2, u3} R A) (NonUnitalNonAssocSemiring.toAddCommMonoid.{max u2 u3} (Unitization.{u2, u3} R A) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{max u2 u3} (Unitization.{u2, u3} R A) (Semiring.toNonAssocSemiring.{max u2 u3} (Unitization.{u2, u3} R A) (Unitization.semiring.{u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5)))))) (DistribMulAction.toDistribSMul.{u4, max u2 u3} S (Unitization.{u2, u3} R A) (MonoidWithZero.toMonoid.{u4} S (Semiring.toMonoidWithZero.{u4} S (CommSemiring.toSemiring.{u4} S _inst_1))) (AddCommMonoid.toAddMonoid.{max u2 u3} (Unitization.{u2, u3} R A) (NonUnitalNonAssocSemiring.toAddCommMonoid.{max u2 u3} (Unitization.{u2, u3} R A) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{max u2 u3} (Unitization.{u2, u3} R A) (Semiring.toNonAssocSemiring.{max u2 u3} (Unitization.{u2, u3} R A) (Unitization.semiring.{u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5))))) (Module.toDistribMulAction.{u4, max u2 u3} S (Unitization.{u2, u3} R A) (CommSemiring.toSemiring.{u4} S _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{max u2 u3} (Unitization.{u2, u3} R A) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{max u2 u3} (Unitization.{u2, u3} R A) (Semiring.toNonAssocSemiring.{max u2 u3} (Unitization.{u2, u3} R A) (Unitization.semiring.{u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5)))) (Algebra.toModule.{u4, max u2 u3} S (Unitization.{u2, u3} R A) _inst_1 (Unitization.semiring.{u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5) (Unitization.algebra.{u4, u2, u3} S R A _inst_1 _inst_2 _inst_3 _inst_4 _inst_6 _inst_5 _inst_9 _inst_10 _inst_11)))))) (SMulZeroClass.toSMul.{u4, u1} S B (AddMonoid.toZero.{u1} B (AddCommMonoid.toAddMonoid.{u1} B (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} B (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} B (Semiring.toNonAssocSemiring.{u1} B _inst_7))))) (DistribSMul.toSMulZeroClass.{u4, u1} S B (AddMonoid.toAddZeroClass.{u1} B (AddCommMonoid.toAddMonoid.{u1} B (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} B (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} B (Semiring.toNonAssocSemiring.{u1} B _inst_7))))) (DistribMulAction.toDistribSMul.{u4, u1} S B (MonoidWithZero.toMonoid.{u4} S (Semiring.toMonoidWithZero.{u4} S (CommSemiring.toSemiring.{u4} S _inst_1))) (AddCommMonoid.toAddMonoid.{u1} B (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} B (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} B (Semiring.toNonAssocSemiring.{u1} B _inst_7)))) (Module.toDistribMulAction.{u4, u1} S B (CommSemiring.toSemiring.{u4} S _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} B (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} B (Semiring.toNonAssocSemiring.{u1} B _inst_7))) (Algebra.toModule.{u4, u1} S B _inst_1 _inst_7 _inst_8))))) (DistribMulActionHomClass.toSMulHomClass.{max (max u2 u3) u1, u4, max u2 u3, u1} (AlgHom.{u4, max u3 u2, u1} S (Unitization.{u2, u3} R A) B _inst_1 (Unitization.semiring.{u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5) _inst_7 (Unitization.algebra.{u4, u2, u3} S R A _inst_1 _inst_2 _inst_3 _inst_4 _inst_6 _inst_5 _inst_9 _inst_10 _inst_11) _inst_8) S (Unitization.{u2, u3} R A) B (MonoidWithZero.toMonoid.{u4} S (Semiring.toMonoidWithZero.{u4} S (CommSemiring.toSemiring.{u4} S _inst_1))) (AddCommMonoid.toAddMonoid.{max u2 u3} (Unitization.{u2, u3} R A) (NonUnitalNonAssocSemiring.toAddCommMonoid.{max u2 u3} (Unitization.{u2, u3} R A) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{max u2 u3} (Unitization.{u2, u3} R A) (Semiring.toNonAssocSemiring.{max u2 u3} (Unitization.{u2, u3} R A) (Unitization.semiring.{u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5))))) (AddCommMonoid.toAddMonoid.{u1} B (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} B (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} B (Semiring.toNonAssocSemiring.{u1} B _inst_7)))) (Module.toDistribMulAction.{u4, max u2 u3} S (Unitization.{u2, u3} R A) (CommSemiring.toSemiring.{u4} S _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{max u2 u3} (Unitization.{u2, u3} R A) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{max u2 u3} (Unitization.{u2, u3} R A) (Semiring.toNonAssocSemiring.{max u2 u3} (Unitization.{u2, u3} R A) (Unitization.semiring.{u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5)))) (Algebra.toModule.{u4, max u2 u3} S (Unitization.{u2, u3} R A) _inst_1 (Unitization.semiring.{u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5) (Unitization.algebra.{u4, u2, u3} S R A _inst_1 _inst_2 _inst_3 _inst_4 _inst_6 _inst_5 _inst_9 _inst_10 _inst_11))) (Module.toDistribMulAction.{u4, u1} S B (CommSemiring.toSemiring.{u4} S _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} B (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} B (Semiring.toNonAssocSemiring.{u1} B _inst_7))) (Algebra.toModule.{u4, u1} S B _inst_1 _inst_7 _inst_8)) (NonUnitalAlgHomClass.toDistribMulActionHomClass.{max (max u2 u3) u1, u4, max u2 u3, u1} (AlgHom.{u4, max u3 u2, u1} S (Unitization.{u2, u3} R A) B _inst_1 (Unitization.semiring.{u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5) _inst_7 (Unitization.algebra.{u4, u2, u3} S R A _inst_1 _inst_2 _inst_3 _inst_4 _inst_6 _inst_5 _inst_9 _inst_10 _inst_11) _inst_8) S (Unitization.{u2, u3} R A) B (MonoidWithZero.toMonoid.{u4} S (Semiring.toMonoidWithZero.{u4} S (CommSemiring.toSemiring.{u4} S _inst_1))) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{max u2 u3} (Unitization.{u2, u3} R A) (Semiring.toNonAssocSemiring.{max u2 u3} (Unitization.{u2, u3} R A) (Unitization.semiring.{u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5))) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} B (Semiring.toNonAssocSemiring.{u1} B _inst_7)) (Module.toDistribMulAction.{u4, max u2 u3} S (Unitization.{u2, u3} R A) (CommSemiring.toSemiring.{u4} S _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{max u2 u3} (Unitization.{u2, u3} R A) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{max u2 u3} (Unitization.{u2, u3} R A) (Semiring.toNonAssocSemiring.{max u2 u3} (Unitization.{u2, u3} R A) (Unitization.semiring.{u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5)))) (Algebra.toModule.{u4, max u2 u3} S (Unitization.{u2, u3} R A) _inst_1 (Unitization.semiring.{u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5) (Unitization.algebra.{u4, u2, u3} S R A _inst_1 _inst_2 _inst_3 _inst_4 _inst_6 _inst_5 _inst_9 _inst_10 _inst_11))) (Module.toDistribMulAction.{u4, u1} S B (CommSemiring.toSemiring.{u4} S _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} B (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} B (Semiring.toNonAssocSemiring.{u1} B _inst_7))) (Algebra.toModule.{u4, u1} S B _inst_1 _inst_7 _inst_8)) (AlgHom.instNonUnitalAlgHomClassToMonoidToMonoidWithZeroToSemiringToNonUnitalNonAssocSemiringToNonAssocSemiringToNonUnitalNonAssocSemiringToNonAssocSemiringToDistribMulActionToAddCommMonoidToModuleToDistribMulActionToAddCommMonoidToModule.{u4, max u2 u3, u1, max (max u2 u3) u1} S (Unitization.{u2, u3} R A) B _inst_1 (Unitization.semiring.{u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5) _inst_7 (Unitization.algebra.{u4, u2, u3} S R A _inst_1 _inst_2 _inst_3 _inst_4 _inst_6 _inst_5 _inst_9 _inst_10 _inst_11) _inst_8 (AlgHom.{u4, max u3 u2, u1} S (Unitization.{u2, u3} R A) B _inst_1 (Unitization.semiring.{u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5) _inst_7 (Unitization.algebra.{u4, u2, u3} S R A _inst_1 _inst_2 _inst_3 _inst_4 _inst_6 _inst_5 _inst_9 _inst_10 _inst_11) _inst_8) (AlgHom.algHomClass.{u4, max u2 u3, u1} S (Unitization.{u2, u3} R A) B _inst_1 (Unitization.semiring.{u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5) _inst_7 (Unitization.algebra.{u4, u2, u3} S R A _inst_1 _inst_2 _inst_3 _inst_4 _inst_6 _inst_5 _inst_9 _inst_10 _inst_11) _inst_8))))) ψ (FunLike.coe.{max (succ u2) (succ u3), succ u2, max (succ u2) (succ u3)} (RingHom.{u2, max u3 u2} R (Unitization.{u2, u3} R A) (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_2)) (Semiring.toNonAssocSemiring.{max u3 u2} (Unitization.{u2, u3} R A) (Unitization.semiring.{u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5))) R (fun (_x : R) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : R) => Unitization.{u2, u3} R A) _x) (MulHomClass.toFunLike.{max u2 u3, u2, max u2 u3} (RingHom.{u2, max u3 u2} R (Unitization.{u2, u3} R A) (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_2)) (Semiring.toNonAssocSemiring.{max u3 u2} (Unitization.{u2, u3} R A) (Unitization.semiring.{u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5))) R (Unitization.{u2, u3} R A) (NonUnitalNonAssocSemiring.toMul.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_2)))) (NonUnitalNonAssocSemiring.toMul.{max u2 u3} (Unitization.{u2, u3} R A) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{max u2 u3} (Unitization.{u2, u3} R A) (Semiring.toNonAssocSemiring.{max u3 u2} (Unitization.{u2, u3} R A) (Unitization.semiring.{u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5)))) (NonUnitalRingHomClass.toMulHomClass.{max u2 u3, u2, max u2 u3} (RingHom.{u2, max u3 u2} R (Unitization.{u2, u3} R A) (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_2)) (Semiring.toNonAssocSemiring.{max u3 u2} (Unitization.{u2, u3} R A) (Unitization.semiring.{u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5))) R (Unitization.{u2, u3} R A) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_2))) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{max u2 u3} (Unitization.{u2, u3} R A) (Semiring.toNonAssocSemiring.{max u3 u2} (Unitization.{u2, u3} R A) (Unitization.semiring.{u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5))) (RingHomClass.toNonUnitalRingHomClass.{max u2 u3, u2, max u2 u3} (RingHom.{u2, max u3 u2} R (Unitization.{u2, u3} R A) (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_2)) (Semiring.toNonAssocSemiring.{max u3 u2} (Unitization.{u2, u3} R A) (Unitization.semiring.{u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5))) R (Unitization.{u2, u3} R A) (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_2)) (Semiring.toNonAssocSemiring.{max u3 u2} (Unitization.{u2, u3} R A) (Unitization.semiring.{u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5)) (RingHom.instRingHomClassRingHom.{u2, max u2 u3} R (Unitization.{u2, u3} R A) (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_2)) (Semiring.toNonAssocSemiring.{max u3 u2} (Unitization.{u2, u3} R A) (Unitization.semiring.{u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5)))))) (algebraMap.{u2, max u3 u2} R (Unitization.{u2, u3} R A) _inst_2 (Unitization.semiring.{u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5) (Unitization.algebra.{u2, u2, u3} R R A _inst_2 _inst_2 _inst_3 _inst_4 _inst_6 _inst_5 (Algebra.id.{u2} R _inst_2) (Module.toDistribMulAction.{u2, u3} R A (CommSemiring.toSemiring.{u2} R _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u3} A _inst_3)) _inst_4) (IsScalarTower.left.{u2, u3} R A (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R _inst_2))) (MulActionWithZero.toMulAction.{u2, u3} R A (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R _inst_2)) (SemigroupWithZero.toZero.{u3} A (NonUnitalSemiring.toSemigroupWithZero.{u3} A _inst_3)) (Module.toMulActionWithZero.{u2, u3} R A (CommSemiring.toSemiring.{u2} R _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u3} A _inst_3)) _inst_4))))) r))) -> (Eq.{max (max (succ u2) (succ u3)) (succ u1)} (AlgHom.{u4, max u3 u2, u1} S (Unitization.{u2, u3} R A) B _inst_1 (Unitization.semiring.{u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5) _inst_7 (Unitization.algebra.{u4, u2, u3} S R A _inst_1 _inst_2 _inst_3 _inst_4 _inst_6 _inst_5 _inst_9 _inst_10 _inst_11) _inst_8) φ ψ)
+<too large>
 Case conversion may be inaccurate. Consider using '#align unitization.alg_hom_ext Unitization.algHom_extₓ'. -/
 theorem algHom_ext {φ ψ : Unitization R A →ₐ[S] B} (h : ∀ a : A, φ a = ψ a)
     (h' : ∀ r, φ (algebraMap R (Unitization R A) r) = ψ (algebraMap R (Unitization R A) r)) :
@@ -935,10 +914,7 @@ theorem algHom_ext {φ ψ : Unitization R A →ₐ[S] B} (h : ∀ a : A, φ a =
 #align unitization.alg_hom_ext Unitization.algHom_ext
 
 /- warning: unitization.alg_hom_ext' -> Unitization.algHom_ext' is a dubious translation:
-lean 3 declaration is
-  forall {R : Type.{u1}} {A : Type.{u2}} [_inst_2 : CommSemiring.{u1} R] [_inst_3 : NonUnitalSemiring.{u2} A] [_inst_4 : Module.{u1, u2} R A (CommSemiring.toSemiring.{u1} R _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u2} A _inst_3))] [_inst_5 : SMulCommClass.{u1, u2, u2} R A A (SMulZeroClass.toHasSmul.{u1, u2} R A (AddZeroClass.toHasZero.{u2} A (AddMonoid.toAddZeroClass.{u2} A (AddCommMonoid.toAddMonoid.{u2} A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u2} A _inst_3))))) (SMulWithZero.toSmulZeroClass.{u1, u2} R A (MulZeroClass.toHasZero.{u1} R (MulZeroOneClass.toMulZeroClass.{u1} R (MonoidWithZero.toMulZeroOneClass.{u1} R (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R _inst_2))))) (AddZeroClass.toHasZero.{u2} A (AddMonoid.toAddZeroClass.{u2} A (AddCommMonoid.toAddMonoid.{u2} A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u2} A _inst_3))))) (MulActionWithZero.toSMulWithZero.{u1, u2} R A (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R _inst_2)) (AddZeroClass.toHasZero.{u2} A (AddMonoid.toAddZeroClass.{u2} A (AddCommMonoid.toAddMonoid.{u2} A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u2} A _inst_3))))) (Module.toMulActionWithZero.{u1, u2} R A (CommSemiring.toSemiring.{u1} R _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u2} A _inst_3)) _inst_4)))) (Mul.toSMul.{u2} A (Distrib.toHasMul.{u2} A (NonUnitalNonAssocSemiring.toDistrib.{u2} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u2} A _inst_3))))] [_inst_6 : IsScalarTower.{u1, u2, u2} R A A (SMulZeroClass.toHasSmul.{u1, u2} R A (AddZeroClass.toHasZero.{u2} A (AddMonoid.toAddZeroClass.{u2} A (AddCommMonoid.toAddMonoid.{u2} A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u2} A _inst_3))))) (SMulWithZero.toSmulZeroClass.{u1, u2} R A (MulZeroClass.toHasZero.{u1} R (MulZeroOneClass.toMulZeroClass.{u1} R (MonoidWithZero.toMulZeroOneClass.{u1} R (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R _inst_2))))) (AddZeroClass.toHasZero.{u2} A (AddMonoid.toAddZeroClass.{u2} A (AddCommMonoid.toAddMonoid.{u2} A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u2} A _inst_3))))) (MulActionWithZero.toSMulWithZero.{u1, u2} R A (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R _inst_2)) (AddZeroClass.toHasZero.{u2} A (AddMonoid.toAddZeroClass.{u2} A (AddCommMonoid.toAddMonoid.{u2} A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u2} A _inst_3))))) (Module.toMulActionWithZero.{u1, u2} R A (CommSemiring.toSemiring.{u1} R _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u2} A _inst_3)) _inst_4)))) (Mul.toSMul.{u2} A (Distrib.toHasMul.{u2} A (NonUnitalNonAssocSemiring.toDistrib.{u2} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u2} A _inst_3)))) (SMulZeroClass.toHasSmul.{u1, u2} R A (AddZeroClass.toHasZero.{u2} A (AddMonoid.toAddZeroClass.{u2} A (AddCommMonoid.toAddMonoid.{u2} A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u2} A _inst_3))))) (SMulWithZero.toSmulZeroClass.{u1, u2} R A (MulZeroClass.toHasZero.{u1} R (MulZeroOneClass.toMulZeroClass.{u1} R (MonoidWithZero.toMulZeroOneClass.{u1} R (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R _inst_2))))) (AddZeroClass.toHasZero.{u2} A (AddMonoid.toAddZeroClass.{u2} A (AddCommMonoid.toAddMonoid.{u2} A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u2} A _inst_3))))) (MulActionWithZero.toSMulWithZero.{u1, u2} R A (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R _inst_2)) (AddZeroClass.toHasZero.{u2} A (AddMonoid.toAddZeroClass.{u2} A (AddCommMonoid.toAddMonoid.{u2} A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u2} A _inst_3))))) (Module.toMulActionWithZero.{u1, u2} R A (CommSemiring.toSemiring.{u1} R _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u2} A _inst_3)) _inst_4))))] {C : Type.{u3}} [_inst_12 : Ring.{u3} C] [_inst_13 : Algebra.{u1, u3} R C _inst_2 (Ring.toSemiring.{u3} C _inst_12)] {φ : AlgHom.{u1, max u1 u2, u3} R (Unitization.{u1, u2} R A) C _inst_2 (Unitization.semiring.{u1, u2} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5) (Ring.toSemiring.{u3} C _inst_12) (Unitization.algebra.{u1, u1, u2} R R A _inst_2 _inst_2 _inst_3 _inst_4 _inst_6 _inst_5 (Algebra.id.{u1} R _inst_2) (Module.toDistribMulAction.{u1, u2} R A (CommSemiring.toSemiring.{u1} R _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u2} A _inst_3)) _inst_4) (IsScalarTower.left.{u1, u2} R A (MonoidWithZero.toMonoid.{u1} R (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R _inst_2))) (MulActionWithZero.toMulAction.{u1, u2} R A (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R _inst_2)) (AddZeroClass.toHasZero.{u2} A (AddMonoid.toAddZeroClass.{u2} A (AddCommMonoid.toAddMonoid.{u2} A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u2} A _inst_3))))) (Module.toMulActionWithZero.{u1, u2} R A (CommSemiring.toSemiring.{u1} R _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u2} A _inst_3)) _inst_4)))) _inst_13} {ψ : AlgHom.{u1, max u1 u2, u3} R (Unitization.{u1, u2} R A) C _inst_2 (Unitization.semiring.{u1, u2} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5) (Ring.toSemiring.{u3} C _inst_12) (Unitization.algebra.{u1, u1, u2} R R A _inst_2 _inst_2 _inst_3 _inst_4 _inst_6 _inst_5 (Algebra.id.{u1} R _inst_2) (Module.toDistribMulAction.{u1, u2} R A (CommSemiring.toSemiring.{u1} R _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u2} A _inst_3)) _inst_4) (IsScalarTower.left.{u1, u2} R A (MonoidWithZero.toMonoid.{u1} R (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R _inst_2))) (MulActionWithZero.toMulAction.{u1, u2} R A (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R _inst_2)) (AddZeroClass.toHasZero.{u2} A (AddMonoid.toAddZeroClass.{u2} A (AddCommMonoid.toAddMonoid.{u2} A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u2} A _inst_3))))) (Module.toMulActionWithZero.{u1, u2} R A (CommSemiring.toSemiring.{u1} R _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u2} A _inst_3)) _inst_4)))) _inst_13}, (Eq.{max (succ u2) (succ u3)} (NonUnitalAlgHom.{u1, u2, u3} R A C (MonoidWithZero.toMonoid.{u1} R (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R _inst_2))) (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u2} A _inst_3) (Module.toDistribMulAction.{u1, u2} R A (CommSemiring.toSemiring.{u1} R _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u2} A _inst_3)) _inst_4) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} C (Semiring.toNonAssocSemiring.{u3} C (Ring.toSemiring.{u3} C _inst_12))) (Module.toDistribMulAction.{u1, u3} R C (CommSemiring.toSemiring.{u1} R _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} C (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} C (Semiring.toNonAssocSemiring.{u3} C (Ring.toSemiring.{u3} C _inst_12)))) (Algebra.toModule.{u1, u3} R C _inst_2 (Ring.toSemiring.{u3} C _inst_12) _inst_13))) (NonUnitalAlgHom.comp.{u1, u2, max u1 u2, u3} R A (Unitization.{u1, u2} R A) C (MonoidWithZero.toMonoid.{u1} R (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R _inst_2))) (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u2} A _inst_3) (Module.toDistribMulAction.{u1, u2} R A (CommSemiring.toSemiring.{u1} R _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u2} A _inst_3)) _inst_4) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{max u1 u2} (Unitization.{u1, u2} R A) (Semiring.toNonAssocSemiring.{max u1 u2} (Unitization.{u1, u2} R A) (Unitization.semiring.{u1, u2} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5))) (Module.toDistribMulAction.{u1, max u1 u2} R (Unitization.{u1, u2} R A) (CommSemiring.toSemiring.{u1} R _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{max u1 u2} (Unitization.{u1, u2} R A) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{max u1 u2} (Unitization.{u1, u2} R A) (Semiring.toNonAssocSemiring.{max u1 u2} (Unitization.{u1, u2} R A) (Unitization.semiring.{u1, u2} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5)))) (Algebra.toModule.{u1, max u1 u2} R (Unitization.{u1, u2} R A) _inst_2 (Unitization.semiring.{u1, u2} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5) (Unitization.algebra.{u1, u1, u2} R R A _inst_2 _inst_2 _inst_3 _inst_4 _inst_6 _inst_5 (Algebra.id.{u1} R _inst_2) (Module.toDistribMulAction.{u1, u2} R A (CommSemiring.toSemiring.{u1} R _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u2} A _inst_3)) _inst_4) (IsScalarTower.left.{u1, u2} R A (MonoidWithZero.toMonoid.{u1} R (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R _inst_2))) (MulActionWithZero.toMulAction.{u1, u2} R A (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R _inst_2)) (AddZeroClass.toHasZero.{u2} A (AddMonoid.toAddZeroClass.{u2} A (AddCommMonoid.toAddMonoid.{u2} A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u2} A _inst_3))))) (Module.toMulActionWithZero.{u1, u2} R A (CommSemiring.toSemiring.{u1} R _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u2} A _inst_3)) _inst_4)))))) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} C (Semiring.toNonAssocSemiring.{u3} C (Ring.toSemiring.{u3} C _inst_12))) (Module.toDistribMulAction.{u1, u3} R C (CommSemiring.toSemiring.{u1} R _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} C (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} C (Semiring.toNonAssocSemiring.{u3} C (Ring.toSemiring.{u3} C _inst_12)))) (Algebra.toModule.{u1, u3} R C _inst_2 (Ring.toSemiring.{u3} C _inst_12) _inst_13)) (AlgHom.toNonUnitalAlgHom.{u1, max u1 u2, u3} R (Unitization.{u1, u2} R A) C _inst_2 (Unitization.semiring.{u1, u2} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5) (Ring.toSemiring.{u3} C _inst_12) (Unitization.algebra.{u1, u1, u2} R R A _inst_2 _inst_2 _inst_3 _inst_4 _inst_6 _inst_5 (Algebra.id.{u1} R _inst_2) (Module.toDistribMulAction.{u1, u2} R A (CommSemiring.toSemiring.{u1} R _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u2} A _inst_3)) _inst_4) (IsScalarTower.left.{u1, u2} R A (MonoidWithZero.toMonoid.{u1} R (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R _inst_2))) (MulActionWithZero.toMulAction.{u1, u2} R A (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R _inst_2)) (AddZeroClass.toHasZero.{u2} A (AddMonoid.toAddZeroClass.{u2} A (AddCommMonoid.toAddMonoid.{u2} A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u2} A _inst_3))))) (Module.toMulActionWithZero.{u1, u2} R A (CommSemiring.toSemiring.{u1} R _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u2} A _inst_3)) _inst_4)))) _inst_13 φ) (Unitization.inrNonUnitalAlgHom.{u1, u2} R A _inst_2 _inst_3 _inst_4)) (NonUnitalAlgHom.comp.{u1, u2, max u1 u2, u3} R A (Unitization.{u1, u2} R A) C (MonoidWithZero.toMonoid.{u1} R (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R _inst_2))) (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u2} A _inst_3) (Module.toDistribMulAction.{u1, u2} R A (CommSemiring.toSemiring.{u1} R _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u2} A _inst_3)) _inst_4) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{max u1 u2} (Unitization.{u1, u2} R A) (Semiring.toNonAssocSemiring.{max u1 u2} (Unitization.{u1, u2} R A) (Unitization.semiring.{u1, u2} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5))) (Module.toDistribMulAction.{u1, max u1 u2} R (Unitization.{u1, u2} R A) (CommSemiring.toSemiring.{u1} R _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{max u1 u2} (Unitization.{u1, u2} R A) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{max u1 u2} (Unitization.{u1, u2} R A) (Semiring.toNonAssocSemiring.{max u1 u2} (Unitization.{u1, u2} R A) (Unitization.semiring.{u1, u2} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5)))) (Algebra.toModule.{u1, max u1 u2} R (Unitization.{u1, u2} R A) _inst_2 (Unitization.semiring.{u1, u2} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5) (Unitization.algebra.{u1, u1, u2} R R A _inst_2 _inst_2 _inst_3 _inst_4 _inst_6 _inst_5 (Algebra.id.{u1} R _inst_2) (Module.toDistribMulAction.{u1, u2} R A (CommSemiring.toSemiring.{u1} R _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u2} A _inst_3)) _inst_4) (IsScalarTower.left.{u1, u2} R A (MonoidWithZero.toMonoid.{u1} R (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R _inst_2))) (MulActionWithZero.toMulAction.{u1, u2} R A (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R _inst_2)) (AddZeroClass.toHasZero.{u2} A (AddMonoid.toAddZeroClass.{u2} A (AddCommMonoid.toAddMonoid.{u2} A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u2} A _inst_3))))) (Module.toMulActionWithZero.{u1, u2} R A (CommSemiring.toSemiring.{u1} R _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u2} A _inst_3)) _inst_4)))))) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} C (Semiring.toNonAssocSemiring.{u3} C (Ring.toSemiring.{u3} C _inst_12))) (Module.toDistribMulAction.{u1, u3} R C (CommSemiring.toSemiring.{u1} R _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} C (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} C (Semiring.toNonAssocSemiring.{u3} C (Ring.toSemiring.{u3} C _inst_12)))) (Algebra.toModule.{u1, u3} R C _inst_2 (Ring.toSemiring.{u3} C _inst_12) _inst_13)) (AlgHom.toNonUnitalAlgHom.{u1, max u1 u2, u3} R (Unitization.{u1, u2} R A) C _inst_2 (Unitization.semiring.{u1, u2} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5) (Ring.toSemiring.{u3} C _inst_12) (Unitization.algebra.{u1, u1, u2} R R A _inst_2 _inst_2 _inst_3 _inst_4 _inst_6 _inst_5 (Algebra.id.{u1} R _inst_2) (Module.toDistribMulAction.{u1, u2} R A (CommSemiring.toSemiring.{u1} R _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u2} A _inst_3)) _inst_4) (IsScalarTower.left.{u1, u2} R A (MonoidWithZero.toMonoid.{u1} R (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R _inst_2))) (MulActionWithZero.toMulAction.{u1, u2} R A (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R _inst_2)) (AddZeroClass.toHasZero.{u2} A (AddMonoid.toAddZeroClass.{u2} A (AddCommMonoid.toAddMonoid.{u2} A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u2} A _inst_3))))) (Module.toMulActionWithZero.{u1, u2} R A (CommSemiring.toSemiring.{u1} R _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u2} A _inst_3)) _inst_4)))) _inst_13 ψ) (Unitization.inrNonUnitalAlgHom.{u1, u2} R A _inst_2 _inst_3 _inst_4))) -> (Eq.{max (succ (max u1 u2)) (succ u3)} (AlgHom.{u1, max u1 u2, u3} R (Unitization.{u1, u2} R A) C _inst_2 (Unitization.semiring.{u1, u2} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5) (Ring.toSemiring.{u3} C _inst_12) (Unitization.algebra.{u1, u1, u2} R R A _inst_2 _inst_2 _inst_3 _inst_4 _inst_6 _inst_5 (Algebra.id.{u1} R _inst_2) (Module.toDistribMulAction.{u1, u2} R A (CommSemiring.toSemiring.{u1} R _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u2} A _inst_3)) _inst_4) (IsScalarTower.left.{u1, u2} R A (MonoidWithZero.toMonoid.{u1} R (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R _inst_2))) (MulActionWithZero.toMulAction.{u1, u2} R A (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R _inst_2)) (AddZeroClass.toHasZero.{u2} A (AddMonoid.toAddZeroClass.{u2} A (AddCommMonoid.toAddMonoid.{u2} A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u2} A _inst_3))))) (Module.toMulActionWithZero.{u1, u2} R A (CommSemiring.toSemiring.{u1} R _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u2} A _inst_3)) _inst_4)))) _inst_13) φ ψ)
-but is expected to have type
-  forall {R : Type.{u3}} {A : Type.{u2}} [_inst_2 : CommSemiring.{u3} R] [_inst_3 : NonUnitalSemiring.{u2} A] [_inst_4 : Module.{u3, u2} R A (CommSemiring.toSemiring.{u3} R _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u2} A _inst_3))] [_inst_5 : SMulCommClass.{u3, u2, u2} R A A (SMulZeroClass.toSMul.{u3, u2} R A (SemigroupWithZero.toZero.{u2} A (NonUnitalSemiring.toSemigroupWithZero.{u2} A _inst_3)) (SMulWithZero.toSMulZeroClass.{u3, u2} R A (CommMonoidWithZero.toZero.{u3} R (CommSemiring.toCommMonoidWithZero.{u3} R _inst_2)) (SemigroupWithZero.toZero.{u2} A (NonUnitalSemiring.toSemigroupWithZero.{u2} A _inst_3)) (MulActionWithZero.toSMulWithZero.{u3, u2} R A (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R _inst_2)) (SemigroupWithZero.toZero.{u2} A (NonUnitalSemiring.toSemigroupWithZero.{u2} A _inst_3)) (Module.toMulActionWithZero.{u3, u2} R A (CommSemiring.toSemiring.{u3} R _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u2} A _inst_3)) _inst_4)))) (SMulZeroClass.toSMul.{u2, u2} A A (SemigroupWithZero.toZero.{u2} A (NonUnitalSemiring.toSemigroupWithZero.{u2} A _inst_3)) (SMulWithZero.toSMulZeroClass.{u2, u2} A A (SemigroupWithZero.toZero.{u2} A (NonUnitalSemiring.toSemigroupWithZero.{u2} A _inst_3)) (SemigroupWithZero.toZero.{u2} A (NonUnitalSemiring.toSemigroupWithZero.{u2} A _inst_3)) (MulZeroClass.toSMulWithZero.{u2} A (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u2} A _inst_3)))))] [_inst_6 : IsScalarTower.{u3, u2, u2} R A A (SMulZeroClass.toSMul.{u3, u2} R A (SemigroupWithZero.toZero.{u2} A (NonUnitalSemiring.toSemigroupWithZero.{u2} A _inst_3)) (SMulWithZero.toSMulZeroClass.{u3, u2} R A (CommMonoidWithZero.toZero.{u3} R (CommSemiring.toCommMonoidWithZero.{u3} R _inst_2)) (SemigroupWithZero.toZero.{u2} A (NonUnitalSemiring.toSemigroupWithZero.{u2} A _inst_3)) (MulActionWithZero.toSMulWithZero.{u3, u2} R A (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R _inst_2)) (SemigroupWithZero.toZero.{u2} A (NonUnitalSemiring.toSemigroupWithZero.{u2} A _inst_3)) (Module.toMulActionWithZero.{u3, u2} R A (CommSemiring.toSemiring.{u3} R _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u2} A _inst_3)) _inst_4)))) (SMulZeroClass.toSMul.{u2, u2} A A (SemigroupWithZero.toZero.{u2} A (NonUnitalSemiring.toSemigroupWithZero.{u2} A _inst_3)) (SMulWithZero.toSMulZeroClass.{u2, u2} A A (SemigroupWithZero.toZero.{u2} A (NonUnitalSemiring.toSemigroupWithZero.{u2} A _inst_3)) (SemigroupWithZero.toZero.{u2} A (NonUnitalSemiring.toSemigroupWithZero.{u2} A _inst_3)) (MulZeroClass.toSMulWithZero.{u2} A (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u2} A _inst_3))))) (SMulZeroClass.toSMul.{u3, u2} R A (SemigroupWithZero.toZero.{u2} A (NonUnitalSemiring.toSemigroupWithZero.{u2} A _inst_3)) (SMulWithZero.toSMulZeroClass.{u3, u2} R A (CommMonoidWithZero.toZero.{u3} R (CommSemiring.toCommMonoidWithZero.{u3} R _inst_2)) (SemigroupWithZero.toZero.{u2} A (NonUnitalSemiring.toSemigroupWithZero.{u2} A _inst_3)) (MulActionWithZero.toSMulWithZero.{u3, u2} R A (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R _inst_2)) (SemigroupWithZero.toZero.{u2} A (NonUnitalSemiring.toSemigroupWithZero.{u2} A _inst_3)) (Module.toMulActionWithZero.{u3, u2} R A (CommSemiring.toSemiring.{u3} R _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u2} A _inst_3)) _inst_4))))] {C : Type.{u1}} [_inst_12 : Semiring.{u1} C] [_inst_13 : Algebra.{u3, u1} R C _inst_2 _inst_12] {φ : AlgHom.{u3, max u2 u3, u1} R (Unitization.{u3, u2} R A) C _inst_2 (Unitization.semiring.{u3, u2} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5) _inst_12 (Unitization.algebra.{u3, u3, u2} R R A _inst_2 _inst_2 _inst_3 _inst_4 _inst_6 _inst_5 (Algebra.id.{u3} R _inst_2) (Module.toDistribMulAction.{u3, u2} R A (CommSemiring.toSemiring.{u3} R _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u2} A _inst_3)) _inst_4) (IsScalarTower.left.{u3, u2} R A (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R _inst_2))) (MulActionWithZero.toMulAction.{u3, u2} R A (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R _inst_2)) (SemigroupWithZero.toZero.{u2} A (NonUnitalSemiring.toSemigroupWithZero.{u2} A _inst_3)) (Module.toMulActionWithZero.{u3, u2} R A (CommSemiring.toSemiring.{u3} R _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u2} A _inst_3)) _inst_4)))) _inst_13} {ψ : AlgHom.{u3, max u2 u3, u1} R (Unitization.{u3, u2} R A) C _inst_2 (Unitization.semiring.{u3, u2} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5) _inst_12 (Unitization.algebra.{u3, u3, u2} R R A _inst_2 _inst_2 _inst_3 _inst_4 _inst_6 _inst_5 (Algebra.id.{u3} R _inst_2) (Module.toDistribMulAction.{u3, u2} R A (CommSemiring.toSemiring.{u3} R _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u2} A _inst_3)) _inst_4) (IsScalarTower.left.{u3, u2} R A (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R _inst_2))) (MulActionWithZero.toMulAction.{u3, u2} R A (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R _inst_2)) (SemigroupWithZero.toZero.{u2} A (NonUnitalSemiring.toSemigroupWithZero.{u2} A _inst_3)) (Module.toMulActionWithZero.{u3, u2} R A (CommSemiring.toSemiring.{u3} R _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u2} A _inst_3)) _inst_4)))) _inst_13}, (Eq.{max (succ u2) (succ u1)} (NonUnitalAlgHom.{u3, u2, u1} R A C (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R _inst_2))) (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u2} A _inst_3) (Module.toDistribMulAction.{u3, u2} R A (CommSemiring.toSemiring.{u3} R _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u2} A _inst_3)) _inst_4) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} C (Semiring.toNonAssocSemiring.{u1} C _inst_12)) (Module.toDistribMulAction.{u3, u1} R C (CommSemiring.toSemiring.{u3} R _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} C (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} C (Semiring.toNonAssocSemiring.{u1} C _inst_12))) (Algebra.toModule.{u3, u1} R C _inst_2 _inst_12 _inst_13))) (NonUnitalAlgHom.comp.{u3, u2, max u3 u2, u1} R A (Unitization.{u3, u2} R A) C (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R _inst_2))) (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u2} A _inst_3) (Module.toDistribMulAction.{u3, u2} R A (CommSemiring.toSemiring.{u3} R _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u2} A _inst_3)) _inst_4) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{max u3 u2} (Unitization.{u3, u2} R A) (Semiring.toNonAssocSemiring.{max u3 u2} (Unitization.{u3, u2} R A) (Unitization.semiring.{u3, u2} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5))) (Module.toDistribMulAction.{u3, max u3 u2} R (Unitization.{u3, u2} R A) (CommSemiring.toSemiring.{u3} R _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{max u3 u2} (Unitization.{u3, u2} R A) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{max u3 u2} (Unitization.{u3, u2} R A) (Semiring.toNonAssocSemiring.{max u3 u2} (Unitization.{u3, u2} R A) (Unitization.semiring.{u3, u2} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5)))) (Algebra.toModule.{u3, max u3 u2} R (Unitization.{u3, u2} R A) _inst_2 (Unitization.semiring.{u3, u2} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5) (Unitization.algebra.{u3, u3, u2} R R A _inst_2 _inst_2 _inst_3 _inst_4 _inst_6 _inst_5 (Algebra.id.{u3} R _inst_2) (Module.toDistribMulAction.{u3, u2} R A (CommSemiring.toSemiring.{u3} R _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u2} A _inst_3)) _inst_4) (IsScalarTower.left.{u3, u2} R A (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R _inst_2))) (MulActionWithZero.toMulAction.{u3, u2} R A (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R _inst_2)) (SemigroupWithZero.toZero.{u2} A (NonUnitalSemiring.toSemigroupWithZero.{u2} A _inst_3)) (Module.toMulActionWithZero.{u3, u2} R A (CommSemiring.toSemiring.{u3} R _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u2} A _inst_3)) _inst_4)))))) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} C (Semiring.toNonAssocSemiring.{u1} C _inst_12)) (Module.toDistribMulAction.{u3, u1} R C (CommSemiring.toSemiring.{u3} R _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} C (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} C (Semiring.toNonAssocSemiring.{u1} C _inst_12))) (Algebra.toModule.{u3, u1} R C _inst_2 _inst_12 _inst_13)) (AlgHom.toNonUnitalAlgHom.{u3, max u3 u2, u1} R (Unitization.{u3, u2} R A) C _inst_2 (Unitization.semiring.{u3, u2} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5) _inst_12 (Unitization.algebra.{u3, u3, u2} R R A _inst_2 _inst_2 _inst_3 _inst_4 _inst_6 _inst_5 (Algebra.id.{u3} R _inst_2) (Module.toDistribMulAction.{u3, u2} R A (CommSemiring.toSemiring.{u3} R _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u2} A _inst_3)) _inst_4) (IsScalarTower.left.{u3, u2} R A (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R _inst_2))) (MulActionWithZero.toMulAction.{u3, u2} R A (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R _inst_2)) (SemigroupWithZero.toZero.{u2} A (NonUnitalSemiring.toSemigroupWithZero.{u2} A _inst_3)) (Module.toMulActionWithZero.{u3, u2} R A (CommSemiring.toSemiring.{u3} R _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u2} A _inst_3)) _inst_4)))) _inst_13 φ) (Unitization.inrNonUnitalAlgHom.{u3, u2} R A _inst_2 _inst_3 _inst_4)) (NonUnitalAlgHom.comp.{u3, u2, max u3 u2, u1} R A (Unitization.{u3, u2} R A) C (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R _inst_2))) (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u2} A _inst_3) (Module.toDistribMulAction.{u3, u2} R A (CommSemiring.toSemiring.{u3} R _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u2} A _inst_3)) _inst_4) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{max u3 u2} (Unitization.{u3, u2} R A) (Semiring.toNonAssocSemiring.{max u3 u2} (Unitization.{u3, u2} R A) (Unitization.semiring.{u3, u2} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5))) (Module.toDistribMulAction.{u3, max u3 u2} R (Unitization.{u3, u2} R A) (CommSemiring.toSemiring.{u3} R _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{max u3 u2} (Unitization.{u3, u2} R A) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{max u3 u2} (Unitization.{u3, u2} R A) (Semiring.toNonAssocSemiring.{max u3 u2} (Unitization.{u3, u2} R A) (Unitization.semiring.{u3, u2} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5)))) (Algebra.toModule.{u3, max u3 u2} R (Unitization.{u3, u2} R A) _inst_2 (Unitization.semiring.{u3, u2} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5) (Unitization.algebra.{u3, u3, u2} R R A _inst_2 _inst_2 _inst_3 _inst_4 _inst_6 _inst_5 (Algebra.id.{u3} R _inst_2) (Module.toDistribMulAction.{u3, u2} R A (CommSemiring.toSemiring.{u3} R _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u2} A _inst_3)) _inst_4) (IsScalarTower.left.{u3, u2} R A (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R _inst_2))) (MulActionWithZero.toMulAction.{u3, u2} R A (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R _inst_2)) (SemigroupWithZero.toZero.{u2} A (NonUnitalSemiring.toSemigroupWithZero.{u2} A _inst_3)) (Module.toMulActionWithZero.{u3, u2} R A (CommSemiring.toSemiring.{u3} R _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u2} A _inst_3)) _inst_4)))))) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} C (Semiring.toNonAssocSemiring.{u1} C _inst_12)) (Module.toDistribMulAction.{u3, u1} R C (CommSemiring.toSemiring.{u3} R _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} C (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} C (Semiring.toNonAssocSemiring.{u1} C _inst_12))) (Algebra.toModule.{u3, u1} R C _inst_2 _inst_12 _inst_13)) (AlgHom.toNonUnitalAlgHom.{u3, max u3 u2, u1} R (Unitization.{u3, u2} R A) C _inst_2 (Unitization.semiring.{u3, u2} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5) _inst_12 (Unitization.algebra.{u3, u3, u2} R R A _inst_2 _inst_2 _inst_3 _inst_4 _inst_6 _inst_5 (Algebra.id.{u3} R _inst_2) (Module.toDistribMulAction.{u3, u2} R A (CommSemiring.toSemiring.{u3} R _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u2} A _inst_3)) _inst_4) (IsScalarTower.left.{u3, u2} R A (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R _inst_2))) (MulActionWithZero.toMulAction.{u3, u2} R A (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R _inst_2)) (SemigroupWithZero.toZero.{u2} A (NonUnitalSemiring.toSemigroupWithZero.{u2} A _inst_3)) (Module.toMulActionWithZero.{u3, u2} R A (CommSemiring.toSemiring.{u3} R _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u2} A _inst_3)) _inst_4)))) _inst_13 ψ) (Unitization.inrNonUnitalAlgHom.{u3, u2} R A _inst_2 _inst_3 _inst_4))) -> (Eq.{max (max (succ u3) (succ u2)) (succ u1)} (AlgHom.{u3, max u2 u3, u1} R (Unitization.{u3, u2} R A) C _inst_2 (Unitization.semiring.{u3, u2} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5) _inst_12 (Unitization.algebra.{u3, u3, u2} R R A _inst_2 _inst_2 _inst_3 _inst_4 _inst_6 _inst_5 (Algebra.id.{u3} R _inst_2) (Module.toDistribMulAction.{u3, u2} R A (CommSemiring.toSemiring.{u3} R _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u2} A _inst_3)) _inst_4) (IsScalarTower.left.{u3, u2} R A (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R _inst_2))) (MulActionWithZero.toMulAction.{u3, u2} R A (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R _inst_2)) (SemigroupWithZero.toZero.{u2} A (NonUnitalSemiring.toSemigroupWithZero.{u2} A _inst_3)) (Module.toMulActionWithZero.{u3, u2} R A (CommSemiring.toSemiring.{u3} R _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u2} A _inst_3)) _inst_4)))) _inst_13) φ ψ)
+<too large>
 Case conversion may be inaccurate. Consider using '#align unitization.alg_hom_ext' Unitization.algHom_ext'ₓ'. -/
 /-- See note [partially-applied ext lemmas] -/
 @[ext]
@@ -951,10 +927,7 @@ theorem algHom_ext' {φ ψ : Unitization R A →ₐ[R] C}
 #align unitization.alg_hom_ext' Unitization.algHom_ext'
 
 /- warning: unitization.lift -> Unitization.lift is a dubious translation:
-lean 3 declaration is
-  forall {R : Type.{u1}} {A : Type.{u2}} [_inst_2 : CommSemiring.{u1} R] [_inst_3 : NonUnitalSemiring.{u2} A] [_inst_4 : Module.{u1, u2} R A (CommSemiring.toSemiring.{u1} R _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u2} A _inst_3))] [_inst_5 : SMulCommClass.{u1, u2, u2} R A A (SMulZeroClass.toHasSmul.{u1, u2} R A (AddZeroClass.toHasZero.{u2} A (AddMonoid.toAddZeroClass.{u2} A (AddCommMonoid.toAddMonoid.{u2} A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u2} A _inst_3))))) (SMulWithZero.toSmulZeroClass.{u1, u2} R A (MulZeroClass.toHasZero.{u1} R (MulZeroOneClass.toMulZeroClass.{u1} R (MonoidWithZero.toMulZeroOneClass.{u1} R (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R _inst_2))))) (AddZeroClass.toHasZero.{u2} A (AddMonoid.toAddZeroClass.{u2} A (AddCommMonoid.toAddMonoid.{u2} A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u2} A _inst_3))))) (MulActionWithZero.toSMulWithZero.{u1, u2} R A (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R _inst_2)) (AddZeroClass.toHasZero.{u2} A (AddMonoid.toAddZeroClass.{u2} A (AddCommMonoid.toAddMonoid.{u2} A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u2} A _inst_3))))) (Module.toMulActionWithZero.{u1, u2} R A (CommSemiring.toSemiring.{u1} R _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u2} A _inst_3)) _inst_4)))) (Mul.toSMul.{u2} A (Distrib.toHasMul.{u2} A (NonUnitalNonAssocSemiring.toDistrib.{u2} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u2} A _inst_3))))] [_inst_6 : IsScalarTower.{u1, u2, u2} R A A (SMulZeroClass.toHasSmul.{u1, u2} R A (AddZeroClass.toHasZero.{u2} A (AddMonoid.toAddZeroClass.{u2} A (AddCommMonoid.toAddMonoid.{u2} A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u2} A _inst_3))))) (SMulWithZero.toSmulZeroClass.{u1, u2} R A (MulZeroClass.toHasZero.{u1} R (MulZeroOneClass.toMulZeroClass.{u1} R (MonoidWithZero.toMulZeroOneClass.{u1} R (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R _inst_2))))) (AddZeroClass.toHasZero.{u2} A (AddMonoid.toAddZeroClass.{u2} A (AddCommMonoid.toAddMonoid.{u2} A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u2} A _inst_3))))) (MulActionWithZero.toSMulWithZero.{u1, u2} R A (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R _inst_2)) (AddZeroClass.toHasZero.{u2} A (AddMonoid.toAddZeroClass.{u2} A (AddCommMonoid.toAddMonoid.{u2} A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u2} A _inst_3))))) (Module.toMulActionWithZero.{u1, u2} R A (CommSemiring.toSemiring.{u1} R _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u2} A _inst_3)) _inst_4)))) (Mul.toSMul.{u2} A (Distrib.toHasMul.{u2} A (NonUnitalNonAssocSemiring.toDistrib.{u2} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u2} A _inst_3)))) (SMulZeroClass.toHasSmul.{u1, u2} R A (AddZeroClass.toHasZero.{u2} A (AddMonoid.toAddZeroClass.{u2} A (AddCommMonoid.toAddMonoid.{u2} A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u2} A _inst_3))))) (SMulWithZero.toSmulZeroClass.{u1, u2} R A (MulZeroClass.toHasZero.{u1} R (MulZeroOneClass.toMulZeroClass.{u1} R (MonoidWithZero.toMulZeroOneClass.{u1} R (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R _inst_2))))) (AddZeroClass.toHasZero.{u2} A (AddMonoid.toAddZeroClass.{u2} A (AddCommMonoid.toAddMonoid.{u2} A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u2} A _inst_3))))) (MulActionWithZero.toSMulWithZero.{u1, u2} R A (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R _inst_2)) (AddZeroClass.toHasZero.{u2} A (AddMonoid.toAddZeroClass.{u2} A (AddCommMonoid.toAddMonoid.{u2} A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u2} A _inst_3))))) (Module.toMulActionWithZero.{u1, u2} R A (CommSemiring.toSemiring.{u1} R _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u2} A _inst_3)) _inst_4))))] {C : Type.{u3}} [_inst_12 : Ring.{u3} C] [_inst_13 : Algebra.{u1, u3} R C _inst_2 (Ring.toSemiring.{u3} C _inst_12)], Equiv.{max (succ u2) (succ u3), max (succ (max u1 u2)) (succ u3)} (NonUnitalAlgHom.{u1, u2, u3} R A C (MonoidWithZero.toMonoid.{u1} R (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R _inst_2))) (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u2} A _inst_3) (Module.toDistribMulAction.{u1, u2} R A (CommSemiring.toSemiring.{u1} R _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u2} A _inst_3)) _inst_4) (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u3} C (NonAssocRing.toNonUnitalNonAssocRing.{u3} C (Ring.toNonAssocRing.{u3} C _inst_12))) (Module.toDistribMulAction.{u1, u3} R C (CommSemiring.toSemiring.{u1} R _inst_2) (AddCommGroup.toAddCommMonoid.{u3} C (NonUnitalNonAssocRing.toAddCommGroup.{u3} C (NonAssocRing.toNonUnitalNonAssocRing.{u3} C (Ring.toNonAssocRing.{u3} C _inst_12)))) (Algebra.toModule.{u1, u3} R C _inst_2 (Ring.toSemiring.{u3} C _inst_12) _inst_13))) (AlgHom.{u1, max u1 u2, u3} R (Unitization.{u1, u2} R A) C _inst_2 (Unitization.semiring.{u1, u2} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5) (Ring.toSemiring.{u3} C _inst_12) (Unitization.algebra.{u1, u1, u2} R R A _inst_2 _inst_2 _inst_3 _inst_4 _inst_6 _inst_5 (Algebra.id.{u1} R _inst_2) (Module.toDistribMulAction.{u1, u2} R A (CommSemiring.toSemiring.{u1} R _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u2} A _inst_3)) _inst_4) (Unitization.lift._proof_1.{u1, u2} R A _inst_2 _inst_3 _inst_4)) _inst_13)
-but is expected to have type
-  forall {R : Type.{u1}} {A : Type.{u2}} [_inst_2 : CommSemiring.{u1} R] [_inst_3 : NonUnitalSemiring.{u2} A] [_inst_4 : Module.{u1, u2} R A (CommSemiring.toSemiring.{u1} R _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u2} A _inst_3))] [_inst_5 : SMulCommClass.{u1, u2, u2} R A A (SMulZeroClass.toSMul.{u1, u2} R A (SemigroupWithZero.toZero.{u2} A (NonUnitalSemiring.toSemigroupWithZero.{u2} A _inst_3)) (SMulWithZero.toSMulZeroClass.{u1, u2} R A (CommMonoidWithZero.toZero.{u1} R (CommSemiring.toCommMonoidWithZero.{u1} R _inst_2)) (SemigroupWithZero.toZero.{u2} A (NonUnitalSemiring.toSemigroupWithZero.{u2} A _inst_3)) (MulActionWithZero.toSMulWithZero.{u1, u2} R A (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R _inst_2)) (SemigroupWithZero.toZero.{u2} A (NonUnitalSemiring.toSemigroupWithZero.{u2} A _inst_3)) (Module.toMulActionWithZero.{u1, u2} R A (CommSemiring.toSemiring.{u1} R _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u2} A _inst_3)) _inst_4)))) (SMulZeroClass.toSMul.{u2, u2} A A (SemigroupWithZero.toZero.{u2} A (NonUnitalSemiring.toSemigroupWithZero.{u2} A _inst_3)) (SMulWithZero.toSMulZeroClass.{u2, u2} A A (SemigroupWithZero.toZero.{u2} A (NonUnitalSemiring.toSemigroupWithZero.{u2} A _inst_3)) (SemigroupWithZero.toZero.{u2} A (NonUnitalSemiring.toSemigroupWithZero.{u2} A _inst_3)) (MulZeroClass.toSMulWithZero.{u2} A (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u2} A _inst_3)))))] [_inst_6 : IsScalarTower.{u1, u2, u2} R A A (SMulZeroClass.toSMul.{u1, u2} R A (SemigroupWithZero.toZero.{u2} A (NonUnitalSemiring.toSemigroupWithZero.{u2} A _inst_3)) (SMulWithZero.toSMulZeroClass.{u1, u2} R A (CommMonoidWithZero.toZero.{u1} R (CommSemiring.toCommMonoidWithZero.{u1} R _inst_2)) (SemigroupWithZero.toZero.{u2} A (NonUnitalSemiring.toSemigroupWithZero.{u2} A _inst_3)) (MulActionWithZero.toSMulWithZero.{u1, u2} R A (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R _inst_2)) (SemigroupWithZero.toZero.{u2} A (NonUnitalSemiring.toSemigroupWithZero.{u2} A _inst_3)) (Module.toMulActionWithZero.{u1, u2} R A (CommSemiring.toSemiring.{u1} R _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u2} A _inst_3)) _inst_4)))) (SMulZeroClass.toSMul.{u2, u2} A A (SemigroupWithZero.toZero.{u2} A (NonUnitalSemiring.toSemigroupWithZero.{u2} A _inst_3)) (SMulWithZero.toSMulZeroClass.{u2, u2} A A (SemigroupWithZero.toZero.{u2} A (NonUnitalSemiring.toSemigroupWithZero.{u2} A _inst_3)) (SemigroupWithZero.toZero.{u2} A (NonUnitalSemiring.toSemigroupWithZero.{u2} A _inst_3)) (MulZeroClass.toSMulWithZero.{u2} A (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u2} A _inst_3))))) (SMulZeroClass.toSMul.{u1, u2} R A (SemigroupWithZero.toZero.{u2} A (NonUnitalSemiring.toSemigroupWithZero.{u2} A _inst_3)) (SMulWithZero.toSMulZeroClass.{u1, u2} R A (CommMonoidWithZero.toZero.{u1} R (CommSemiring.toCommMonoidWithZero.{u1} R _inst_2)) (SemigroupWithZero.toZero.{u2} A (NonUnitalSemiring.toSemigroupWithZero.{u2} A _inst_3)) (MulActionWithZero.toSMulWithZero.{u1, u2} R A (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R _inst_2)) (SemigroupWithZero.toZero.{u2} A (NonUnitalSemiring.toSemigroupWithZero.{u2} A _inst_3)) (Module.toMulActionWithZero.{u1, u2} R A (CommSemiring.toSemiring.{u1} R _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u2} A _inst_3)) _inst_4))))] {C : Type.{u3}} [_inst_12 : Semiring.{u3} C] [_inst_13 : Algebra.{u1, u3} R C _inst_2 _inst_12], Equiv.{max (succ u3) (succ u2), max (succ u3) (succ (max u2 u1))} (NonUnitalAlgHom.{u1, u2, u3} R A C (MonoidWithZero.toMonoid.{u1} R (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R _inst_2))) (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u2} A _inst_3) (Module.toDistribMulAction.{u1, u2} R A (CommSemiring.toSemiring.{u1} R _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u2} A _inst_3)) _inst_4) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} C (Semiring.toNonAssocSemiring.{u3} C _inst_12)) (Module.toDistribMulAction.{u1, u3} R C (CommSemiring.toSemiring.{u1} R _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} C (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} C (Semiring.toNonAssocSemiring.{u3} C _inst_12))) (Algebra.toModule.{u1, u3} R C _inst_2 _inst_12 _inst_13))) (AlgHom.{u1, max u2 u1, u3} R (Unitization.{u1, u2} R A) C _inst_2 (Unitization.semiring.{u1, u2} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5) _inst_12 (Unitization.algebra.{u1, u1, u2} R R A _inst_2 _inst_2 _inst_3 _inst_4 _inst_6 _inst_5 (Algebra.id.{u1} R _inst_2) (Module.toDistribMulAction.{u1, u2} R A (CommSemiring.toSemiring.{u1} R _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u2} A _inst_3)) _inst_4) (IsScalarTower.left.{u1, u2} R A (MonoidWithZero.toMonoid.{u1} R (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R _inst_2))) (MulActionWithZero.toMulAction.{u1, u2} R A (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R _inst_2)) (SemigroupWithZero.toZero.{u2} A (NonUnitalSemiring.toSemigroupWithZero.{u2} A _inst_3)) (Module.toMulActionWithZero.{u1, u2} R A (CommSemiring.toSemiring.{u1} R _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u2} A _inst_3)) _inst_4)))) _inst_13)
+<too large>
 Case conversion may be inaccurate. Consider using '#align unitization.lift Unitization.liftₓ'. -/
 /-- Non-unital algebra homomorphisms from `A` into a unital `R`-algebra `C` lift uniquely to
 `unitization R A →ₐ[R] C`. This is the universal property of the unitization. -/
@@ -994,10 +967,7 @@ def lift : (A →ₙₐ[R] C) ≃ (Unitization R A →ₐ[R] C)
 #align unitization.lift Unitization.lift
 
 /- warning: unitization.lift_symm_apply -> Unitization.lift_symm_apply is a dubious translation:
-lean 3 declaration is
-  forall {R : Type.{u1}} {A : Type.{u2}} [_inst_2 : CommSemiring.{u1} R] [_inst_3 : NonUnitalSemiring.{u2} A] [_inst_4 : Module.{u1, u2} R A (CommSemiring.toSemiring.{u1} R _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u2} A _inst_3))] [_inst_5 : SMulCommClass.{u1, u2, u2} R A A (SMulZeroClass.toHasSmul.{u1, u2} R A (AddZeroClass.toHasZero.{u2} A (AddMonoid.toAddZeroClass.{u2} A (AddCommMonoid.toAddMonoid.{u2} A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u2} A _inst_3))))) (SMulWithZero.toSmulZeroClass.{u1, u2} R A (MulZeroClass.toHasZero.{u1} R (MulZeroOneClass.toMulZeroClass.{u1} R (MonoidWithZero.toMulZeroOneClass.{u1} R (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R _inst_2))))) (AddZeroClass.toHasZero.{u2} A (AddMonoid.toAddZeroClass.{u2} A (AddCommMonoid.toAddMonoid.{u2} A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u2} A _inst_3))))) (MulActionWithZero.toSMulWithZero.{u1, u2} R A (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R _inst_2)) (AddZeroClass.toHasZero.{u2} A (AddMonoid.toAddZeroClass.{u2} A (AddCommMonoid.toAddMonoid.{u2} A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u2} A _inst_3))))) (Module.toMulActionWithZero.{u1, u2} R A (CommSemiring.toSemiring.{u1} R _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u2} A _inst_3)) _inst_4)))) (Mul.toSMul.{u2} A (Distrib.toHasMul.{u2} A (NonUnitalNonAssocSemiring.toDistrib.{u2} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u2} A _inst_3))))] [_inst_6 : IsScalarTower.{u1, u2, u2} R A A (SMulZeroClass.toHasSmul.{u1, u2} R A (AddZeroClass.toHasZero.{u2} A (AddMonoid.toAddZeroClass.{u2} A (AddCommMonoid.toAddMonoid.{u2} A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u2} A _inst_3))))) (SMulWithZero.toSmulZeroClass.{u1, u2} R A (MulZeroClass.toHasZero.{u1} R (MulZeroOneClass.toMulZeroClass.{u1} R (MonoidWithZero.toMulZeroOneClass.{u1} R (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R _inst_2))))) (AddZeroClass.toHasZero.{u2} A (AddMonoid.toAddZeroClass.{u2} A (AddCommMonoid.toAddMonoid.{u2} A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u2} A _inst_3))))) (MulActionWithZero.toSMulWithZero.{u1, u2} R A (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R _inst_2)) (AddZeroClass.toHasZero.{u2} A (AddMonoid.toAddZeroClass.{u2} A (AddCommMonoid.toAddMonoid.{u2} A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u2} A _inst_3))))) (Module.toMulActionWithZero.{u1, u2} R A (CommSemiring.toSemiring.{u1} R _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u2} A _inst_3)) _inst_4)))) (Mul.toSMul.{u2} A (Distrib.toHasMul.{u2} A (NonUnitalNonAssocSemiring.toDistrib.{u2} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u2} A _inst_3)))) (SMulZeroClass.toHasSmul.{u1, u2} R A (AddZeroClass.toHasZero.{u2} A (AddMonoid.toAddZeroClass.{u2} A (AddCommMonoid.toAddMonoid.{u2} A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u2} A _inst_3))))) (SMulWithZero.toSmulZeroClass.{u1, u2} R A (MulZeroClass.toHasZero.{u1} R (MulZeroOneClass.toMulZeroClass.{u1} R (MonoidWithZero.toMulZeroOneClass.{u1} R (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R _inst_2))))) (AddZeroClass.toHasZero.{u2} A (AddMonoid.toAddZeroClass.{u2} A (AddCommMonoid.toAddMonoid.{u2} A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u2} A _inst_3))))) (MulActionWithZero.toSMulWithZero.{u1, u2} R A (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R _inst_2)) (AddZeroClass.toHasZero.{u2} A (AddMonoid.toAddZeroClass.{u2} A (AddCommMonoid.toAddMonoid.{u2} A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u2} A _inst_3))))) (Module.toMulActionWithZero.{u1, u2} R A (CommSemiring.toSemiring.{u1} R _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u2} A _inst_3)) _inst_4))))] {C : Type.{u3}} [_inst_12 : Ring.{u3} C] [_inst_13 : Algebra.{u1, u3} R C _inst_2 (Ring.toSemiring.{u3} C _inst_12)] (φ : AlgHom.{u1, max u1 u2, u3} R (Unitization.{u1, u2} R A) C _inst_2 (Unitization.semiring.{u1, u2} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5) (Ring.toSemiring.{u3} C _inst_12) (Unitization.algebra.{u1, u1, u2} R R A _inst_2 _inst_2 _inst_3 _inst_4 _inst_6 _inst_5 (Algebra.id.{u1} R _inst_2) (Module.toDistribMulAction.{u1, u2} R A (CommSemiring.toSemiring.{u1} R _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u2} A _inst_3)) _inst_4) (IsScalarTower.left.{u1, u2} R A (MonoidWithZero.toMonoid.{u1} R (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R _inst_2))) (MulActionWithZero.toMulAction.{u1, u2} R A (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R _inst_2)) (AddZeroClass.toHasZero.{u2} A (AddMonoid.toAddZeroClass.{u2} A (AddCommMonoid.toAddMonoid.{u2} A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u2} A _inst_3))))) (Module.toMulActionWithZero.{u1, u2} R A (CommSemiring.toSemiring.{u1} R _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u2} A _inst_3)) _inst_4)))) _inst_13) (a : A), Eq.{succ u3} C (coeFn.{max (succ u2) (succ u3), max (succ u2) (succ u3)} (NonUnitalAlgHom.{u1, u2, u3} R A C (MonoidWithZero.toMonoid.{u1} R (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R _inst_2))) (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u2} A _inst_3) (Module.toDistribMulAction.{u1, u2} R A (CommSemiring.toSemiring.{u1} R _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u2} A _inst_3)) _inst_4) (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u3} C (NonAssocRing.toNonUnitalNonAssocRing.{u3} C (Ring.toNonAssocRing.{u3} C _inst_12))) (Module.toDistribMulAction.{u1, u3} R C (CommSemiring.toSemiring.{u1} R _inst_2) (AddCommGroup.toAddCommMonoid.{u3} C (NonUnitalNonAssocRing.toAddCommGroup.{u3} C (NonAssocRing.toNonUnitalNonAssocRing.{u3} C (Ring.toNonAssocRing.{u3} C _inst_12)))) (Algebra.toModule.{u1, u3} R C _inst_2 (Ring.toSemiring.{u3} C _inst_12) _inst_13))) (fun (_x : NonUnitalAlgHom.{u1, u2, u3} R A C (MonoidWithZero.toMonoid.{u1} R (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R _inst_2))) (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u2} A _inst_3) (Module.toDistribMulAction.{u1, u2} R A (CommSemiring.toSemiring.{u1} R _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u2} A _inst_3)) _inst_4) (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u3} C (NonAssocRing.toNonUnitalNonAssocRing.{u3} C (Ring.toNonAssocRing.{u3} C _inst_12))) (Module.toDistribMulAction.{u1, u3} R C (CommSemiring.toSemiring.{u1} R _inst_2) (AddCommGroup.toAddCommMonoid.{u3} C (NonUnitalNonAssocRing.toAddCommGroup.{u3} C (NonAssocRing.toNonUnitalNonAssocRing.{u3} C (Ring.toNonAssocRing.{u3} C _inst_12)))) (Algebra.toModule.{u1, u3} R C _inst_2 (Ring.toSemiring.{u3} C _inst_12) _inst_13))) => A -> C) (NonUnitalAlgHom.hasCoeToFun.{u1, u2, u3} R A C (MonoidWithZero.toMonoid.{u1} R (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R _inst_2))) (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u2} A _inst_3) (Module.toDistribMulAction.{u1, u2} R A (CommSemiring.toSemiring.{u1} R _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u2} A _inst_3)) _inst_4) (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u3} C (NonAssocRing.toNonUnitalNonAssocRing.{u3} C (Ring.toNonAssocRing.{u3} C _inst_12))) (Module.toDistribMulAction.{u1, u3} R C (CommSemiring.toSemiring.{u1} R _inst_2) (AddCommGroup.toAddCommMonoid.{u3} C (NonUnitalNonAssocRing.toAddCommGroup.{u3} C (NonAssocRing.toNonUnitalNonAssocRing.{u3} C (Ring.toNonAssocRing.{u3} C _inst_12)))) (Algebra.toModule.{u1, u3} R C _inst_2 (Ring.toSemiring.{u3} C _inst_12) _inst_13))) (coeFn.{max 1 (max (max (succ (max u1 u2)) (succ u3)) (succ u2) (succ u3)) (max (succ u2) (succ u3)) (succ (max u1 u2)) (succ u3), max (max (succ (max u1 u2)) (succ u3)) (succ u2) (succ u3)} (Equiv.{max (succ (max u1 u2)) (succ u3), max (succ u2) (succ u3)} (AlgHom.{u1, max u1 u2, u3} R (Unitization.{u1, u2} R A) C _inst_2 (Unitization.semiring.{u1, u2} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5) (Ring.toSemiring.{u3} C _inst_12) (Unitization.algebra.{u1, u1, u2} R R A _inst_2 _inst_2 _inst_3 _inst_4 _inst_6 _inst_5 (Algebra.id.{u1} R _inst_2) (Module.toDistribMulAction.{u1, u2} R A (CommSemiring.toSemiring.{u1} R _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u2} A _inst_3)) _inst_4) (Unitization.lift._proof_1.{u1, u2} R A _inst_2 _inst_3 _inst_4)) _inst_13) (NonUnitalAlgHom.{u1, u2, u3} R A C (MonoidWithZero.toMonoid.{u1} R (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R _inst_2))) (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u2} A _inst_3) (Module.toDistribMulAction.{u1, u2} R A (CommSemiring.toSemiring.{u1} R _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u2} A _inst_3)) _inst_4) (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u3} C (NonAssocRing.toNonUnitalNonAssocRing.{u3} C (Ring.toNonAssocRing.{u3} C _inst_12))) (Module.toDistribMulAction.{u1, u3} R C (CommSemiring.toSemiring.{u1} R _inst_2) (AddCommGroup.toAddCommMonoid.{u3} C (NonUnitalNonAssocRing.toAddCommGroup.{u3} C (NonAssocRing.toNonUnitalNonAssocRing.{u3} C (Ring.toNonAssocRing.{u3} C _inst_12)))) (Algebra.toModule.{u1, u3} R C _inst_2 (Ring.toSemiring.{u3} C _inst_12) _inst_13)))) (fun (_x : Equiv.{max (succ (max u1 u2)) (succ u3), max (succ u2) (succ u3)} (AlgHom.{u1, max u1 u2, u3} R (Unitization.{u1, u2} R A) C _inst_2 (Unitization.semiring.{u1, u2} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5) (Ring.toSemiring.{u3} C _inst_12) (Unitization.algebra.{u1, u1, u2} R R A _inst_2 _inst_2 _inst_3 _inst_4 _inst_6 _inst_5 (Algebra.id.{u1} R _inst_2) (Module.toDistribMulAction.{u1, u2} R A (CommSemiring.toSemiring.{u1} R _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u2} A _inst_3)) _inst_4) (Unitization.lift._proof_1.{u1, u2} R A _inst_2 _inst_3 _inst_4)) _inst_13) (NonUnitalAlgHom.{u1, u2, u3} R A C (MonoidWithZero.toMonoid.{u1} R (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R _inst_2))) (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u2} A _inst_3) (Module.toDistribMulAction.{u1, u2} R A (CommSemiring.toSemiring.{u1} R _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u2} A _inst_3)) _inst_4) (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u3} C (NonAssocRing.toNonUnitalNonAssocRing.{u3} C (Ring.toNonAssocRing.{u3} C _inst_12))) (Module.toDistribMulAction.{u1, u3} R C (CommSemiring.toSemiring.{u1} R _inst_2) (AddCommGroup.toAddCommMonoid.{u3} C (NonUnitalNonAssocRing.toAddCommGroup.{u3} C (NonAssocRing.toNonUnitalNonAssocRing.{u3} C (Ring.toNonAssocRing.{u3} C _inst_12)))) (Algebra.toModule.{u1, u3} R C _inst_2 (Ring.toSemiring.{u3} C _inst_12) _inst_13)))) => (AlgHom.{u1, max u1 u2, u3} R (Unitization.{u1, u2} R A) C _inst_2 (Unitization.semiring.{u1, u2} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5) (Ring.toSemiring.{u3} C _inst_12) (Unitization.algebra.{u1, u1, u2} R R A _inst_2 _inst_2 _inst_3 _inst_4 _inst_6 _inst_5 (Algebra.id.{u1} R _inst_2) (Module.toDistribMulAction.{u1, u2} R A (CommSemiring.toSemiring.{u1} R _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u2} A _inst_3)) _inst_4) (Unitization.lift._proof_1.{u1, u2} R A _inst_2 _inst_3 _inst_4)) _inst_13) -> (NonUnitalAlgHom.{u1, u2, u3} R A C (MonoidWithZero.toMonoid.{u1} R (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R _inst_2))) (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u2} A _inst_3) (Module.toDistribMulAction.{u1, u2} R A (CommSemiring.toSemiring.{u1} R _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u2} A _inst_3)) _inst_4) (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u3} C (NonAssocRing.toNonUnitalNonAssocRing.{u3} C (Ring.toNonAssocRing.{u3} C _inst_12))) (Module.toDistribMulAction.{u1, u3} R C (CommSemiring.toSemiring.{u1} R _inst_2) (AddCommGroup.toAddCommMonoid.{u3} C (NonUnitalNonAssocRing.toAddCommGroup.{u3} C (NonAssocRing.toNonUnitalNonAssocRing.{u3} C (Ring.toNonAssocRing.{u3} C _inst_12)))) (Algebra.toModule.{u1, u3} R C _inst_2 (Ring.toSemiring.{u3} C _inst_12) _inst_13)))) (Equiv.hasCoeToFun.{max (succ (max u1 u2)) (succ u3), max (succ u2) (succ u3)} (AlgHom.{u1, max u1 u2, u3} R (Unitization.{u1, u2} R A) C _inst_2 (Unitization.semiring.{u1, u2} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5) (Ring.toSemiring.{u3} C _inst_12) (Unitization.algebra.{u1, u1, u2} R R A _inst_2 _inst_2 _inst_3 _inst_4 _inst_6 _inst_5 (Algebra.id.{u1} R _inst_2) (Module.toDistribMulAction.{u1, u2} R A (CommSemiring.toSemiring.{u1} R _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u2} A _inst_3)) _inst_4) (Unitization.lift._proof_1.{u1, u2} R A _inst_2 _inst_3 _inst_4)) _inst_13) (NonUnitalAlgHom.{u1, u2, u3} R A C (MonoidWithZero.toMonoid.{u1} R (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R _inst_2))) (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u2} A _inst_3) (Module.toDistribMulAction.{u1, u2} R A (CommSemiring.toSemiring.{u1} R _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u2} A _inst_3)) _inst_4) (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u3} C (NonAssocRing.toNonUnitalNonAssocRing.{u3} C (Ring.toNonAssocRing.{u3} C _inst_12))) (Module.toDistribMulAction.{u1, u3} R C (CommSemiring.toSemiring.{u1} R _inst_2) (AddCommGroup.toAddCommMonoid.{u3} C (NonUnitalNonAssocRing.toAddCommGroup.{u3} C (NonAssocRing.toNonUnitalNonAssocRing.{u3} C (Ring.toNonAssocRing.{u3} C _inst_12)))) (Algebra.toModule.{u1, u3} R C _inst_2 (Ring.toSemiring.{u3} C _inst_12) _inst_13)))) (Equiv.symm.{max (succ u2) (succ u3), max (succ (max u1 u2)) (succ u3)} (NonUnitalAlgHom.{u1, u2, u3} R A C (MonoidWithZero.toMonoid.{u1} R (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R _inst_2))) (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u2} A _inst_3) (Module.toDistribMulAction.{u1, u2} R A (CommSemiring.toSemiring.{u1} R _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u2} A _inst_3)) _inst_4) (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u3} C (NonAssocRing.toNonUnitalNonAssocRing.{u3} C (Ring.toNonAssocRing.{u3} C _inst_12))) (Module.toDistribMulAction.{u1, u3} R C (CommSemiring.toSemiring.{u1} R _inst_2) (AddCommGroup.toAddCommMonoid.{u3} C (NonUnitalNonAssocRing.toAddCommGroup.{u3} C (NonAssocRing.toNonUnitalNonAssocRing.{u3} C (Ring.toNonAssocRing.{u3} C _inst_12)))) (Algebra.toModule.{u1, u3} R C _inst_2 (Ring.toSemiring.{u3} C _inst_12) _inst_13))) (AlgHom.{u1, max u1 u2, u3} R (Unitization.{u1, u2} R A) C _inst_2 (Unitization.semiring.{u1, u2} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5) (Ring.toSemiring.{u3} C _inst_12) (Unitization.algebra.{u1, u1, u2} R R A _inst_2 _inst_2 _inst_3 _inst_4 _inst_6 _inst_5 (Algebra.id.{u1} R _inst_2) (Module.toDistribMulAction.{u1, u2} R A (CommSemiring.toSemiring.{u1} R _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u2} A _inst_3)) _inst_4) (Unitization.lift._proof_1.{u1, u2} R A _inst_2 _inst_3 _inst_4)) _inst_13) (Unitization.lift.{u1, u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_5 _inst_6 C _inst_12 _inst_13)) φ) a) (coeFn.{max (succ (max u1 u2)) (succ u3), max (succ (max u1 u2)) (succ u3)} (AlgHom.{u1, max u1 u2, u3} R (Unitization.{u1, u2} R A) C _inst_2 (Unitization.semiring.{u1, u2} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5) (Ring.toSemiring.{u3} C _inst_12) (Unitization.algebra.{u1, u1, u2} R R A _inst_2 _inst_2 _inst_3 _inst_4 _inst_6 _inst_5 (Algebra.id.{u1} R _inst_2) (Module.toDistribMulAction.{u1, u2} R A (CommSemiring.toSemiring.{u1} R _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u2} A _inst_3)) _inst_4) (IsScalarTower.left.{u1, u2} R A (MonoidWithZero.toMonoid.{u1} R (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R _inst_2))) (MulActionWithZero.toMulAction.{u1, u2} R A (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R _inst_2)) (AddZeroClass.toHasZero.{u2} A (AddMonoid.toAddZeroClass.{u2} A (AddCommMonoid.toAddMonoid.{u2} A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u2} A _inst_3))))) (Module.toMulActionWithZero.{u1, u2} R A (CommSemiring.toSemiring.{u1} R _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u2} A _inst_3)) _inst_4)))) _inst_13) (fun (_x : AlgHom.{u1, max u1 u2, u3} R (Unitization.{u1, u2} R A) C _inst_2 (Unitization.semiring.{u1, u2} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5) (Ring.toSemiring.{u3} C _inst_12) (Unitization.algebra.{u1, u1, u2} R R A _inst_2 _inst_2 _inst_3 _inst_4 _inst_6 _inst_5 (Algebra.id.{u1} R _inst_2) (Module.toDistribMulAction.{u1, u2} R A (CommSemiring.toSemiring.{u1} R _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u2} A _inst_3)) _inst_4) (IsScalarTower.left.{u1, u2} R A (MonoidWithZero.toMonoid.{u1} R (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R _inst_2))) (MulActionWithZero.toMulAction.{u1, u2} R A (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R _inst_2)) (AddZeroClass.toHasZero.{u2} A (AddMonoid.toAddZeroClass.{u2} A (AddCommMonoid.toAddMonoid.{u2} A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u2} A _inst_3))))) (Module.toMulActionWithZero.{u1, u2} R A (CommSemiring.toSemiring.{u1} R _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u2} A _inst_3)) _inst_4)))) _inst_13) => (Unitization.{u1, u2} R A) -> C) ([anonymous].{u1, max u1 u2, u3} R (Unitization.{u1, u2} R A) C _inst_2 (Unitization.semiring.{u1, u2} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5) (Ring.toSemiring.{u3} C _inst_12) (Unitization.algebra.{u1, u1, u2} R R A _inst_2 _inst_2 _inst_3 _inst_4 _inst_6 _inst_5 (Algebra.id.{u1} R _inst_2) (Module.toDistribMulAction.{u1, u2} R A (CommSemiring.toSemiring.{u1} R _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u2} A _inst_3)) _inst_4) (IsScalarTower.left.{u1, u2} R A (MonoidWithZero.toMonoid.{u1} R (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R _inst_2))) (MulActionWithZero.toMulAction.{u1, u2} R A (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R _inst_2)) (AddZeroClass.toHasZero.{u2} A (AddMonoid.toAddZeroClass.{u2} A (AddCommMonoid.toAddMonoid.{u2} A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u2} A _inst_3))))) (Module.toMulActionWithZero.{u1, u2} R A (CommSemiring.toSemiring.{u1} R _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u2} A _inst_3)) _inst_4)))) _inst_13) φ ((fun (a : Type.{u2}) (b : Sort.{max (succ u1) (succ u2)}) [self : HasLiftT.{succ u2, max (succ u1) (succ u2)} a b] => self.0) A (Unitization.{u1, u2} R A) (HasLiftT.mk.{succ u2, max (succ u1) (succ u2)} A (Unitization.{u1, u2} R A) (CoeTCₓ.coe.{succ u2, max (succ u1) (succ u2)} A (Unitization.{u1, u2} R A) (Unitization.hasCoeT.{u1, u2} R A (MulZeroClass.toHasZero.{u1} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R _inst_2)))))))) a))
-but is expected to have type
-  forall {R : Type.{u1}} {A : Type.{u2}} [_inst_2 : CommSemiring.{u1} R] [_inst_3 : NonUnitalSemiring.{u2} A] [_inst_4 : Module.{u1, u2} R A (CommSemiring.toSemiring.{u1} R _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u2} A _inst_3))] [_inst_5 : SMulCommClass.{u1, u2, u2} R A A (SMulZeroClass.toSMul.{u1, u2} R A (SemigroupWithZero.toZero.{u2} A (NonUnitalSemiring.toSemigroupWithZero.{u2} A _inst_3)) (SMulWithZero.toSMulZeroClass.{u1, u2} R A (CommMonoidWithZero.toZero.{u1} R (CommSemiring.toCommMonoidWithZero.{u1} R _inst_2)) (SemigroupWithZero.toZero.{u2} A (NonUnitalSemiring.toSemigroupWithZero.{u2} A _inst_3)) (MulActionWithZero.toSMulWithZero.{u1, u2} R A (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R _inst_2)) (SemigroupWithZero.toZero.{u2} A (NonUnitalSemiring.toSemigroupWithZero.{u2} A _inst_3)) (Module.toMulActionWithZero.{u1, u2} R A (CommSemiring.toSemiring.{u1} R _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u2} A _inst_3)) _inst_4)))) (SMulZeroClass.toSMul.{u2, u2} A A (SemigroupWithZero.toZero.{u2} A (NonUnitalSemiring.toSemigroupWithZero.{u2} A _inst_3)) (SMulWithZero.toSMulZeroClass.{u2, u2} A A (SemigroupWithZero.toZero.{u2} A (NonUnitalSemiring.toSemigroupWithZero.{u2} A _inst_3)) (SemigroupWithZero.toZero.{u2} A (NonUnitalSemiring.toSemigroupWithZero.{u2} A _inst_3)) (MulZeroClass.toSMulWithZero.{u2} A (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u2} A _inst_3)))))] [_inst_6 : IsScalarTower.{u1, u2, u2} R A A (SMulZeroClass.toSMul.{u1, u2} R A (SemigroupWithZero.toZero.{u2} A (NonUnitalSemiring.toSemigroupWithZero.{u2} A _inst_3)) (SMulWithZero.toSMulZeroClass.{u1, u2} R A (CommMonoidWithZero.toZero.{u1} R (CommSemiring.toCommMonoidWithZero.{u1} R _inst_2)) (SemigroupWithZero.toZero.{u2} A (NonUnitalSemiring.toSemigroupWithZero.{u2} A _inst_3)) (MulActionWithZero.toSMulWithZero.{u1, u2} R A (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R _inst_2)) (SemigroupWithZero.toZero.{u2} A (NonUnitalSemiring.toSemigroupWithZero.{u2} A _inst_3)) (Module.toMulActionWithZero.{u1, u2} R A (CommSemiring.toSemiring.{u1} R _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u2} A _inst_3)) _inst_4)))) (SMulZeroClass.toSMul.{u2, u2} A A (SemigroupWithZero.toZero.{u2} A (NonUnitalSemiring.toSemigroupWithZero.{u2} A _inst_3)) (SMulWithZero.toSMulZeroClass.{u2, u2} A A (SemigroupWithZero.toZero.{u2} A (NonUnitalSemiring.toSemigroupWithZero.{u2} A _inst_3)) (SemigroupWithZero.toZero.{u2} A (NonUnitalSemiring.toSemigroupWithZero.{u2} A _inst_3)) (MulZeroClass.toSMulWithZero.{u2} A (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u2} A _inst_3))))) (SMulZeroClass.toSMul.{u1, u2} R A (SemigroupWithZero.toZero.{u2} A (NonUnitalSemiring.toSemigroupWithZero.{u2} A _inst_3)) (SMulWithZero.toSMulZeroClass.{u1, u2} R A (CommMonoidWithZero.toZero.{u1} R (CommSemiring.toCommMonoidWithZero.{u1} R _inst_2)) (SemigroupWithZero.toZero.{u2} A (NonUnitalSemiring.toSemigroupWithZero.{u2} A _inst_3)) (MulActionWithZero.toSMulWithZero.{u1, u2} R A (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R _inst_2)) (SemigroupWithZero.toZero.{u2} A (NonUnitalSemiring.toSemigroupWithZero.{u2} A _inst_3)) (Module.toMulActionWithZero.{u1, u2} R A (CommSemiring.toSemiring.{u1} R _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u2} A _inst_3)) _inst_4))))] {C : Type.{u3}} [_inst_12 : Semiring.{u3} C] [_inst_13 : Algebra.{u1, u3} R C _inst_2 _inst_12] (φ : AlgHom.{u1, max u2 u1, u3} R (Unitization.{u1, u2} R A) C _inst_2 (Unitization.semiring.{u1, u2} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5) _inst_12 (Unitization.algebra.{u1, u1, u2} R R A _inst_2 _inst_2 _inst_3 _inst_4 _inst_6 _inst_5 (Algebra.id.{u1} R _inst_2) (Module.toDistribMulAction.{u1, u2} R A (CommSemiring.toSemiring.{u1} R _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u2} A _inst_3)) _inst_4) (Unitization.lift.proof_1.{u1, u2} R A _inst_2 _inst_3 _inst_4)) _inst_13), Eq.{max (succ u2) (succ u3)} (NonUnitalAlgHom.{u1, u2, u3} R A C (MonoidWithZero.toMonoid.{u1} R (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R _inst_2))) (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u2} A _inst_3) (Module.toDistribMulAction.{u1, u2} R A (CommSemiring.toSemiring.{u1} R _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u2} A _inst_3)) _inst_4) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} C (Semiring.toNonAssocSemiring.{u3} C _inst_12)) (Module.toDistribMulAction.{u1, u3} R C (CommSemiring.toSemiring.{u1} R _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} C (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} C (Semiring.toNonAssocSemiring.{u3} C _inst_12))) (Algebra.toModule.{u1, u3} R C _inst_2 _inst_12 _inst_13))) (FunLike.coe.{max (max 1 (succ u3) (succ u2)) (succ u3) (succ (max u2 u1)), max (succ u3) (succ (max u2 u1)), max (succ u3) (succ u2)} (Equiv.{max (succ u3) (succ (max u2 u1)), max (succ u3) (succ u2)} (AlgHom.{u1, max u2 u1, u3} R (Unitization.{u1, u2} R A) C _inst_2 (Unitization.semiring.{u1, u2} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5) _inst_12 (Unitization.algebra.{u1, u1, u2} R R A _inst_2 _inst_2 _inst_3 _inst_4 _inst_6 _inst_5 (Algebra.id.{u1} R _inst_2) (Module.toDistribMulAction.{u1, u2} R A (CommSemiring.toSemiring.{u1} R _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u2} A _inst_3)) _inst_4) (IsScalarTower.left.{u1, u2} R A (MonoidWithZero.toMonoid.{u1} R (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R _inst_2))) (MulActionWithZero.toMulAction.{u1, u2} R A (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R _inst_2)) (SemigroupWithZero.toZero.{u2} A (NonUnitalSemiring.toSemigroupWithZero.{u2} A _inst_3)) (Module.toMulActionWithZero.{u1, u2} R A (CommSemiring.toSemiring.{u1} R _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u2} A _inst_3)) _inst_4)))) _inst_13) (NonUnitalAlgHom.{u1, u2, u3} R A C (MonoidWithZero.toMonoid.{u1} R (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R _inst_2))) (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u2} A _inst_3) (Module.toDistribMulAction.{u1, u2} R A (CommSemiring.toSemiring.{u1} R _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u2} A _inst_3)) _inst_4) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} C (Semiring.toNonAssocSemiring.{u3} C _inst_12)) (Module.toDistribMulAction.{u1, u3} R C (CommSemiring.toSemiring.{u1} R _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} C (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} C (Semiring.toNonAssocSemiring.{u3} C _inst_12))) (Algebra.toModule.{u1, u3} R C _inst_2 _inst_12 _inst_13)))) (AlgHom.{u1, max u2 u1, u3} R (Unitization.{u1, u2} R A) C _inst_2 (Unitization.semiring.{u1, u2} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5) _inst_12 (Unitization.algebra.{u1, u1, u2} R R A _inst_2 _inst_2 _inst_3 _inst_4 _inst_6 _inst_5 (Algebra.id.{u1} R _inst_2) (Module.toDistribMulAction.{u1, u2} R A (CommSemiring.toSemiring.{u1} R _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u2} A _inst_3)) _inst_4) (IsScalarTower.left.{u1, u2} R A (MonoidWithZero.toMonoid.{u1} R (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R _inst_2))) (MulActionWithZero.toMulAction.{u1, u2} R A (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R _inst_2)) (SemigroupWithZero.toZero.{u2} A (NonUnitalSemiring.toSemigroupWithZero.{u2} A _inst_3)) (Module.toMulActionWithZero.{u1, u2} R A (CommSemiring.toSemiring.{u1} R _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u2} A _inst_3)) _inst_4)))) _inst_13) (fun (a : AlgHom.{u1, max u2 u1, u3} R (Unitization.{u1, u2} R A) C _inst_2 (Unitization.semiring.{u1, u2} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5) _inst_12 (Unitization.algebra.{u1, u1, u2} R R A _inst_2 _inst_2 _inst_3 _inst_4 _inst_6 _inst_5 (Algebra.id.{u1} R _inst_2) (Module.toDistribMulAction.{u1, u2} R A (CommSemiring.toSemiring.{u1} R _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u2} A _inst_3)) _inst_4) (IsScalarTower.left.{u1, u2} R A (MonoidWithZero.toMonoid.{u1} R (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R _inst_2))) (MulActionWithZero.toMulAction.{u1, u2} R A (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R _inst_2)) (SemigroupWithZero.toZero.{u2} A (NonUnitalSemiring.toSemigroupWithZero.{u2} A _inst_3)) (Module.toMulActionWithZero.{u1, u2} R A (CommSemiring.toSemiring.{u1} R _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u2} A _inst_3)) _inst_4)))) _inst_13) => (fun (x._@.Mathlib.Logic.Equiv.Defs._hyg.812 : AlgHom.{u1, max u2 u1, u3} R (Unitization.{u1, u2} R A) C _inst_2 (Unitization.semiring.{u1, u2} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5) _inst_12 (Unitization.algebra.{u1, u1, u2} R R A _inst_2 _inst_2 _inst_3 _inst_4 _inst_6 _inst_5 (Algebra.id.{u1} R _inst_2) (Module.toDistribMulAction.{u1, u2} R A (CommSemiring.toSemiring.{u1} R _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u2} A _inst_3)) _inst_4) (IsScalarTower.left.{u1, u2} R A (MonoidWithZero.toMonoid.{u1} R (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R _inst_2))) (MulActionWithZero.toMulAction.{u1, u2} R A (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R _inst_2)) (SemigroupWithZero.toZero.{u2} A (NonUnitalSemiring.toSemigroupWithZero.{u2} A _inst_3)) (Module.toMulActionWithZero.{u1, u2} R A (CommSemiring.toSemiring.{u1} R _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u2} A _inst_3)) _inst_4)))) _inst_13) => NonUnitalAlgHom.{u1, u2, u3} R A C (MonoidWithZero.toMonoid.{u1} R (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R _inst_2))) (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u2} A _inst_3) (Module.toDistribMulAction.{u1, u2} R A (CommSemiring.toSemiring.{u1} R _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u2} A _inst_3)) _inst_4) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} C (Semiring.toNonAssocSemiring.{u3} C _inst_12)) (Module.toDistribMulAction.{u1, u3} R C (CommSemiring.toSemiring.{u1} R _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} C (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} C (Semiring.toNonAssocSemiring.{u3} C _inst_12))) (Algebra.toModule.{u1, u3} R C _inst_2 _inst_12 _inst_13))) a) (Equiv.instFunLikeEquiv.{max (succ u3) (succ (max u2 u1)), max (succ u3) (succ u2)} (AlgHom.{u1, max u2 u1, u3} R (Unitization.{u1, u2} R A) C _inst_2 (Unitization.semiring.{u1, u2} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5) _inst_12 (Unitization.algebra.{u1, u1, u2} R R A _inst_2 _inst_2 _inst_3 _inst_4 _inst_6 _inst_5 (Algebra.id.{u1} R _inst_2) (Module.toDistribMulAction.{u1, u2} R A (CommSemiring.toSemiring.{u1} R _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u2} A _inst_3)) _inst_4) (IsScalarTower.left.{u1, u2} R A (MonoidWithZero.toMonoid.{u1} R (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R _inst_2))) (MulActionWithZero.toMulAction.{u1, u2} R A (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R _inst_2)) (SemigroupWithZero.toZero.{u2} A (NonUnitalSemiring.toSemigroupWithZero.{u2} A _inst_3)) (Module.toMulActionWithZero.{u1, u2} R A (CommSemiring.toSemiring.{u1} R _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u2} A _inst_3)) _inst_4)))) _inst_13) (NonUnitalAlgHom.{u1, u2, u3} R A C (MonoidWithZero.toMonoid.{u1} R (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R _inst_2))) (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u2} A _inst_3) (Module.toDistribMulAction.{u1, u2} R A (CommSemiring.toSemiring.{u1} R _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u2} A _inst_3)) _inst_4) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} C (Semiring.toNonAssocSemiring.{u3} C _inst_12)) (Module.toDistribMulAction.{u1, u3} R C (CommSemiring.toSemiring.{u1} R _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} C (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} C (Semiring.toNonAssocSemiring.{u3} C _inst_12))) (Algebra.toModule.{u1, u3} R C _inst_2 _inst_12 _inst_13)))) (Equiv.symm.{max (succ u3) (succ u2), max (succ u3) (succ (max u2 u1))} (NonUnitalAlgHom.{u1, u2, u3} R A C (MonoidWithZero.toMonoid.{u1} R (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R _inst_2))) (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u2} A _inst_3) (Module.toDistribMulAction.{u1, u2} R A (CommSemiring.toSemiring.{u1} R _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u2} A _inst_3)) _inst_4) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} C (Semiring.toNonAssocSemiring.{u3} C _inst_12)) (Module.toDistribMulAction.{u1, u3} R C (CommSemiring.toSemiring.{u1} R _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} C (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} C (Semiring.toNonAssocSemiring.{u3} C _inst_12))) (Algebra.toModule.{u1, u3} R C _inst_2 _inst_12 _inst_13))) (AlgHom.{u1, max u2 u1, u3} R (Unitization.{u1, u2} R A) C _inst_2 (Unitization.semiring.{u1, u2} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5) _inst_12 (Unitization.algebra.{u1, u1, u2} R R A _inst_2 _inst_2 _inst_3 _inst_4 _inst_6 _inst_5 (Algebra.id.{u1} R _inst_2) (Module.toDistribMulAction.{u1, u2} R A (CommSemiring.toSemiring.{u1} R _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u2} A _inst_3)) _inst_4) (IsScalarTower.left.{u1, u2} R A (MonoidWithZero.toMonoid.{u1} R (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R _inst_2))) (MulActionWithZero.toMulAction.{u1, u2} R A (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R _inst_2)) (SemigroupWithZero.toZero.{u2} A (NonUnitalSemiring.toSemigroupWithZero.{u2} A _inst_3)) (Module.toMulActionWithZero.{u1, u2} R A (CommSemiring.toSemiring.{u1} R _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u2} A _inst_3)) _inst_4)))) _inst_13) (Unitization.lift.{u1, u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_5 _inst_6 C _inst_12 _inst_13)) φ) (NonUnitalAlgHom.comp.{u1, u2, max u1 u2, u3} R A (Unitization.{u1, u2} R A) C (MonoidWithZero.toMonoid.{u1} R (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R _inst_2))) (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u2} A _inst_3) (Module.toDistribMulAction.{u1, u2} R A (CommSemiring.toSemiring.{u1} R _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u2} A _inst_3)) _inst_4) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{max u1 u2} (Unitization.{u1, u2} R A) (Semiring.toNonAssocSemiring.{max u1 u2} (Unitization.{u1, u2} R A) (Unitization.semiring.{u1, u2} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5))) (Module.toDistribMulAction.{u1, max u1 u2} R (Unitization.{u1, u2} R A) (CommSemiring.toSemiring.{u1} R _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{max u1 u2} (Unitization.{u1, u2} R A) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{max u1 u2} (Unitization.{u1, u2} R A) (Semiring.toNonAssocSemiring.{max u1 u2} (Unitization.{u1, u2} R A) (Unitization.semiring.{u1, u2} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5)))) (Algebra.toModule.{u1, max u1 u2} R (Unitization.{u1, u2} R A) _inst_2 (Unitization.semiring.{u1, u2} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5) (Unitization.algebra.{u1, u1, u2} R R A _inst_2 _inst_2 _inst_3 _inst_4 _inst_6 _inst_5 (Algebra.id.{u1} R _inst_2) (Module.toDistribMulAction.{u1, u2} R A (CommSemiring.toSemiring.{u1} R _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u2} A _inst_3)) _inst_4) (Unitization.lift.proof_1.{u1, u2} R A _inst_2 _inst_3 _inst_4)))) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} C (Semiring.toNonAssocSemiring.{u3} C _inst_12)) (Module.toDistribMulAction.{u1, u3} R C (CommSemiring.toSemiring.{u1} R _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} C (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} C (Semiring.toNonAssocSemiring.{u3} C _inst_12))) (Algebra.toModule.{u1, u3} R C _inst_2 _inst_12 _inst_13)) (AlgHom.toNonUnitalAlgHom.{u1, max u1 u2, u3} R (Unitization.{u1, u2} R A) C _inst_2 (Unitization.semiring.{u1, u2} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5) _inst_12 (Unitization.algebra.{u1, u1, u2} R R A _inst_2 _inst_2 _inst_3 _inst_4 _inst_6 _inst_5 (Algebra.id.{u1} R _inst_2) (Module.toDistribMulAction.{u1, u2} R A (CommSemiring.toSemiring.{u1} R _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u2} A _inst_3)) _inst_4) (Unitization.lift.proof_1.{u1, u2} R A _inst_2 _inst_3 _inst_4)) _inst_13 φ) (Unitization.inrNonUnitalAlgHom.{u1, u2} R A _inst_2 _inst_3 _inst_4))
+<too large>
 Case conversion may be inaccurate. Consider using '#align unitization.lift_symm_apply Unitization.lift_symm_applyₓ'. -/
 theorem lift_symm_apply (φ : Unitization R A →ₐ[R] C) (a : A) : Unitization.lift.symm φ a = φ a :=
   rfl
Diff
@@ -460,7 +460,7 @@ theorem ind {R A} [AddZeroClass R] [AddZeroClass A] {P : Unitization R A → Pro
 lean 3 declaration is
   forall {S : Type.{u1}} {R : Type.{u2}} {A : Type.{u3}} {N : Type.{u4}} [_inst_1 : Semiring.{u1} S] [_inst_2 : AddCommMonoid.{u2} R] [_inst_3 : AddCommMonoid.{u3} A] [_inst_4 : AddCommMonoid.{u4} N] [_inst_5 : Module.{u1, u2} S R _inst_1 _inst_2] [_inst_6 : Module.{u1, u3} S A _inst_1 _inst_3] [_inst_7 : Module.{u1, u4} S N _inst_1 _inst_4] {{f : LinearMap.{u1, u1, max u2 u3, u4} S S _inst_1 _inst_1 (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_1)) (Unitization.{u2, u3} R A) N (Unitization.addCommMonoid.{u2, u3} R A _inst_2 _inst_3) _inst_4 (Unitization.module.{u1, u2, u3} S R A _inst_1 _inst_2 _inst_3 _inst_5 _inst_6) _inst_7}} {{g : LinearMap.{u1, u1, max u2 u3, u4} S S _inst_1 _inst_1 (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_1)) (Unitization.{u2, u3} R A) N (Unitization.addCommMonoid.{u2, u3} R A _inst_2 _inst_3) _inst_4 (Unitization.module.{u1, u2, u3} S R A _inst_1 _inst_2 _inst_3 _inst_5 _inst_6) _inst_7}}, (forall (r : R), Eq.{succ u4} N (coeFn.{max (succ (max u2 u3)) (succ u4), max (succ (max u2 u3)) (succ u4)} (LinearMap.{u1, u1, max u2 u3, u4} S S _inst_1 _inst_1 (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_1)) (Unitization.{u2, u3} R A) N (Unitization.addCommMonoid.{u2, u3} R A _inst_2 _inst_3) _inst_4 (Unitization.module.{u1, u2, u3} S R A _inst_1 _inst_2 _inst_3 _inst_5 _inst_6) _inst_7) (fun (_x : LinearMap.{u1, u1, max u2 u3, u4} S S _inst_1 _inst_1 (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_1)) (Unitization.{u2, u3} R A) N (Unitization.addCommMonoid.{u2, u3} R A _inst_2 _inst_3) _inst_4 (Unitization.module.{u1, u2, u3} S R A _inst_1 _inst_2 _inst_3 _inst_5 _inst_6) _inst_7) => (Unitization.{u2, u3} R A) -> N) (LinearMap.hasCoeToFun.{u1, u1, max u2 u3, u4} S S (Unitization.{u2, u3} R A) N _inst_1 _inst_1 (Unitization.addCommMonoid.{u2, u3} R A _inst_2 _inst_3) _inst_4 (Unitization.module.{u1, u2, u3} S R A _inst_1 _inst_2 _inst_3 _inst_5 _inst_6) _inst_7 (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_1))) f (Unitization.inl.{u2, u3} R A (AddZeroClass.toHasZero.{u3} A (AddMonoid.toAddZeroClass.{u3} A (AddCommMonoid.toAddMonoid.{u3} A _inst_3))) r)) (coeFn.{max (succ (max u2 u3)) (succ u4), max (succ (max u2 u3)) (succ u4)} (LinearMap.{u1, u1, max u2 u3, u4} S S _inst_1 _inst_1 (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_1)) (Unitization.{u2, u3} R A) N (Unitization.addCommMonoid.{u2, u3} R A _inst_2 _inst_3) _inst_4 (Unitization.module.{u1, u2, u3} S R A _inst_1 _inst_2 _inst_3 _inst_5 _inst_6) _inst_7) (fun (_x : LinearMap.{u1, u1, max u2 u3, u4} S S _inst_1 _inst_1 (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_1)) (Unitization.{u2, u3} R A) N (Unitization.addCommMonoid.{u2, u3} R A _inst_2 _inst_3) _inst_4 (Unitization.module.{u1, u2, u3} S R A _inst_1 _inst_2 _inst_3 _inst_5 _inst_6) _inst_7) => (Unitization.{u2, u3} R A) -> N) (LinearMap.hasCoeToFun.{u1, u1, max u2 u3, u4} S S (Unitization.{u2, u3} R A) N _inst_1 _inst_1 (Unitization.addCommMonoid.{u2, u3} R A _inst_2 _inst_3) _inst_4 (Unitization.module.{u1, u2, u3} S R A _inst_1 _inst_2 _inst_3 _inst_5 _inst_6) _inst_7 (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_1))) g (Unitization.inl.{u2, u3} R A (AddZeroClass.toHasZero.{u3} A (AddMonoid.toAddZeroClass.{u3} A (AddCommMonoid.toAddMonoid.{u3} A _inst_3))) r))) -> (forall (a : A), Eq.{succ u4} N (coeFn.{max (succ (max u2 u3)) (succ u4), max (succ (max u2 u3)) (succ u4)} (LinearMap.{u1, u1, max u2 u3, u4} S S _inst_1 _inst_1 (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_1)) (Unitization.{u2, u3} R A) N (Unitization.addCommMonoid.{u2, u3} R A _inst_2 _inst_3) _inst_4 (Unitization.module.{u1, u2, u3} S R A _inst_1 _inst_2 _inst_3 _inst_5 _inst_6) _inst_7) (fun (_x : LinearMap.{u1, u1, max u2 u3, u4} S S _inst_1 _inst_1 (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_1)) (Unitization.{u2, u3} R A) N (Unitization.addCommMonoid.{u2, u3} R A _inst_2 _inst_3) _inst_4 (Unitization.module.{u1, u2, u3} S R A _inst_1 _inst_2 _inst_3 _inst_5 _inst_6) _inst_7) => (Unitization.{u2, u3} R A) -> N) (LinearMap.hasCoeToFun.{u1, u1, max u2 u3, u4} S S (Unitization.{u2, u3} R A) N _inst_1 _inst_1 (Unitization.addCommMonoid.{u2, u3} R A _inst_2 _inst_3) _inst_4 (Unitization.module.{u1, u2, u3} S R A _inst_1 _inst_2 _inst_3 _inst_5 _inst_6) _inst_7 (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_1))) f ((fun (a : Type.{u3}) (b : Sort.{max (succ u2) (succ u3)}) [self : HasLiftT.{succ u3, max (succ u2) (succ u3)} a b] => self.0) A (Unitization.{u2, u3} R A) (HasLiftT.mk.{succ u3, max (succ u2) (succ u3)} A (Unitization.{u2, u3} R A) (CoeTCₓ.coe.{succ u3, max (succ u2) (succ u3)} A (Unitization.{u2, u3} R A) (Unitization.hasCoeT.{u2, u3} R A (AddZeroClass.toHasZero.{u2} R (AddMonoid.toAddZeroClass.{u2} R (AddCommMonoid.toAddMonoid.{u2} R _inst_2)))))) a)) (coeFn.{max (succ (max u2 u3)) (succ u4), max (succ (max u2 u3)) (succ u4)} (LinearMap.{u1, u1, max u2 u3, u4} S S _inst_1 _inst_1 (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_1)) (Unitization.{u2, u3} R A) N (Unitization.addCommMonoid.{u2, u3} R A _inst_2 _inst_3) _inst_4 (Unitization.module.{u1, u2, u3} S R A _inst_1 _inst_2 _inst_3 _inst_5 _inst_6) _inst_7) (fun (_x : LinearMap.{u1, u1, max u2 u3, u4} S S _inst_1 _inst_1 (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_1)) (Unitization.{u2, u3} R A) N (Unitization.addCommMonoid.{u2, u3} R A _inst_2 _inst_3) _inst_4 (Unitization.module.{u1, u2, u3} S R A _inst_1 _inst_2 _inst_3 _inst_5 _inst_6) _inst_7) => (Unitization.{u2, u3} R A) -> N) (LinearMap.hasCoeToFun.{u1, u1, max u2 u3, u4} S S (Unitization.{u2, u3} R A) N _inst_1 _inst_1 (Unitization.addCommMonoid.{u2, u3} R A _inst_2 _inst_3) _inst_4 (Unitization.module.{u1, u2, u3} S R A _inst_1 _inst_2 _inst_3 _inst_5 _inst_6) _inst_7 (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_1))) g ((fun (a : Type.{u3}) (b : Sort.{max (succ u2) (succ u3)}) [self : HasLiftT.{succ u3, max (succ u2) (succ u3)} a b] => self.0) A (Unitization.{u2, u3} R A) (HasLiftT.mk.{succ u3, max (succ u2) (succ u3)} A (Unitization.{u2, u3} R A) (CoeTCₓ.coe.{succ u3, max (succ u2) (succ u3)} A (Unitization.{u2, u3} R A) (Unitization.hasCoeT.{u2, u3} R A (AddZeroClass.toHasZero.{u2} R (AddMonoid.toAddZeroClass.{u2} R (AddCommMonoid.toAddMonoid.{u2} R _inst_2)))))) a))) -> (Eq.{max (succ (max u2 u3)) (succ u4)} (LinearMap.{u1, u1, max u2 u3, u4} S S _inst_1 _inst_1 (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_1)) (Unitization.{u2, u3} R A) N (Unitization.addCommMonoid.{u2, u3} R A _inst_2 _inst_3) _inst_4 (Unitization.module.{u1, u2, u3} S R A _inst_1 _inst_2 _inst_3 _inst_5 _inst_6) _inst_7) f g)
 but is expected to have type
-  forall {S : Type.{u3}} {R : Type.{u2}} {A : Type.{u1}} {N : Type.{u4}} [_inst_1 : Semiring.{u3} S] [_inst_2 : AddCommMonoid.{u2} R] [_inst_3 : AddCommMonoid.{u1} A] [_inst_4 : AddCommMonoid.{u4} N] [_inst_5 : Module.{u3, u2} S R _inst_1 _inst_2] [_inst_6 : Module.{u3, u1} S A _inst_1 _inst_3] [_inst_7 : Module.{u3, u4} S N _inst_1 _inst_4] {{f : LinearMap.{u3, u3, max u1 u2, u4} S S _inst_1 _inst_1 (RingHom.id.{u3} S (Semiring.toNonAssocSemiring.{u3} S _inst_1)) (Unitization.{u2, u1} R A) N (Unitization.addCommMonoid.{u2, u1} R A _inst_2 _inst_3) _inst_4 (Unitization.module.{u3, u2, u1} S R A _inst_1 _inst_2 _inst_3 _inst_5 _inst_6) _inst_7}} {{g : LinearMap.{u3, u3, max u1 u2, u4} S S _inst_1 _inst_1 (RingHom.id.{u3} S (Semiring.toNonAssocSemiring.{u3} S _inst_1)) (Unitization.{u2, u1} R A) N (Unitization.addCommMonoid.{u2, u1} R A _inst_2 _inst_3) _inst_4 (Unitization.module.{u3, u2, u1} S R A _inst_1 _inst_2 _inst_3 _inst_5 _inst_6) _inst_7}}, (forall (r : R), Eq.{succ u4} ((fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6191 : Unitization.{u2, u1} R A) => N) (Unitization.inl.{u2, u1} R A (AddMonoid.toZero.{u1} A (AddCommMonoid.toAddMonoid.{u1} A _inst_3)) r)) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u4), max (succ u2) (succ u1), succ u4} (LinearMap.{u3, u3, max u1 u2, u4} S S _inst_1 _inst_1 (RingHom.id.{u3} S (Semiring.toNonAssocSemiring.{u3} S _inst_1)) (Unitization.{u2, u1} R A) N (Unitization.addCommMonoid.{u2, u1} R A _inst_2 _inst_3) _inst_4 (Unitization.module.{u3, u2, u1} S R A _inst_1 _inst_2 _inst_3 _inst_5 _inst_6) _inst_7) (Unitization.{u2, u1} R A) (fun (_x : Unitization.{u2, u1} R A) => (fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6191 : Unitization.{u2, u1} R A) => N) _x) (LinearMap.instFunLikeLinearMap.{u3, u3, max u2 u1, u4} S S (Unitization.{u2, u1} R A) N _inst_1 _inst_1 (Unitization.addCommMonoid.{u2, u1} R A _inst_2 _inst_3) _inst_4 (Unitization.module.{u3, u2, u1} S R A _inst_1 _inst_2 _inst_3 _inst_5 _inst_6) _inst_7 (RingHom.id.{u3} S (Semiring.toNonAssocSemiring.{u3} S _inst_1))) f (Unitization.inl.{u2, u1} R A (AddMonoid.toZero.{u1} A (AddCommMonoid.toAddMonoid.{u1} A _inst_3)) r)) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u4), max (succ u2) (succ u1), succ u4} (LinearMap.{u3, u3, max u1 u2, u4} S S _inst_1 _inst_1 (RingHom.id.{u3} S (Semiring.toNonAssocSemiring.{u3} S _inst_1)) (Unitization.{u2, u1} R A) N (Unitization.addCommMonoid.{u2, u1} R A _inst_2 _inst_3) _inst_4 (Unitization.module.{u3, u2, u1} S R A _inst_1 _inst_2 _inst_3 _inst_5 _inst_6) _inst_7) (Unitization.{u2, u1} R A) (fun (_x : Unitization.{u2, u1} R A) => (fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6191 : Unitization.{u2, u1} R A) => N) _x) (LinearMap.instFunLikeLinearMap.{u3, u3, max u2 u1, u4} S S (Unitization.{u2, u1} R A) N _inst_1 _inst_1 (Unitization.addCommMonoid.{u2, u1} R A _inst_2 _inst_3) _inst_4 (Unitization.module.{u3, u2, u1} S R A _inst_1 _inst_2 _inst_3 _inst_5 _inst_6) _inst_7 (RingHom.id.{u3} S (Semiring.toNonAssocSemiring.{u3} S _inst_1))) g (Unitization.inl.{u2, u1} R A (AddMonoid.toZero.{u1} A (AddCommMonoid.toAddMonoid.{u1} A _inst_3)) r))) -> (forall (a : A), Eq.{succ u4} ((fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6191 : Unitization.{u2, u1} R A) => N) (Unitization.inr.{u2, u1} R A (AddMonoid.toZero.{u2} R (AddCommMonoid.toAddMonoid.{u2} R _inst_2)) a)) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u4), max (succ u2) (succ u1), succ u4} (LinearMap.{u3, u3, max u1 u2, u4} S S _inst_1 _inst_1 (RingHom.id.{u3} S (Semiring.toNonAssocSemiring.{u3} S _inst_1)) (Unitization.{u2, u1} R A) N (Unitization.addCommMonoid.{u2, u1} R A _inst_2 _inst_3) _inst_4 (Unitization.module.{u3, u2, u1} S R A _inst_1 _inst_2 _inst_3 _inst_5 _inst_6) _inst_7) (Unitization.{u2, u1} R A) (fun (_x : Unitization.{u2, u1} R A) => (fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6191 : Unitization.{u2, u1} R A) => N) _x) (LinearMap.instFunLikeLinearMap.{u3, u3, max u2 u1, u4} S S (Unitization.{u2, u1} R A) N _inst_1 _inst_1 (Unitization.addCommMonoid.{u2, u1} R A _inst_2 _inst_3) _inst_4 (Unitization.module.{u3, u2, u1} S R A _inst_1 _inst_2 _inst_3 _inst_5 _inst_6) _inst_7 (RingHom.id.{u3} S (Semiring.toNonAssocSemiring.{u3} S _inst_1))) f (Unitization.inr.{u2, u1} R A (AddMonoid.toZero.{u2} R (AddCommMonoid.toAddMonoid.{u2} R _inst_2)) a)) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u4), max (succ u2) (succ u1), succ u4} (LinearMap.{u3, u3, max u1 u2, u4} S S _inst_1 _inst_1 (RingHom.id.{u3} S (Semiring.toNonAssocSemiring.{u3} S _inst_1)) (Unitization.{u2, u1} R A) N (Unitization.addCommMonoid.{u2, u1} R A _inst_2 _inst_3) _inst_4 (Unitization.module.{u3, u2, u1} S R A _inst_1 _inst_2 _inst_3 _inst_5 _inst_6) _inst_7) (Unitization.{u2, u1} R A) (fun (_x : Unitization.{u2, u1} R A) => (fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6191 : Unitization.{u2, u1} R A) => N) _x) (LinearMap.instFunLikeLinearMap.{u3, u3, max u2 u1, u4} S S (Unitization.{u2, u1} R A) N _inst_1 _inst_1 (Unitization.addCommMonoid.{u2, u1} R A _inst_2 _inst_3) _inst_4 (Unitization.module.{u3, u2, u1} S R A _inst_1 _inst_2 _inst_3 _inst_5 _inst_6) _inst_7 (RingHom.id.{u3} S (Semiring.toNonAssocSemiring.{u3} S _inst_1))) g (Unitization.inr.{u2, u1} R A (AddMonoid.toZero.{u2} R (AddCommMonoid.toAddMonoid.{u2} R _inst_2)) a))) -> (Eq.{max (max (succ u2) (succ u1)) (succ u4)} (LinearMap.{u3, u3, max u1 u2, u4} S S _inst_1 _inst_1 (RingHom.id.{u3} S (Semiring.toNonAssocSemiring.{u3} S _inst_1)) (Unitization.{u2, u1} R A) N (Unitization.addCommMonoid.{u2, u1} R A _inst_2 _inst_3) _inst_4 (Unitization.module.{u3, u2, u1} S R A _inst_1 _inst_2 _inst_3 _inst_5 _inst_6) _inst_7) f g)
+  forall {S : Type.{u3}} {R : Type.{u2}} {A : Type.{u1}} {N : Type.{u4}} [_inst_1 : Semiring.{u3} S] [_inst_2 : AddCommMonoid.{u2} R] [_inst_3 : AddCommMonoid.{u1} A] [_inst_4 : AddCommMonoid.{u4} N] [_inst_5 : Module.{u3, u2} S R _inst_1 _inst_2] [_inst_6 : Module.{u3, u1} S A _inst_1 _inst_3] [_inst_7 : Module.{u3, u4} S N _inst_1 _inst_4] {{f : LinearMap.{u3, u3, max u1 u2, u4} S S _inst_1 _inst_1 (RingHom.id.{u3} S (Semiring.toNonAssocSemiring.{u3} S _inst_1)) (Unitization.{u2, u1} R A) N (Unitization.addCommMonoid.{u2, u1} R A _inst_2 _inst_3) _inst_4 (Unitization.module.{u3, u2, u1} S R A _inst_1 _inst_2 _inst_3 _inst_5 _inst_6) _inst_7}} {{g : LinearMap.{u3, u3, max u1 u2, u4} S S _inst_1 _inst_1 (RingHom.id.{u3} S (Semiring.toNonAssocSemiring.{u3} S _inst_1)) (Unitization.{u2, u1} R A) N (Unitization.addCommMonoid.{u2, u1} R A _inst_2 _inst_3) _inst_4 (Unitization.module.{u3, u2, u1} S R A _inst_1 _inst_2 _inst_3 _inst_5 _inst_6) _inst_7}}, (forall (r : R), Eq.{succ u4} ((fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6193 : Unitization.{u2, u1} R A) => N) (Unitization.inl.{u2, u1} R A (AddMonoid.toZero.{u1} A (AddCommMonoid.toAddMonoid.{u1} A _inst_3)) r)) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u4), max (succ u2) (succ u1), succ u4} (LinearMap.{u3, u3, max u1 u2, u4} S S _inst_1 _inst_1 (RingHom.id.{u3} S (Semiring.toNonAssocSemiring.{u3} S _inst_1)) (Unitization.{u2, u1} R A) N (Unitization.addCommMonoid.{u2, u1} R A _inst_2 _inst_3) _inst_4 (Unitization.module.{u3, u2, u1} S R A _inst_1 _inst_2 _inst_3 _inst_5 _inst_6) _inst_7) (Unitization.{u2, u1} R A) (fun (_x : Unitization.{u2, u1} R A) => (fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6193 : Unitization.{u2, u1} R A) => N) _x) (LinearMap.instFunLikeLinearMap.{u3, u3, max u2 u1, u4} S S (Unitization.{u2, u1} R A) N _inst_1 _inst_1 (Unitization.addCommMonoid.{u2, u1} R A _inst_2 _inst_3) _inst_4 (Unitization.module.{u3, u2, u1} S R A _inst_1 _inst_2 _inst_3 _inst_5 _inst_6) _inst_7 (RingHom.id.{u3} S (Semiring.toNonAssocSemiring.{u3} S _inst_1))) f (Unitization.inl.{u2, u1} R A (AddMonoid.toZero.{u1} A (AddCommMonoid.toAddMonoid.{u1} A _inst_3)) r)) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u4), max (succ u2) (succ u1), succ u4} (LinearMap.{u3, u3, max u1 u2, u4} S S _inst_1 _inst_1 (RingHom.id.{u3} S (Semiring.toNonAssocSemiring.{u3} S _inst_1)) (Unitization.{u2, u1} R A) N (Unitization.addCommMonoid.{u2, u1} R A _inst_2 _inst_3) _inst_4 (Unitization.module.{u3, u2, u1} S R A _inst_1 _inst_2 _inst_3 _inst_5 _inst_6) _inst_7) (Unitization.{u2, u1} R A) (fun (_x : Unitization.{u2, u1} R A) => (fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6193 : Unitization.{u2, u1} R A) => N) _x) (LinearMap.instFunLikeLinearMap.{u3, u3, max u2 u1, u4} S S (Unitization.{u2, u1} R A) N _inst_1 _inst_1 (Unitization.addCommMonoid.{u2, u1} R A _inst_2 _inst_3) _inst_4 (Unitization.module.{u3, u2, u1} S R A _inst_1 _inst_2 _inst_3 _inst_5 _inst_6) _inst_7 (RingHom.id.{u3} S (Semiring.toNonAssocSemiring.{u3} S _inst_1))) g (Unitization.inl.{u2, u1} R A (AddMonoid.toZero.{u1} A (AddCommMonoid.toAddMonoid.{u1} A _inst_3)) r))) -> (forall (a : A), Eq.{succ u4} ((fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6193 : Unitization.{u2, u1} R A) => N) (Unitization.inr.{u2, u1} R A (AddMonoid.toZero.{u2} R (AddCommMonoid.toAddMonoid.{u2} R _inst_2)) a)) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u4), max (succ u2) (succ u1), succ u4} (LinearMap.{u3, u3, max u1 u2, u4} S S _inst_1 _inst_1 (RingHom.id.{u3} S (Semiring.toNonAssocSemiring.{u3} S _inst_1)) (Unitization.{u2, u1} R A) N (Unitization.addCommMonoid.{u2, u1} R A _inst_2 _inst_3) _inst_4 (Unitization.module.{u3, u2, u1} S R A _inst_1 _inst_2 _inst_3 _inst_5 _inst_6) _inst_7) (Unitization.{u2, u1} R A) (fun (_x : Unitization.{u2, u1} R A) => (fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6193 : Unitization.{u2, u1} R A) => N) _x) (LinearMap.instFunLikeLinearMap.{u3, u3, max u2 u1, u4} S S (Unitization.{u2, u1} R A) N _inst_1 _inst_1 (Unitization.addCommMonoid.{u2, u1} R A _inst_2 _inst_3) _inst_4 (Unitization.module.{u3, u2, u1} S R A _inst_1 _inst_2 _inst_3 _inst_5 _inst_6) _inst_7 (RingHom.id.{u3} S (Semiring.toNonAssocSemiring.{u3} S _inst_1))) f (Unitization.inr.{u2, u1} R A (AddMonoid.toZero.{u2} R (AddCommMonoid.toAddMonoid.{u2} R _inst_2)) a)) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u4), max (succ u2) (succ u1), succ u4} (LinearMap.{u3, u3, max u1 u2, u4} S S _inst_1 _inst_1 (RingHom.id.{u3} S (Semiring.toNonAssocSemiring.{u3} S _inst_1)) (Unitization.{u2, u1} R A) N (Unitization.addCommMonoid.{u2, u1} R A _inst_2 _inst_3) _inst_4 (Unitization.module.{u3, u2, u1} S R A _inst_1 _inst_2 _inst_3 _inst_5 _inst_6) _inst_7) (Unitization.{u2, u1} R A) (fun (_x : Unitization.{u2, u1} R A) => (fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6193 : Unitization.{u2, u1} R A) => N) _x) (LinearMap.instFunLikeLinearMap.{u3, u3, max u2 u1, u4} S S (Unitization.{u2, u1} R A) N _inst_1 _inst_1 (Unitization.addCommMonoid.{u2, u1} R A _inst_2 _inst_3) _inst_4 (Unitization.module.{u3, u2, u1} S R A _inst_1 _inst_2 _inst_3 _inst_5 _inst_6) _inst_7 (RingHom.id.{u3} S (Semiring.toNonAssocSemiring.{u3} S _inst_1))) g (Unitization.inr.{u2, u1} R A (AddMonoid.toZero.{u2} R (AddCommMonoid.toAddMonoid.{u2} R _inst_2)) a))) -> (Eq.{max (max (succ u2) (succ u1)) (succ u4)} (LinearMap.{u3, u3, max u1 u2, u4} S S _inst_1 _inst_1 (RingHom.id.{u3} S (Semiring.toNonAssocSemiring.{u3} S _inst_1)) (Unitization.{u2, u1} R A) N (Unitization.addCommMonoid.{u2, u1} R A _inst_2 _inst_3) _inst_4 (Unitization.module.{u3, u2, u1} S R A _inst_1 _inst_2 _inst_3 _inst_5 _inst_6) _inst_7) f g)
 Case conversion may be inaccurate. Consider using '#align unitization.linear_map_ext Unitization.linearMap_extₓ'. -/
 /-- This cannot be marked `@[ext]` as it ends up being used instead of `linear_map.prod_ext` when
 working with `R × A`. -/
@@ -924,7 +924,7 @@ variable {S R A : Type _} [CommSemiring S] [CommSemiring R] [NonUnitalSemiring A
 lean 3 declaration is
   forall {S : Type.{u1}} {R : Type.{u2}} {A : Type.{u3}} [_inst_1 : CommSemiring.{u1} S] [_inst_2 : CommSemiring.{u2} R] [_inst_3 : NonUnitalSemiring.{u3} A] [_inst_4 : Module.{u2, u3} R A (CommSemiring.toSemiring.{u2} R _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u3} A _inst_3))] [_inst_5 : SMulCommClass.{u2, u3, u3} R A A (SMulZeroClass.toHasSmul.{u2, u3} R A (AddZeroClass.toHasZero.{u3} A (AddMonoid.toAddZeroClass.{u3} A (AddCommMonoid.toAddMonoid.{u3} A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u3} A _inst_3))))) (SMulWithZero.toSmulZeroClass.{u2, u3} R A (MulZeroClass.toHasZero.{u2} R (MulZeroOneClass.toMulZeroClass.{u2} R (MonoidWithZero.toMulZeroOneClass.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R _inst_2))))) (AddZeroClass.toHasZero.{u3} A (AddMonoid.toAddZeroClass.{u3} A (AddCommMonoid.toAddMonoid.{u3} A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u3} A _inst_3))))) (MulActionWithZero.toSMulWithZero.{u2, u3} R A (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R _inst_2)) (AddZeroClass.toHasZero.{u3} A (AddMonoid.toAddZeroClass.{u3} A (AddCommMonoid.toAddMonoid.{u3} A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u3} A _inst_3))))) (Module.toMulActionWithZero.{u2, u3} R A (CommSemiring.toSemiring.{u2} R _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u3} A _inst_3)) _inst_4)))) (Mul.toSMul.{u3} A (Distrib.toHasMul.{u3} A (NonUnitalNonAssocSemiring.toDistrib.{u3} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u3} A _inst_3))))] [_inst_6 : IsScalarTower.{u2, u3, u3} R A A (SMulZeroClass.toHasSmul.{u2, u3} R A (AddZeroClass.toHasZero.{u3} A (AddMonoid.toAddZeroClass.{u3} A (AddCommMonoid.toAddMonoid.{u3} A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u3} A _inst_3))))) (SMulWithZero.toSmulZeroClass.{u2, u3} R A (MulZeroClass.toHasZero.{u2} R (MulZeroOneClass.toMulZeroClass.{u2} R (MonoidWithZero.toMulZeroOneClass.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R _inst_2))))) (AddZeroClass.toHasZero.{u3} A (AddMonoid.toAddZeroClass.{u3} A (AddCommMonoid.toAddMonoid.{u3} A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u3} A _inst_3))))) (MulActionWithZero.toSMulWithZero.{u2, u3} R A (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R _inst_2)) (AddZeroClass.toHasZero.{u3} A (AddMonoid.toAddZeroClass.{u3} A (AddCommMonoid.toAddMonoid.{u3} A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u3} A _inst_3))))) (Module.toMulActionWithZero.{u2, u3} R A (CommSemiring.toSemiring.{u2} R _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u3} A _inst_3)) _inst_4)))) (Mul.toSMul.{u3} A (Distrib.toHasMul.{u3} A (NonUnitalNonAssocSemiring.toDistrib.{u3} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u3} A _inst_3)))) (SMulZeroClass.toHasSmul.{u2, u3} R A (AddZeroClass.toHasZero.{u3} A (AddMonoid.toAddZeroClass.{u3} A (AddCommMonoid.toAddMonoid.{u3} A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u3} A _inst_3))))) (SMulWithZero.toSmulZeroClass.{u2, u3} R A (MulZeroClass.toHasZero.{u2} R (MulZeroOneClass.toMulZeroClass.{u2} R (MonoidWithZero.toMulZeroOneClass.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R _inst_2))))) (AddZeroClass.toHasZero.{u3} A (AddMonoid.toAddZeroClass.{u3} A (AddCommMonoid.toAddMonoid.{u3} A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u3} A _inst_3))))) (MulActionWithZero.toSMulWithZero.{u2, u3} R A (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R _inst_2)) (AddZeroClass.toHasZero.{u3} A (AddMonoid.toAddZeroClass.{u3} A (AddCommMonoid.toAddMonoid.{u3} A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u3} A _inst_3))))) (Module.toMulActionWithZero.{u2, u3} R A (CommSemiring.toSemiring.{u2} R _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u3} A _inst_3)) _inst_4))))] {B : Type.{u4}} [_inst_7 : Semiring.{u4} B] [_inst_8 : Algebra.{u1, u4} S B _inst_1 _inst_7] [_inst_9 : Algebra.{u1, u2} S R _inst_1 (CommSemiring.toSemiring.{u2} R _inst_2)] [_inst_10 : DistribMulAction.{u1, u3} S A (MonoidWithZero.toMonoid.{u1} S (Semiring.toMonoidWithZero.{u1} S (CommSemiring.toSemiring.{u1} S _inst_1))) (AddCommMonoid.toAddMonoid.{u3} A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u3} A _inst_3)))] [_inst_11 : IsScalarTower.{u1, u2, u3} S R A (SMulZeroClass.toHasSmul.{u1, u2} S R (AddZeroClass.toHasZero.{u2} R (AddMonoid.toAddZeroClass.{u2} R (AddCommMonoid.toAddMonoid.{u2} R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_2))))))) (SMulWithZero.toSmulZeroClass.{u1, u2} S R (MulZeroClass.toHasZero.{u1} S (MulZeroOneClass.toMulZeroClass.{u1} S (MonoidWithZero.toMulZeroOneClass.{u1} S (Semiring.toMonoidWithZero.{u1} S (CommSemiring.toSemiring.{u1} S _inst_1))))) (AddZeroClass.toHasZero.{u2} R (AddMonoid.toAddZeroClass.{u2} R (AddCommMonoid.toAddMonoid.{u2} R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_2))))))) (MulActionWithZero.toSMulWithZero.{u1, u2} S R (Semiring.toMonoidWithZero.{u1} S (CommSemiring.toSemiring.{u1} S _inst_1)) (AddZeroClass.toHasZero.{u2} R (AddMonoid.toAddZeroClass.{u2} R (AddCommMonoid.toAddMonoid.{u2} R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_2))))))) (Module.toMulActionWithZero.{u1, u2} S R (CommSemiring.toSemiring.{u1} S _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_2)))) (Algebra.toModule.{u1, u2} S R _inst_1 (CommSemiring.toSemiring.{u2} R _inst_2) _inst_9))))) (SMulZeroClass.toHasSmul.{u2, u3} R A (AddZeroClass.toHasZero.{u3} A (AddMonoid.toAddZeroClass.{u3} A (AddCommMonoid.toAddMonoid.{u3} A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u3} A _inst_3))))) (SMulWithZero.toSmulZeroClass.{u2, u3} R A (MulZeroClass.toHasZero.{u2} R (MulZeroOneClass.toMulZeroClass.{u2} R (MonoidWithZero.toMulZeroOneClass.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R _inst_2))))) (AddZeroClass.toHasZero.{u3} A (AddMonoid.toAddZeroClass.{u3} A (AddCommMonoid.toAddMonoid.{u3} A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u3} A _inst_3))))) (MulActionWithZero.toSMulWithZero.{u2, u3} R A (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R _inst_2)) (AddZeroClass.toHasZero.{u3} A (AddMonoid.toAddZeroClass.{u3} A (AddCommMonoid.toAddMonoid.{u3} A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u3} A _inst_3))))) (Module.toMulActionWithZero.{u2, u3} R A (CommSemiring.toSemiring.{u2} R _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u3} A _inst_3)) _inst_4)))) (SMulZeroClass.toHasSmul.{u1, u3} S A (AddZeroClass.toHasZero.{u3} A (AddMonoid.toAddZeroClass.{u3} A (AddCommMonoid.toAddMonoid.{u3} A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u3} A _inst_3))))) (DistribSMul.toSmulZeroClass.{u1, u3} S A (AddMonoid.toAddZeroClass.{u3} A (AddCommMonoid.toAddMonoid.{u3} A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u3} A _inst_3)))) (DistribMulAction.toDistribSMul.{u1, u3} S A (MonoidWithZero.toMonoid.{u1} S (Semiring.toMonoidWithZero.{u1} S (CommSemiring.toSemiring.{u1} S _inst_1))) (AddCommMonoid.toAddMonoid.{u3} A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u3} A _inst_3))) _inst_10)))] {φ : AlgHom.{u1, max u2 u3, u4} S (Unitization.{u2, u3} R A) B _inst_1 (Unitization.semiring.{u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5) _inst_7 (Unitization.algebra.{u1, u2, u3} S R A _inst_1 _inst_2 _inst_3 _inst_4 _inst_6 _inst_5 _inst_9 _inst_10 _inst_11) _inst_8} {ψ : AlgHom.{u1, max u2 u3, u4} S (Unitization.{u2, u3} R A) B _inst_1 (Unitization.semiring.{u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5) _inst_7 (Unitization.algebra.{u1, u2, u3} S R A _inst_1 _inst_2 _inst_3 _inst_4 _inst_6 _inst_5 _inst_9 _inst_10 _inst_11) _inst_8}, (forall (a : A), Eq.{succ u4} B (coeFn.{max (succ (max u2 u3)) (succ u4), max (succ (max u2 u3)) (succ u4)} (AlgHom.{u1, max u2 u3, u4} S (Unitization.{u2, u3} R A) B _inst_1 (Unitization.semiring.{u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5) _inst_7 (Unitization.algebra.{u1, u2, u3} S R A _inst_1 _inst_2 _inst_3 _inst_4 _inst_6 _inst_5 _inst_9 _inst_10 _inst_11) _inst_8) (fun (_x : AlgHom.{u1, max u2 u3, u4} S (Unitization.{u2, u3} R A) B _inst_1 (Unitization.semiring.{u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5) _inst_7 (Unitization.algebra.{u1, u2, u3} S R A _inst_1 _inst_2 _inst_3 _inst_4 _inst_6 _inst_5 _inst_9 _inst_10 _inst_11) _inst_8) => (Unitization.{u2, u3} R A) -> B) ([anonymous].{u1, max u2 u3, u4} S (Unitization.{u2, u3} R A) B _inst_1 (Unitization.semiring.{u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5) _inst_7 (Unitization.algebra.{u1, u2, u3} S R A _inst_1 _inst_2 _inst_3 _inst_4 _inst_6 _inst_5 _inst_9 _inst_10 _inst_11) _inst_8) φ ((fun (a : Type.{u3}) (b : Sort.{max (succ u2) (succ u3)}) [self : HasLiftT.{succ u3, max (succ u2) (succ u3)} a b] => self.0) A (Unitization.{u2, u3} R A) (HasLiftT.mk.{succ u3, max (succ u2) (succ u3)} A (Unitization.{u2, u3} R A) (CoeTCₓ.coe.{succ u3, max (succ u2) (succ u3)} A (Unitization.{u2, u3} R A) (Unitization.hasCoeT.{u2, u3} R A (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_2)))))))) a)) (coeFn.{max (succ (max u2 u3)) (succ u4), max (succ (max u2 u3)) (succ u4)} (AlgHom.{u1, max u2 u3, u4} S (Unitization.{u2, u3} R A) B _inst_1 (Unitization.semiring.{u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5) _inst_7 (Unitization.algebra.{u1, u2, u3} S R A _inst_1 _inst_2 _inst_3 _inst_4 _inst_6 _inst_5 _inst_9 _inst_10 _inst_11) _inst_8) (fun (_x : AlgHom.{u1, max u2 u3, u4} S (Unitization.{u2, u3} R A) B _inst_1 (Unitization.semiring.{u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5) _inst_7 (Unitization.algebra.{u1, u2, u3} S R A _inst_1 _inst_2 _inst_3 _inst_4 _inst_6 _inst_5 _inst_9 _inst_10 _inst_11) _inst_8) => (Unitization.{u2, u3} R A) -> B) ([anonymous].{u1, max u2 u3, u4} S (Unitization.{u2, u3} R A) B _inst_1 (Unitization.semiring.{u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5) _inst_7 (Unitization.algebra.{u1, u2, u3} S R A _inst_1 _inst_2 _inst_3 _inst_4 _inst_6 _inst_5 _inst_9 _inst_10 _inst_11) _inst_8) ψ ((fun (a : Type.{u3}) (b : Sort.{max (succ u2) (succ u3)}) [self : HasLiftT.{succ u3, max (succ u2) (succ u3)} a b] => self.0) A (Unitization.{u2, u3} R A) (HasLiftT.mk.{succ u3, max (succ u2) (succ u3)} A (Unitization.{u2, u3} R A) (CoeTCₓ.coe.{succ u3, max (succ u2) (succ u3)} A (Unitization.{u2, u3} R A) (Unitization.hasCoeT.{u2, u3} R A (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_2)))))))) a))) -> (forall (r : R), Eq.{succ u4} B (coeFn.{max (succ (max u2 u3)) (succ u4), max (succ (max u2 u3)) (succ u4)} (AlgHom.{u1, max u2 u3, u4} S (Unitization.{u2, u3} R A) B _inst_1 (Unitization.semiring.{u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5) _inst_7 (Unitization.algebra.{u1, u2, u3} S R A _inst_1 _inst_2 _inst_3 _inst_4 _inst_6 _inst_5 _inst_9 _inst_10 _inst_11) _inst_8) (fun (_x : AlgHom.{u1, max u2 u3, u4} S (Unitization.{u2, u3} R A) B _inst_1 (Unitization.semiring.{u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5) _inst_7 (Unitization.algebra.{u1, u2, u3} S R A _inst_1 _inst_2 _inst_3 _inst_4 _inst_6 _inst_5 _inst_9 _inst_10 _inst_11) _inst_8) => (Unitization.{u2, u3} R A) -> B) ([anonymous].{u1, max u2 u3, u4} S (Unitization.{u2, u3} R A) B _inst_1 (Unitization.semiring.{u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5) _inst_7 (Unitization.algebra.{u1, u2, u3} S R A _inst_1 _inst_2 _inst_3 _inst_4 _inst_6 _inst_5 _inst_9 _inst_10 _inst_11) _inst_8) φ (coeFn.{max (succ u2) (succ (max u2 u3)), max (succ u2) (succ (max u2 u3))} (RingHom.{u2, max u2 u3} R (Unitization.{u2, u3} R A) (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_2)) (Semiring.toNonAssocSemiring.{max u2 u3} (Unitization.{u2, u3} R A) (Unitization.semiring.{u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5))) (fun (_x : RingHom.{u2, max u2 u3} R (Unitization.{u2, u3} R A) (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_2)) (Semiring.toNonAssocSemiring.{max u2 u3} (Unitization.{u2, u3} R A) (Unitization.semiring.{u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5))) => R -> (Unitization.{u2, u3} R A)) (RingHom.hasCoeToFun.{u2, max u2 u3} R (Unitization.{u2, u3} R A) (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_2)) (Semiring.toNonAssocSemiring.{max u2 u3} (Unitization.{u2, u3} R A) (Unitization.semiring.{u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5))) (algebraMap.{u2, max u2 u3} R (Unitization.{u2, u3} R A) _inst_2 (Unitization.semiring.{u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5) (Unitization.algebra.{u2, u2, u3} R R A _inst_2 _inst_2 _inst_3 _inst_4 _inst_6 _inst_5 (Algebra.id.{u2} R _inst_2) (Module.toDistribMulAction.{u2, u3} R A (CommSemiring.toSemiring.{u2} R _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u3} A _inst_3)) _inst_4) (IsScalarTower.left.{u2, u3} R A (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R _inst_2))) (MulActionWithZero.toMulAction.{u2, u3} R A (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R _inst_2)) (AddZeroClass.toHasZero.{u3} A (AddMonoid.toAddZeroClass.{u3} A (AddCommMonoid.toAddMonoid.{u3} A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u3} A _inst_3))))) (Module.toMulActionWithZero.{u2, u3} R A (CommSemiring.toSemiring.{u2} R _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u3} A _inst_3)) _inst_4))))) r)) (coeFn.{max (succ (max u2 u3)) (succ u4), max (succ (max u2 u3)) (succ u4)} (AlgHom.{u1, max u2 u3, u4} S (Unitization.{u2, u3} R A) B _inst_1 (Unitization.semiring.{u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5) _inst_7 (Unitization.algebra.{u1, u2, u3} S R A _inst_1 _inst_2 _inst_3 _inst_4 _inst_6 _inst_5 _inst_9 _inst_10 _inst_11) _inst_8) (fun (_x : AlgHom.{u1, max u2 u3, u4} S (Unitization.{u2, u3} R A) B _inst_1 (Unitization.semiring.{u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5) _inst_7 (Unitization.algebra.{u1, u2, u3} S R A _inst_1 _inst_2 _inst_3 _inst_4 _inst_6 _inst_5 _inst_9 _inst_10 _inst_11) _inst_8) => (Unitization.{u2, u3} R A) -> B) ([anonymous].{u1, max u2 u3, u4} S (Unitization.{u2, u3} R A) B _inst_1 (Unitization.semiring.{u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5) _inst_7 (Unitization.algebra.{u1, u2, u3} S R A _inst_1 _inst_2 _inst_3 _inst_4 _inst_6 _inst_5 _inst_9 _inst_10 _inst_11) _inst_8) ψ (coeFn.{max (succ u2) (succ (max u2 u3)), max (succ u2) (succ (max u2 u3))} (RingHom.{u2, max u2 u3} R (Unitization.{u2, u3} R A) (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_2)) (Semiring.toNonAssocSemiring.{max u2 u3} (Unitization.{u2, u3} R A) (Unitization.semiring.{u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5))) (fun (_x : RingHom.{u2, max u2 u3} R (Unitization.{u2, u3} R A) (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_2)) (Semiring.toNonAssocSemiring.{max u2 u3} (Unitization.{u2, u3} R A) (Unitization.semiring.{u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5))) => R -> (Unitization.{u2, u3} R A)) (RingHom.hasCoeToFun.{u2, max u2 u3} R (Unitization.{u2, u3} R A) (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_2)) (Semiring.toNonAssocSemiring.{max u2 u3} (Unitization.{u2, u3} R A) (Unitization.semiring.{u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5))) (algebraMap.{u2, max u2 u3} R (Unitization.{u2, u3} R A) _inst_2 (Unitization.semiring.{u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5) (Unitization.algebra.{u2, u2, u3} R R A _inst_2 _inst_2 _inst_3 _inst_4 _inst_6 _inst_5 (Algebra.id.{u2} R _inst_2) (Module.toDistribMulAction.{u2, u3} R A (CommSemiring.toSemiring.{u2} R _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u3} A _inst_3)) _inst_4) (IsScalarTower.left.{u2, u3} R A (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R _inst_2))) (MulActionWithZero.toMulAction.{u2, u3} R A (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R _inst_2)) (AddZeroClass.toHasZero.{u3} A (AddMonoid.toAddZeroClass.{u3} A (AddCommMonoid.toAddMonoid.{u3} A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u3} A _inst_3))))) (Module.toMulActionWithZero.{u2, u3} R A (CommSemiring.toSemiring.{u2} R _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u3} A _inst_3)) _inst_4))))) r))) -> (Eq.{max (succ (max u2 u3)) (succ u4)} (AlgHom.{u1, max u2 u3, u4} S (Unitization.{u2, u3} R A) B _inst_1 (Unitization.semiring.{u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5) _inst_7 (Unitization.algebra.{u1, u2, u3} S R A _inst_1 _inst_2 _inst_3 _inst_4 _inst_6 _inst_5 _inst_9 _inst_10 _inst_11) _inst_8) φ ψ)
 but is expected to have type
-  forall {S : Type.{u4}} {R : Type.{u2}} {A : Type.{u3}} [_inst_1 : CommSemiring.{u4} S] [_inst_2 : CommSemiring.{u2} R] [_inst_3 : NonUnitalSemiring.{u3} A] [_inst_4 : Module.{u2, u3} R A (CommSemiring.toSemiring.{u2} R _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u3} A _inst_3))] [_inst_5 : SMulCommClass.{u2, u3, u3} R A A (SMulZeroClass.toSMul.{u2, u3} R A (SemigroupWithZero.toZero.{u3} A (NonUnitalSemiring.toSemigroupWithZero.{u3} A _inst_3)) (SMulWithZero.toSMulZeroClass.{u2, u3} R A (CommMonoidWithZero.toZero.{u2} R (CommSemiring.toCommMonoidWithZero.{u2} R _inst_2)) (SemigroupWithZero.toZero.{u3} A (NonUnitalSemiring.toSemigroupWithZero.{u3} A _inst_3)) (MulActionWithZero.toSMulWithZero.{u2, u3} R A (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R _inst_2)) (SemigroupWithZero.toZero.{u3} A (NonUnitalSemiring.toSemigroupWithZero.{u3} A _inst_3)) (Module.toMulActionWithZero.{u2, u3} R A (CommSemiring.toSemiring.{u2} R _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u3} A _inst_3)) _inst_4)))) (SMulZeroClass.toSMul.{u3, u3} A A (SemigroupWithZero.toZero.{u3} A (NonUnitalSemiring.toSemigroupWithZero.{u3} A _inst_3)) (SMulWithZero.toSMulZeroClass.{u3, u3} A A (SemigroupWithZero.toZero.{u3} A (NonUnitalSemiring.toSemigroupWithZero.{u3} A _inst_3)) (SemigroupWithZero.toZero.{u3} A (NonUnitalSemiring.toSemigroupWithZero.{u3} A _inst_3)) (MulZeroClass.toSMulWithZero.{u3} A (NonUnitalNonAssocSemiring.toMulZeroClass.{u3} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u3} A _inst_3)))))] [_inst_6 : IsScalarTower.{u2, u3, u3} R A A (SMulZeroClass.toSMul.{u2, u3} R A (SemigroupWithZero.toZero.{u3} A (NonUnitalSemiring.toSemigroupWithZero.{u3} A _inst_3)) (SMulWithZero.toSMulZeroClass.{u2, u3} R A (CommMonoidWithZero.toZero.{u2} R (CommSemiring.toCommMonoidWithZero.{u2} R _inst_2)) (SemigroupWithZero.toZero.{u3} A (NonUnitalSemiring.toSemigroupWithZero.{u3} A _inst_3)) (MulActionWithZero.toSMulWithZero.{u2, u3} R A (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R _inst_2)) (SemigroupWithZero.toZero.{u3} A (NonUnitalSemiring.toSemigroupWithZero.{u3} A _inst_3)) (Module.toMulActionWithZero.{u2, u3} R A (CommSemiring.toSemiring.{u2} R _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u3} A _inst_3)) _inst_4)))) (SMulZeroClass.toSMul.{u3, u3} A A (SemigroupWithZero.toZero.{u3} A (NonUnitalSemiring.toSemigroupWithZero.{u3} A _inst_3)) (SMulWithZero.toSMulZeroClass.{u3, u3} A A (SemigroupWithZero.toZero.{u3} A (NonUnitalSemiring.toSemigroupWithZero.{u3} A _inst_3)) (SemigroupWithZero.toZero.{u3} A (NonUnitalSemiring.toSemigroupWithZero.{u3} A _inst_3)) (MulZeroClass.toSMulWithZero.{u3} A (NonUnitalNonAssocSemiring.toMulZeroClass.{u3} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u3} A _inst_3))))) (SMulZeroClass.toSMul.{u2, u3} R A (SemigroupWithZero.toZero.{u3} A (NonUnitalSemiring.toSemigroupWithZero.{u3} A _inst_3)) (SMulWithZero.toSMulZeroClass.{u2, u3} R A (CommMonoidWithZero.toZero.{u2} R (CommSemiring.toCommMonoidWithZero.{u2} R _inst_2)) (SemigroupWithZero.toZero.{u3} A (NonUnitalSemiring.toSemigroupWithZero.{u3} A _inst_3)) (MulActionWithZero.toSMulWithZero.{u2, u3} R A (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R _inst_2)) (SemigroupWithZero.toZero.{u3} A (NonUnitalSemiring.toSemigroupWithZero.{u3} A _inst_3)) (Module.toMulActionWithZero.{u2, u3} R A (CommSemiring.toSemiring.{u2} R _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u3} A _inst_3)) _inst_4))))] {B : Type.{u1}} [_inst_7 : Semiring.{u1} B] [_inst_8 : Algebra.{u4, u1} S B _inst_1 _inst_7] [_inst_9 : Algebra.{u4, u2} S R _inst_1 (CommSemiring.toSemiring.{u2} R _inst_2)] [_inst_10 : DistribMulAction.{u4, u3} S A (MonoidWithZero.toMonoid.{u4} S (Semiring.toMonoidWithZero.{u4} S (CommSemiring.toSemiring.{u4} S _inst_1))) (AddCommMonoid.toAddMonoid.{u3} A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u3} A _inst_3)))] [_inst_11 : IsScalarTower.{u4, u2, u3} S R A (Algebra.toSMul.{u4, u2} S R _inst_1 (CommSemiring.toSemiring.{u2} R _inst_2) _inst_9) (SMulZeroClass.toSMul.{u2, u3} R A (SemigroupWithZero.toZero.{u3} A (NonUnitalSemiring.toSemigroupWithZero.{u3} A _inst_3)) (SMulWithZero.toSMulZeroClass.{u2, u3} R A (CommMonoidWithZero.toZero.{u2} R (CommSemiring.toCommMonoidWithZero.{u2} R _inst_2)) (SemigroupWithZero.toZero.{u3} A (NonUnitalSemiring.toSemigroupWithZero.{u3} A _inst_3)) (MulActionWithZero.toSMulWithZero.{u2, u3} R A (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R _inst_2)) (SemigroupWithZero.toZero.{u3} A (NonUnitalSemiring.toSemigroupWithZero.{u3} A _inst_3)) (Module.toMulActionWithZero.{u2, u3} R A (CommSemiring.toSemiring.{u2} R _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u3} A _inst_3)) _inst_4)))) (SMulZeroClass.toSMul.{u4, u3} S A (SemigroupWithZero.toZero.{u3} A (NonUnitalSemiring.toSemigroupWithZero.{u3} A _inst_3)) (DistribSMul.toSMulZeroClass.{u4, u3} S A (AddMonoid.toAddZeroClass.{u3} A (AddCommMonoid.toAddMonoid.{u3} A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u3} A _inst_3)))) (DistribMulAction.toDistribSMul.{u4, u3} S A (MonoidWithZero.toMonoid.{u4} S (Semiring.toMonoidWithZero.{u4} S (CommSemiring.toSemiring.{u4} S _inst_1))) (AddCommMonoid.toAddMonoid.{u3} A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u3} A _inst_3))) _inst_10)))] {φ : AlgHom.{u4, max u3 u2, u1} S (Unitization.{u2, u3} R A) B _inst_1 (Unitization.semiring.{u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5) _inst_7 (Unitization.algebra.{u4, u2, u3} S R A _inst_1 _inst_2 _inst_3 _inst_4 _inst_6 _inst_5 _inst_9 _inst_10 _inst_11) _inst_8} {ψ : AlgHom.{u4, max u3 u2, u1} S (Unitization.{u2, u3} R A) B _inst_1 (Unitization.semiring.{u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5) _inst_7 (Unitization.algebra.{u4, u2, u3} S R A _inst_1 _inst_2 _inst_3 _inst_4 _inst_6 _inst_5 _inst_9 _inst_10 _inst_11) _inst_8}, (forall (a : A), Eq.{succ u1} ((fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : Unitization.{u2, u3} R A) => B) (Unitization.inr.{u2, u3} R A (CommMonoidWithZero.toZero.{u2} R (CommSemiring.toCommMonoidWithZero.{u2} R _inst_2)) a)) (FunLike.coe.{max (max (succ u2) (succ u3)) (succ u1), max (succ u2) (succ u3), succ u1} (AlgHom.{u4, max u3 u2, u1} S (Unitization.{u2, u3} R A) B _inst_1 (Unitization.semiring.{u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5) _inst_7 (Unitization.algebra.{u4, u2, u3} S R A _inst_1 _inst_2 _inst_3 _inst_4 _inst_6 _inst_5 _inst_9 _inst_10 _inst_11) _inst_8) (Unitization.{u2, u3} R A) (fun (_x : Unitization.{u2, u3} R A) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : Unitization.{u2, u3} R A) => B) _x) (SMulHomClass.toFunLike.{max (max u2 u3) u1, u4, max u2 u3, u1} (AlgHom.{u4, max u3 u2, u1} S (Unitization.{u2, u3} R A) B _inst_1 (Unitization.semiring.{u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5) _inst_7 (Unitization.algebra.{u4, u2, u3} S R A _inst_1 _inst_2 _inst_3 _inst_4 _inst_6 _inst_5 _inst_9 _inst_10 _inst_11) _inst_8) S (Unitization.{u2, u3} R A) B (SMulZeroClass.toSMul.{u4, max u2 u3} S (Unitization.{u2, u3} R A) (AddMonoid.toZero.{max u2 u3} (Unitization.{u2, u3} R A) (AddCommMonoid.toAddMonoid.{max u2 u3} (Unitization.{u2, u3} R A) (NonUnitalNonAssocSemiring.toAddCommMonoid.{max u2 u3} (Unitization.{u2, u3} R A) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{max u2 u3} (Unitization.{u2, u3} R A) (Semiring.toNonAssocSemiring.{max u2 u3} (Unitization.{u2, u3} R A) (Unitization.semiring.{u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5)))))) (DistribSMul.toSMulZeroClass.{u4, max u2 u3} S (Unitization.{u2, u3} R A) (AddMonoid.toAddZeroClass.{max u2 u3} (Unitization.{u2, u3} R A) (AddCommMonoid.toAddMonoid.{max u2 u3} (Unitization.{u2, u3} R A) (NonUnitalNonAssocSemiring.toAddCommMonoid.{max u2 u3} (Unitization.{u2, u3} R A) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{max u2 u3} (Unitization.{u2, u3} R A) (Semiring.toNonAssocSemiring.{max u2 u3} (Unitization.{u2, u3} R A) (Unitization.semiring.{u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5)))))) (DistribMulAction.toDistribSMul.{u4, max u2 u3} S (Unitization.{u2, u3} R A) (MonoidWithZero.toMonoid.{u4} S (Semiring.toMonoidWithZero.{u4} S (CommSemiring.toSemiring.{u4} S _inst_1))) (AddCommMonoid.toAddMonoid.{max u2 u3} (Unitization.{u2, u3} R A) (NonUnitalNonAssocSemiring.toAddCommMonoid.{max u2 u3} (Unitization.{u2, u3} R A) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{max u2 u3} (Unitization.{u2, u3} R A) (Semiring.toNonAssocSemiring.{max u2 u3} (Unitization.{u2, u3} R A) (Unitization.semiring.{u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5))))) (Module.toDistribMulAction.{u4, max u2 u3} S (Unitization.{u2, u3} R A) (CommSemiring.toSemiring.{u4} S _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{max u2 u3} (Unitization.{u2, u3} R A) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{max u2 u3} (Unitization.{u2, u3} R A) (Semiring.toNonAssocSemiring.{max u2 u3} (Unitization.{u2, u3} R A) (Unitization.semiring.{u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5)))) (Algebra.toModule.{u4, max u2 u3} S (Unitization.{u2, u3} R A) _inst_1 (Unitization.semiring.{u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5) (Unitization.algebra.{u4, u2, u3} S R A _inst_1 _inst_2 _inst_3 _inst_4 _inst_6 _inst_5 _inst_9 _inst_10 _inst_11)))))) (SMulZeroClass.toSMul.{u4, u1} S B (AddMonoid.toZero.{u1} B (AddCommMonoid.toAddMonoid.{u1} B (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} B (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} B (Semiring.toNonAssocSemiring.{u1} B _inst_7))))) (DistribSMul.toSMulZeroClass.{u4, u1} S B (AddMonoid.toAddZeroClass.{u1} B (AddCommMonoid.toAddMonoid.{u1} B (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} B (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} B (Semiring.toNonAssocSemiring.{u1} B _inst_7))))) (DistribMulAction.toDistribSMul.{u4, u1} S B (MonoidWithZero.toMonoid.{u4} S (Semiring.toMonoidWithZero.{u4} S (CommSemiring.toSemiring.{u4} S _inst_1))) (AddCommMonoid.toAddMonoid.{u1} B (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} B (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} B (Semiring.toNonAssocSemiring.{u1} B _inst_7)))) (Module.toDistribMulAction.{u4, u1} S B (CommSemiring.toSemiring.{u4} S _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} B (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} B (Semiring.toNonAssocSemiring.{u1} B _inst_7))) (Algebra.toModule.{u4, u1} S B _inst_1 _inst_7 _inst_8))))) (DistribMulActionHomClass.toSMulHomClass.{max (max u2 u3) u1, u4, max u2 u3, u1} (AlgHom.{u4, max u3 u2, u1} S (Unitization.{u2, u3} R A) B _inst_1 (Unitization.semiring.{u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5) _inst_7 (Unitization.algebra.{u4, u2, u3} S R A _inst_1 _inst_2 _inst_3 _inst_4 _inst_6 _inst_5 _inst_9 _inst_10 _inst_11) _inst_8) S (Unitization.{u2, u3} R A) B (MonoidWithZero.toMonoid.{u4} S (Semiring.toMonoidWithZero.{u4} S (CommSemiring.toSemiring.{u4} S _inst_1))) (AddCommMonoid.toAddMonoid.{max u2 u3} (Unitization.{u2, u3} R A) (NonUnitalNonAssocSemiring.toAddCommMonoid.{max u2 u3} (Unitization.{u2, u3} R A) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{max u2 u3} (Unitization.{u2, u3} R A) (Semiring.toNonAssocSemiring.{max u2 u3} (Unitization.{u2, u3} R A) (Unitization.semiring.{u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5))))) (AddCommMonoid.toAddMonoid.{u1} B (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} B (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} B (Semiring.toNonAssocSemiring.{u1} B _inst_7)))) (Module.toDistribMulAction.{u4, max u2 u3} S (Unitization.{u2, u3} R A) (CommSemiring.toSemiring.{u4} S _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{max u2 u3} (Unitization.{u2, u3} R A) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{max u2 u3} (Unitization.{u2, u3} R A) (Semiring.toNonAssocSemiring.{max u2 u3} (Unitization.{u2, u3} R A) (Unitization.semiring.{u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5)))) (Algebra.toModule.{u4, max u2 u3} S (Unitization.{u2, u3} R A) _inst_1 (Unitization.semiring.{u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5) (Unitization.algebra.{u4, u2, u3} S R A _inst_1 _inst_2 _inst_3 _inst_4 _inst_6 _inst_5 _inst_9 _inst_10 _inst_11))) (Module.toDistribMulAction.{u4, u1} S B (CommSemiring.toSemiring.{u4} S _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} B (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} B (Semiring.toNonAssocSemiring.{u1} B _inst_7))) (Algebra.toModule.{u4, u1} S B _inst_1 _inst_7 _inst_8)) (NonUnitalAlgHomClass.toDistribMulActionHomClass.{max (max u2 u3) u1, u4, max u2 u3, u1} (AlgHom.{u4, max u3 u2, u1} S (Unitization.{u2, u3} R A) B _inst_1 (Unitization.semiring.{u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5) _inst_7 (Unitization.algebra.{u4, u2, u3} S R A _inst_1 _inst_2 _inst_3 _inst_4 _inst_6 _inst_5 _inst_9 _inst_10 _inst_11) _inst_8) S (Unitization.{u2, u3} R A) B (MonoidWithZero.toMonoid.{u4} S (Semiring.toMonoidWithZero.{u4} S (CommSemiring.toSemiring.{u4} S _inst_1))) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{max u2 u3} (Unitization.{u2, u3} R A) (Semiring.toNonAssocSemiring.{max u2 u3} (Unitization.{u2, u3} R A) (Unitization.semiring.{u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5))) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} B (Semiring.toNonAssocSemiring.{u1} B _inst_7)) (Module.toDistribMulAction.{u4, max u2 u3} S (Unitization.{u2, u3} R A) (CommSemiring.toSemiring.{u4} S _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{max u2 u3} (Unitization.{u2, u3} R A) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{max u2 u3} (Unitization.{u2, u3} R A) (Semiring.toNonAssocSemiring.{max u2 u3} (Unitization.{u2, u3} R A) (Unitization.semiring.{u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5)))) (Algebra.toModule.{u4, max u2 u3} S (Unitization.{u2, u3} R A) _inst_1 (Unitization.semiring.{u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5) (Unitization.algebra.{u4, u2, u3} S R A _inst_1 _inst_2 _inst_3 _inst_4 _inst_6 _inst_5 _inst_9 _inst_10 _inst_11))) (Module.toDistribMulAction.{u4, u1} S B (CommSemiring.toSemiring.{u4} S _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} B (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} B (Semiring.toNonAssocSemiring.{u1} B _inst_7))) (Algebra.toModule.{u4, u1} S B _inst_1 _inst_7 _inst_8)) (AlgHom.instNonUnitalAlgHomClassToMonoidToMonoidWithZeroToSemiringToNonUnitalNonAssocSemiringToNonAssocSemiringToNonUnitalNonAssocSemiringToNonAssocSemiringToDistribMulActionToAddCommMonoidToModuleToDistribMulActionToAddCommMonoidToModule.{u4, max u2 u3, u1, max (max u2 u3) u1} S (Unitization.{u2, u3} R A) B _inst_1 (Unitization.semiring.{u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5) _inst_7 (Unitization.algebra.{u4, u2, u3} S R A _inst_1 _inst_2 _inst_3 _inst_4 _inst_6 _inst_5 _inst_9 _inst_10 _inst_11) _inst_8 (AlgHom.{u4, max u3 u2, u1} S (Unitization.{u2, u3} R A) B _inst_1 (Unitization.semiring.{u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5) _inst_7 (Unitization.algebra.{u4, u2, u3} S R A _inst_1 _inst_2 _inst_3 _inst_4 _inst_6 _inst_5 _inst_9 _inst_10 _inst_11) _inst_8) (AlgHom.algHomClass.{u4, max u2 u3, u1} S (Unitization.{u2, u3} R A) B _inst_1 (Unitization.semiring.{u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5) _inst_7 (Unitization.algebra.{u4, u2, u3} S R A _inst_1 _inst_2 _inst_3 _inst_4 _inst_6 _inst_5 _inst_9 _inst_10 _inst_11) _inst_8))))) φ (Unitization.inr.{u2, u3} R A (CommMonoidWithZero.toZero.{u2} R (CommSemiring.toCommMonoidWithZero.{u2} R _inst_2)) a)) (FunLike.coe.{max (max (succ u2) (succ u3)) (succ u1), max (succ u2) (succ u3), succ u1} (AlgHom.{u4, max u3 u2, u1} S (Unitization.{u2, u3} R A) B _inst_1 (Unitization.semiring.{u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5) _inst_7 (Unitization.algebra.{u4, u2, u3} S R A _inst_1 _inst_2 _inst_3 _inst_4 _inst_6 _inst_5 _inst_9 _inst_10 _inst_11) _inst_8) (Unitization.{u2, u3} R A) (fun (_x : Unitization.{u2, u3} R A) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : Unitization.{u2, u3} R A) => B) _x) (SMulHomClass.toFunLike.{max (max u2 u3) u1, u4, max u2 u3, u1} (AlgHom.{u4, max u3 u2, u1} S (Unitization.{u2, u3} R A) B _inst_1 (Unitization.semiring.{u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5) _inst_7 (Unitization.algebra.{u4, u2, u3} S R A _inst_1 _inst_2 _inst_3 _inst_4 _inst_6 _inst_5 _inst_9 _inst_10 _inst_11) _inst_8) S (Unitization.{u2, u3} R A) B (SMulZeroClass.toSMul.{u4, max u2 u3} S (Unitization.{u2, u3} R A) (AddMonoid.toZero.{max u2 u3} (Unitization.{u2, u3} R A) (AddCommMonoid.toAddMonoid.{max u2 u3} (Unitization.{u2, u3} R A) (NonUnitalNonAssocSemiring.toAddCommMonoid.{max u2 u3} (Unitization.{u2, u3} R A) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{max u2 u3} (Unitization.{u2, u3} R A) (Semiring.toNonAssocSemiring.{max u2 u3} (Unitization.{u2, u3} R A) (Unitization.semiring.{u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5)))))) (DistribSMul.toSMulZeroClass.{u4, max u2 u3} S (Unitization.{u2, u3} R A) (AddMonoid.toAddZeroClass.{max u2 u3} (Unitization.{u2, u3} R A) (AddCommMonoid.toAddMonoid.{max u2 u3} (Unitization.{u2, u3} R A) (NonUnitalNonAssocSemiring.toAddCommMonoid.{max u2 u3} (Unitization.{u2, u3} R A) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{max u2 u3} (Unitization.{u2, u3} R A) (Semiring.toNonAssocSemiring.{max u2 u3} (Unitization.{u2, u3} R A) (Unitization.semiring.{u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5)))))) (DistribMulAction.toDistribSMul.{u4, max u2 u3} S (Unitization.{u2, u3} R A) (MonoidWithZero.toMonoid.{u4} S (Semiring.toMonoidWithZero.{u4} S (CommSemiring.toSemiring.{u4} S _inst_1))) (AddCommMonoid.toAddMonoid.{max u2 u3} (Unitization.{u2, u3} R A) (NonUnitalNonAssocSemiring.toAddCommMonoid.{max u2 u3} (Unitization.{u2, u3} R A) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{max u2 u3} (Unitization.{u2, u3} R A) (Semiring.toNonAssocSemiring.{max u2 u3} (Unitization.{u2, u3} R A) (Unitization.semiring.{u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5))))) (Module.toDistribMulAction.{u4, max u2 u3} S (Unitization.{u2, u3} R A) (CommSemiring.toSemiring.{u4} S _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{max u2 u3} (Unitization.{u2, u3} R A) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{max u2 u3} (Unitization.{u2, u3} R A) (Semiring.toNonAssocSemiring.{max u2 u3} (Unitization.{u2, u3} R A) (Unitization.semiring.{u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5)))) (Algebra.toModule.{u4, max u2 u3} S (Unitization.{u2, u3} R A) _inst_1 (Unitization.semiring.{u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5) (Unitization.algebra.{u4, u2, u3} S R A _inst_1 _inst_2 _inst_3 _inst_4 _inst_6 _inst_5 _inst_9 _inst_10 _inst_11)))))) (SMulZeroClass.toSMul.{u4, u1} S B (AddMonoid.toZero.{u1} B (AddCommMonoid.toAddMonoid.{u1} B (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} B (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} B (Semiring.toNonAssocSemiring.{u1} B _inst_7))))) (DistribSMul.toSMulZeroClass.{u4, u1} S B (AddMonoid.toAddZeroClass.{u1} B (AddCommMonoid.toAddMonoid.{u1} B (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} B (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} B (Semiring.toNonAssocSemiring.{u1} B _inst_7))))) (DistribMulAction.toDistribSMul.{u4, u1} S B (MonoidWithZero.toMonoid.{u4} S (Semiring.toMonoidWithZero.{u4} S (CommSemiring.toSemiring.{u4} S _inst_1))) (AddCommMonoid.toAddMonoid.{u1} B (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} B (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} B (Semiring.toNonAssocSemiring.{u1} B _inst_7)))) (Module.toDistribMulAction.{u4, u1} S B (CommSemiring.toSemiring.{u4} S _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} B (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} B (Semiring.toNonAssocSemiring.{u1} B _inst_7))) (Algebra.toModule.{u4, u1} S B _inst_1 _inst_7 _inst_8))))) (DistribMulActionHomClass.toSMulHomClass.{max (max u2 u3) u1, u4, max u2 u3, u1} (AlgHom.{u4, max u3 u2, u1} S (Unitization.{u2, u3} R A) B _inst_1 (Unitization.semiring.{u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5) _inst_7 (Unitization.algebra.{u4, u2, u3} S R A _inst_1 _inst_2 _inst_3 _inst_4 _inst_6 _inst_5 _inst_9 _inst_10 _inst_11) _inst_8) S (Unitization.{u2, u3} R A) B (MonoidWithZero.toMonoid.{u4} S (Semiring.toMonoidWithZero.{u4} S (CommSemiring.toSemiring.{u4} S _inst_1))) (AddCommMonoid.toAddMonoid.{max u2 u3} (Unitization.{u2, u3} R A) (NonUnitalNonAssocSemiring.toAddCommMonoid.{max u2 u3} (Unitization.{u2, u3} R A) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{max u2 u3} (Unitization.{u2, u3} R A) (Semiring.toNonAssocSemiring.{max u2 u3} (Unitization.{u2, u3} R A) (Unitization.semiring.{u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5))))) (AddCommMonoid.toAddMonoid.{u1} B (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} B (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} B (Semiring.toNonAssocSemiring.{u1} B _inst_7)))) (Module.toDistribMulAction.{u4, max u2 u3} S (Unitization.{u2, u3} R A) (CommSemiring.toSemiring.{u4} S _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{max u2 u3} (Unitization.{u2, u3} R A) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{max u2 u3} (Unitization.{u2, u3} R A) (Semiring.toNonAssocSemiring.{max u2 u3} (Unitization.{u2, u3} R A) (Unitization.semiring.{u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5)))) (Algebra.toModule.{u4, max u2 u3} S (Unitization.{u2, u3} R A) _inst_1 (Unitization.semiring.{u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5) (Unitization.algebra.{u4, u2, u3} S R A _inst_1 _inst_2 _inst_3 _inst_4 _inst_6 _inst_5 _inst_9 _inst_10 _inst_11))) (Module.toDistribMulAction.{u4, u1} S B (CommSemiring.toSemiring.{u4} S _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} B (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} B (Semiring.toNonAssocSemiring.{u1} B _inst_7))) (Algebra.toModule.{u4, u1} S B _inst_1 _inst_7 _inst_8)) (NonUnitalAlgHomClass.toDistribMulActionHomClass.{max (max u2 u3) u1, u4, max u2 u3, u1} (AlgHom.{u4, max u3 u2, u1} S (Unitization.{u2, u3} R A) B _inst_1 (Unitization.semiring.{u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5) _inst_7 (Unitization.algebra.{u4, u2, u3} S R A _inst_1 _inst_2 _inst_3 _inst_4 _inst_6 _inst_5 _inst_9 _inst_10 _inst_11) _inst_8) S (Unitization.{u2, u3} R A) B (MonoidWithZero.toMonoid.{u4} S (Semiring.toMonoidWithZero.{u4} S (CommSemiring.toSemiring.{u4} S _inst_1))) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{max u2 u3} (Unitization.{u2, u3} R A) (Semiring.toNonAssocSemiring.{max u2 u3} (Unitization.{u2, u3} R A) (Unitization.semiring.{u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5))) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} B (Semiring.toNonAssocSemiring.{u1} B _inst_7)) (Module.toDistribMulAction.{u4, max u2 u3} S (Unitization.{u2, u3} R A) (CommSemiring.toSemiring.{u4} S _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{max u2 u3} (Unitization.{u2, u3} R A) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{max u2 u3} (Unitization.{u2, u3} R A) (Semiring.toNonAssocSemiring.{max u2 u3} (Unitization.{u2, u3} R A) (Unitization.semiring.{u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5)))) (Algebra.toModule.{u4, max u2 u3} S (Unitization.{u2, u3} R A) _inst_1 (Unitization.semiring.{u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5) (Unitization.algebra.{u4, u2, u3} S R A _inst_1 _inst_2 _inst_3 _inst_4 _inst_6 _inst_5 _inst_9 _inst_10 _inst_11))) (Module.toDistribMulAction.{u4, u1} S B (CommSemiring.toSemiring.{u4} S _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} B (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} B (Semiring.toNonAssocSemiring.{u1} B _inst_7))) (Algebra.toModule.{u4, u1} S B _inst_1 _inst_7 _inst_8)) (AlgHom.instNonUnitalAlgHomClassToMonoidToMonoidWithZeroToSemiringToNonUnitalNonAssocSemiringToNonAssocSemiringToNonUnitalNonAssocSemiringToNonAssocSemiringToDistribMulActionToAddCommMonoidToModuleToDistribMulActionToAddCommMonoidToModule.{u4, max u2 u3, u1, max (max u2 u3) u1} S (Unitization.{u2, u3} R A) B _inst_1 (Unitization.semiring.{u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5) _inst_7 (Unitization.algebra.{u4, u2, u3} S R A _inst_1 _inst_2 _inst_3 _inst_4 _inst_6 _inst_5 _inst_9 _inst_10 _inst_11) _inst_8 (AlgHom.{u4, max u3 u2, u1} S (Unitization.{u2, u3} R A) B _inst_1 (Unitization.semiring.{u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5) _inst_7 (Unitization.algebra.{u4, u2, u3} S R A _inst_1 _inst_2 _inst_3 _inst_4 _inst_6 _inst_5 _inst_9 _inst_10 _inst_11) _inst_8) (AlgHom.algHomClass.{u4, max u2 u3, u1} S (Unitization.{u2, u3} R A) B _inst_1 (Unitization.semiring.{u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5) _inst_7 (Unitization.algebra.{u4, u2, u3} S R A _inst_1 _inst_2 _inst_3 _inst_4 _inst_6 _inst_5 _inst_9 _inst_10 _inst_11) _inst_8))))) ψ (Unitization.inr.{u2, u3} R A (CommMonoidWithZero.toZero.{u2} R (CommSemiring.toCommMonoidWithZero.{u2} R _inst_2)) a))) -> (forall (r : R), Eq.{succ u1} ((fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : Unitization.{u2, u3} R A) => B) (FunLike.coe.{max (succ u2) (succ u3), succ u2, max (succ u2) (succ u3)} (RingHom.{u2, max u3 u2} R (Unitization.{u2, u3} R A) (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_2)) (Semiring.toNonAssocSemiring.{max u3 u2} (Unitization.{u2, u3} R A) (Unitization.semiring.{u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5))) R (fun (a : R) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : R) => Unitization.{u2, u3} R A) a) (MulHomClass.toFunLike.{max u2 u3, u2, max u2 u3} (RingHom.{u2, max u3 u2} R (Unitization.{u2, u3} R A) (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_2)) (Semiring.toNonAssocSemiring.{max u3 u2} (Unitization.{u2, u3} R A) (Unitization.semiring.{u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5))) R (Unitization.{u2, u3} R A) (NonUnitalNonAssocSemiring.toMul.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_2)))) (NonUnitalNonAssocSemiring.toMul.{max u2 u3} (Unitization.{u2, u3} R A) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{max u2 u3} (Unitization.{u2, u3} R A) (Semiring.toNonAssocSemiring.{max u3 u2} (Unitization.{u2, u3} R A) (Unitization.semiring.{u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5)))) (NonUnitalRingHomClass.toMulHomClass.{max u2 u3, u2, max u2 u3} (RingHom.{u2, max u3 u2} R (Unitization.{u2, u3} R A) (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_2)) (Semiring.toNonAssocSemiring.{max u3 u2} (Unitization.{u2, u3} R A) (Unitization.semiring.{u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5))) R (Unitization.{u2, u3} R A) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_2))) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{max u2 u3} (Unitization.{u2, u3} R A) (Semiring.toNonAssocSemiring.{max u3 u2} (Unitization.{u2, u3} R A) (Unitization.semiring.{u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5))) (RingHomClass.toNonUnitalRingHomClass.{max u2 u3, u2, max u2 u3} (RingHom.{u2, max u3 u2} R (Unitization.{u2, u3} R A) (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_2)) (Semiring.toNonAssocSemiring.{max u3 u2} (Unitization.{u2, u3} R A) (Unitization.semiring.{u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5))) R (Unitization.{u2, u3} R A) (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_2)) (Semiring.toNonAssocSemiring.{max u3 u2} (Unitization.{u2, u3} R A) (Unitization.semiring.{u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5)) (RingHom.instRingHomClassRingHom.{u2, max u2 u3} R (Unitization.{u2, u3} R A) (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_2)) (Semiring.toNonAssocSemiring.{max u3 u2} (Unitization.{u2, u3} R A) (Unitization.semiring.{u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5)))))) (algebraMap.{u2, max u3 u2} R (Unitization.{u2, u3} R A) _inst_2 (Unitization.semiring.{u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5) (Unitization.algebra.{u2, u2, u3} R R A _inst_2 _inst_2 _inst_3 _inst_4 _inst_6 _inst_5 (Algebra.id.{u2} R _inst_2) (Module.toDistribMulAction.{u2, u3} R A (CommSemiring.toSemiring.{u2} R _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u3} A _inst_3)) _inst_4) (IsScalarTower.left.{u2, u3} R A (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R _inst_2))) (MulActionWithZero.toMulAction.{u2, u3} R A (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R _inst_2)) (SemigroupWithZero.toZero.{u3} A (NonUnitalSemiring.toSemigroupWithZero.{u3} A _inst_3)) (Module.toMulActionWithZero.{u2, u3} R A (CommSemiring.toSemiring.{u2} R _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u3} A _inst_3)) _inst_4))))) r)) (FunLike.coe.{max (max (succ u2) (succ u3)) (succ u1), max (succ u2) (succ u3), succ u1} (AlgHom.{u4, max u3 u2, u1} S (Unitization.{u2, u3} R A) B _inst_1 (Unitization.semiring.{u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5) _inst_7 (Unitization.algebra.{u4, u2, u3} S R A _inst_1 _inst_2 _inst_3 _inst_4 _inst_6 _inst_5 _inst_9 _inst_10 _inst_11) _inst_8) (Unitization.{u2, u3} R A) (fun (_x : Unitization.{u2, u3} R A) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : Unitization.{u2, u3} R A) => B) _x) (SMulHomClass.toFunLike.{max (max u2 u3) u1, u4, max u2 u3, u1} (AlgHom.{u4, max u3 u2, u1} S (Unitization.{u2, u3} R A) B _inst_1 (Unitization.semiring.{u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5) _inst_7 (Unitization.algebra.{u4, u2, u3} S R A _inst_1 _inst_2 _inst_3 _inst_4 _inst_6 _inst_5 _inst_9 _inst_10 _inst_11) _inst_8) S (Unitization.{u2, u3} R A) B (SMulZeroClass.toSMul.{u4, max u2 u3} S (Unitization.{u2, u3} R A) (AddMonoid.toZero.{max u2 u3} (Unitization.{u2, u3} R A) (AddCommMonoid.toAddMonoid.{max u2 u3} (Unitization.{u2, u3} R A) (NonUnitalNonAssocSemiring.toAddCommMonoid.{max u2 u3} (Unitization.{u2, u3} R A) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{max u2 u3} (Unitization.{u2, u3} R A) (Semiring.toNonAssocSemiring.{max u2 u3} (Unitization.{u2, u3} R A) (Unitization.semiring.{u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5)))))) (DistribSMul.toSMulZeroClass.{u4, max u2 u3} S (Unitization.{u2, u3} R A) (AddMonoid.toAddZeroClass.{max u2 u3} (Unitization.{u2, u3} R A) (AddCommMonoid.toAddMonoid.{max u2 u3} (Unitization.{u2, u3} R A) (NonUnitalNonAssocSemiring.toAddCommMonoid.{max u2 u3} (Unitization.{u2, u3} R A) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{max u2 u3} (Unitization.{u2, u3} R A) (Semiring.toNonAssocSemiring.{max u2 u3} (Unitization.{u2, u3} R A) (Unitization.semiring.{u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5)))))) (DistribMulAction.toDistribSMul.{u4, max u2 u3} S (Unitization.{u2, u3} R A) (MonoidWithZero.toMonoid.{u4} S (Semiring.toMonoidWithZero.{u4} S (CommSemiring.toSemiring.{u4} S _inst_1))) (AddCommMonoid.toAddMonoid.{max u2 u3} (Unitization.{u2, u3} R A) (NonUnitalNonAssocSemiring.toAddCommMonoid.{max u2 u3} (Unitization.{u2, u3} R A) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{max u2 u3} (Unitization.{u2, u3} R A) (Semiring.toNonAssocSemiring.{max u2 u3} (Unitization.{u2, u3} R A) (Unitization.semiring.{u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5))))) (Module.toDistribMulAction.{u4, max u2 u3} S (Unitization.{u2, u3} R A) (CommSemiring.toSemiring.{u4} S _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{max u2 u3} (Unitization.{u2, u3} R A) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{max u2 u3} (Unitization.{u2, u3} R A) (Semiring.toNonAssocSemiring.{max u2 u3} (Unitization.{u2, u3} R A) (Unitization.semiring.{u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5)))) (Algebra.toModule.{u4, max u2 u3} S (Unitization.{u2, u3} R A) _inst_1 (Unitization.semiring.{u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5) (Unitization.algebra.{u4, u2, u3} S R A _inst_1 _inst_2 _inst_3 _inst_4 _inst_6 _inst_5 _inst_9 _inst_10 _inst_11)))))) (SMulZeroClass.toSMul.{u4, u1} S B (AddMonoid.toZero.{u1} B (AddCommMonoid.toAddMonoid.{u1} B (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} B (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} B (Semiring.toNonAssocSemiring.{u1} B _inst_7))))) (DistribSMul.toSMulZeroClass.{u4, u1} S B (AddMonoid.toAddZeroClass.{u1} B (AddCommMonoid.toAddMonoid.{u1} B (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} B (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} B (Semiring.toNonAssocSemiring.{u1} B _inst_7))))) (DistribMulAction.toDistribSMul.{u4, u1} S B (MonoidWithZero.toMonoid.{u4} S (Semiring.toMonoidWithZero.{u4} S (CommSemiring.toSemiring.{u4} S _inst_1))) (AddCommMonoid.toAddMonoid.{u1} B (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} B (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} B (Semiring.toNonAssocSemiring.{u1} B _inst_7)))) (Module.toDistribMulAction.{u4, u1} S B (CommSemiring.toSemiring.{u4} S _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} B (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} B (Semiring.toNonAssocSemiring.{u1} B _inst_7))) (Algebra.toModule.{u4, u1} S B _inst_1 _inst_7 _inst_8))))) (DistribMulActionHomClass.toSMulHomClass.{max (max u2 u3) u1, u4, max u2 u3, u1} (AlgHom.{u4, max u3 u2, u1} S (Unitization.{u2, u3} R A) B _inst_1 (Unitization.semiring.{u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5) _inst_7 (Unitization.algebra.{u4, u2, u3} S R A _inst_1 _inst_2 _inst_3 _inst_4 _inst_6 _inst_5 _inst_9 _inst_10 _inst_11) _inst_8) S (Unitization.{u2, u3} R A) B (MonoidWithZero.toMonoid.{u4} S (Semiring.toMonoidWithZero.{u4} S (CommSemiring.toSemiring.{u4} S _inst_1))) (AddCommMonoid.toAddMonoid.{max u2 u3} (Unitization.{u2, u3} R A) (NonUnitalNonAssocSemiring.toAddCommMonoid.{max u2 u3} (Unitization.{u2, u3} R A) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{max u2 u3} (Unitization.{u2, u3} R A) (Semiring.toNonAssocSemiring.{max u2 u3} (Unitization.{u2, u3} R A) (Unitization.semiring.{u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5))))) (AddCommMonoid.toAddMonoid.{u1} B (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} B (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} B (Semiring.toNonAssocSemiring.{u1} B _inst_7)))) (Module.toDistribMulAction.{u4, max u2 u3} S (Unitization.{u2, u3} R A) (CommSemiring.toSemiring.{u4} S _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{max u2 u3} (Unitization.{u2, u3} R A) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{max u2 u3} (Unitization.{u2, u3} R A) (Semiring.toNonAssocSemiring.{max u2 u3} (Unitization.{u2, u3} R A) (Unitization.semiring.{u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5)))) (Algebra.toModule.{u4, max u2 u3} S (Unitization.{u2, u3} R A) _inst_1 (Unitization.semiring.{u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5) (Unitization.algebra.{u4, u2, u3} S R A _inst_1 _inst_2 _inst_3 _inst_4 _inst_6 _inst_5 _inst_9 _inst_10 _inst_11))) (Module.toDistribMulAction.{u4, u1} S B (CommSemiring.toSemiring.{u4} S _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} B (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} B (Semiring.toNonAssocSemiring.{u1} B _inst_7))) (Algebra.toModule.{u4, u1} S B _inst_1 _inst_7 _inst_8)) (NonUnitalAlgHomClass.toDistribMulActionHomClass.{max (max u2 u3) u1, u4, max u2 u3, u1} (AlgHom.{u4, max u3 u2, u1} S (Unitization.{u2, u3} R A) B _inst_1 (Unitization.semiring.{u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5) _inst_7 (Unitization.algebra.{u4, u2, u3} S R A _inst_1 _inst_2 _inst_3 _inst_4 _inst_6 _inst_5 _inst_9 _inst_10 _inst_11) _inst_8) S (Unitization.{u2, u3} R A) B (MonoidWithZero.toMonoid.{u4} S (Semiring.toMonoidWithZero.{u4} S (CommSemiring.toSemiring.{u4} S _inst_1))) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{max u2 u3} (Unitization.{u2, u3} R A) (Semiring.toNonAssocSemiring.{max u2 u3} (Unitization.{u2, u3} R A) (Unitization.semiring.{u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5))) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} B (Semiring.toNonAssocSemiring.{u1} B _inst_7)) (Module.toDistribMulAction.{u4, max u2 u3} S (Unitization.{u2, u3} R A) (CommSemiring.toSemiring.{u4} S _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{max u2 u3} (Unitization.{u2, u3} R A) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{max u2 u3} (Unitization.{u2, u3} R A) (Semiring.toNonAssocSemiring.{max u2 u3} (Unitization.{u2, u3} R A) (Unitization.semiring.{u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5)))) (Algebra.toModule.{u4, max u2 u3} S (Unitization.{u2, u3} R A) _inst_1 (Unitization.semiring.{u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5) (Unitization.algebra.{u4, u2, u3} S R A _inst_1 _inst_2 _inst_3 _inst_4 _inst_6 _inst_5 _inst_9 _inst_10 _inst_11))) (Module.toDistribMulAction.{u4, u1} S B (CommSemiring.toSemiring.{u4} S _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} B (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} B (Semiring.toNonAssocSemiring.{u1} B _inst_7))) (Algebra.toModule.{u4, u1} S B _inst_1 _inst_7 _inst_8)) (AlgHom.instNonUnitalAlgHomClassToMonoidToMonoidWithZeroToSemiringToNonUnitalNonAssocSemiringToNonAssocSemiringToNonUnitalNonAssocSemiringToNonAssocSemiringToDistribMulActionToAddCommMonoidToModuleToDistribMulActionToAddCommMonoidToModule.{u4, max u2 u3, u1, max (max u2 u3) u1} S (Unitization.{u2, u3} R A) B _inst_1 (Unitization.semiring.{u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5) _inst_7 (Unitization.algebra.{u4, u2, u3} S R A _inst_1 _inst_2 _inst_3 _inst_4 _inst_6 _inst_5 _inst_9 _inst_10 _inst_11) _inst_8 (AlgHom.{u4, max u3 u2, u1} S (Unitization.{u2, u3} R A) B _inst_1 (Unitization.semiring.{u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5) _inst_7 (Unitization.algebra.{u4, u2, u3} S R A _inst_1 _inst_2 _inst_3 _inst_4 _inst_6 _inst_5 _inst_9 _inst_10 _inst_11) _inst_8) (AlgHom.algHomClass.{u4, max u2 u3, u1} S (Unitization.{u2, u3} R A) B _inst_1 (Unitization.semiring.{u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5) _inst_7 (Unitization.algebra.{u4, u2, u3} S R A _inst_1 _inst_2 _inst_3 _inst_4 _inst_6 _inst_5 _inst_9 _inst_10 _inst_11) _inst_8))))) φ (FunLike.coe.{max (succ u2) (succ u3), succ u2, max (succ u2) (succ u3)} (RingHom.{u2, max u3 u2} R (Unitization.{u2, u3} R A) (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_2)) (Semiring.toNonAssocSemiring.{max u3 u2} (Unitization.{u2, u3} R A) (Unitization.semiring.{u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5))) R (fun (_x : R) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : R) => Unitization.{u2, u3} R A) _x) (MulHomClass.toFunLike.{max u2 u3, u2, max u2 u3} (RingHom.{u2, max u3 u2} R (Unitization.{u2, u3} R A) (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_2)) (Semiring.toNonAssocSemiring.{max u3 u2} (Unitization.{u2, u3} R A) (Unitization.semiring.{u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5))) R (Unitization.{u2, u3} R A) (NonUnitalNonAssocSemiring.toMul.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_2)))) (NonUnitalNonAssocSemiring.toMul.{max u2 u3} (Unitization.{u2, u3} R A) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{max u2 u3} (Unitization.{u2, u3} R A) (Semiring.toNonAssocSemiring.{max u3 u2} (Unitization.{u2, u3} R A) (Unitization.semiring.{u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5)))) (NonUnitalRingHomClass.toMulHomClass.{max u2 u3, u2, max u2 u3} (RingHom.{u2, max u3 u2} R (Unitization.{u2, u3} R A) (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_2)) (Semiring.toNonAssocSemiring.{max u3 u2} (Unitization.{u2, u3} R A) (Unitization.semiring.{u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5))) R (Unitization.{u2, u3} R A) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_2))) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{max u2 u3} (Unitization.{u2, u3} R A) (Semiring.toNonAssocSemiring.{max u3 u2} (Unitization.{u2, u3} R A) (Unitization.semiring.{u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5))) (RingHomClass.toNonUnitalRingHomClass.{max u2 u3, u2, max u2 u3} (RingHom.{u2, max u3 u2} R (Unitization.{u2, u3} R A) (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_2)) (Semiring.toNonAssocSemiring.{max u3 u2} (Unitization.{u2, u3} R A) (Unitization.semiring.{u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5))) R (Unitization.{u2, u3} R A) (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_2)) (Semiring.toNonAssocSemiring.{max u3 u2} (Unitization.{u2, u3} R A) (Unitization.semiring.{u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5)) (RingHom.instRingHomClassRingHom.{u2, max u2 u3} R (Unitization.{u2, u3} R A) (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_2)) (Semiring.toNonAssocSemiring.{max u3 u2} (Unitization.{u2, u3} R A) (Unitization.semiring.{u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5)))))) (algebraMap.{u2, max u3 u2} R (Unitization.{u2, u3} R A) _inst_2 (Unitization.semiring.{u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5) (Unitization.algebra.{u2, u2, u3} R R A _inst_2 _inst_2 _inst_3 _inst_4 _inst_6 _inst_5 (Algebra.id.{u2} R _inst_2) (Module.toDistribMulAction.{u2, u3} R A (CommSemiring.toSemiring.{u2} R _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u3} A _inst_3)) _inst_4) (IsScalarTower.left.{u2, u3} R A (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R _inst_2))) (MulActionWithZero.toMulAction.{u2, u3} R A (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R _inst_2)) (SemigroupWithZero.toZero.{u3} A (NonUnitalSemiring.toSemigroupWithZero.{u3} A _inst_3)) (Module.toMulActionWithZero.{u2, u3} R A (CommSemiring.toSemiring.{u2} R _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u3} A _inst_3)) _inst_4))))) r)) (FunLike.coe.{max (max (succ u2) (succ u3)) (succ u1), max (succ u2) (succ u3), succ u1} (AlgHom.{u4, max u3 u2, u1} S (Unitization.{u2, u3} R A) B _inst_1 (Unitization.semiring.{u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5) _inst_7 (Unitization.algebra.{u4, u2, u3} S R A _inst_1 _inst_2 _inst_3 _inst_4 _inst_6 _inst_5 _inst_9 _inst_10 _inst_11) _inst_8) (Unitization.{u2, u3} R A) (fun (_x : Unitization.{u2, u3} R A) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : Unitization.{u2, u3} R A) => B) _x) (SMulHomClass.toFunLike.{max (max u2 u3) u1, u4, max u2 u3, u1} (AlgHom.{u4, max u3 u2, u1} S (Unitization.{u2, u3} R A) B _inst_1 (Unitization.semiring.{u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5) _inst_7 (Unitization.algebra.{u4, u2, u3} S R A _inst_1 _inst_2 _inst_3 _inst_4 _inst_6 _inst_5 _inst_9 _inst_10 _inst_11) _inst_8) S (Unitization.{u2, u3} R A) B (SMulZeroClass.toSMul.{u4, max u2 u3} S (Unitization.{u2, u3} R A) (AddMonoid.toZero.{max u2 u3} (Unitization.{u2, u3} R A) (AddCommMonoid.toAddMonoid.{max u2 u3} (Unitization.{u2, u3} R A) (NonUnitalNonAssocSemiring.toAddCommMonoid.{max u2 u3} (Unitization.{u2, u3} R A) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{max u2 u3} (Unitization.{u2, u3} R A) (Semiring.toNonAssocSemiring.{max u2 u3} (Unitization.{u2, u3} R A) (Unitization.semiring.{u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5)))))) (DistribSMul.toSMulZeroClass.{u4, max u2 u3} S (Unitization.{u2, u3} R A) (AddMonoid.toAddZeroClass.{max u2 u3} (Unitization.{u2, u3} R A) (AddCommMonoid.toAddMonoid.{max u2 u3} (Unitization.{u2, u3} R A) (NonUnitalNonAssocSemiring.toAddCommMonoid.{max u2 u3} (Unitization.{u2, u3} R A) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{max u2 u3} (Unitization.{u2, u3} R A) (Semiring.toNonAssocSemiring.{max u2 u3} (Unitization.{u2, u3} R A) (Unitization.semiring.{u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5)))))) (DistribMulAction.toDistribSMul.{u4, max u2 u3} S (Unitization.{u2, u3} R A) (MonoidWithZero.toMonoid.{u4} S (Semiring.toMonoidWithZero.{u4} S (CommSemiring.toSemiring.{u4} S _inst_1))) (AddCommMonoid.toAddMonoid.{max u2 u3} (Unitization.{u2, u3} R A) (NonUnitalNonAssocSemiring.toAddCommMonoid.{max u2 u3} (Unitization.{u2, u3} R A) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{max u2 u3} (Unitization.{u2, u3} R A) (Semiring.toNonAssocSemiring.{max u2 u3} (Unitization.{u2, u3} R A) (Unitization.semiring.{u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5))))) (Module.toDistribMulAction.{u4, max u2 u3} S (Unitization.{u2, u3} R A) (CommSemiring.toSemiring.{u4} S _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{max u2 u3} (Unitization.{u2, u3} R A) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{max u2 u3} (Unitization.{u2, u3} R A) (Semiring.toNonAssocSemiring.{max u2 u3} (Unitization.{u2, u3} R A) (Unitization.semiring.{u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5)))) (Algebra.toModule.{u4, max u2 u3} S (Unitization.{u2, u3} R A) _inst_1 (Unitization.semiring.{u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5) (Unitization.algebra.{u4, u2, u3} S R A _inst_1 _inst_2 _inst_3 _inst_4 _inst_6 _inst_5 _inst_9 _inst_10 _inst_11)))))) (SMulZeroClass.toSMul.{u4, u1} S B (AddMonoid.toZero.{u1} B (AddCommMonoid.toAddMonoid.{u1} B (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} B (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} B (Semiring.toNonAssocSemiring.{u1} B _inst_7))))) (DistribSMul.toSMulZeroClass.{u4, u1} S B (AddMonoid.toAddZeroClass.{u1} B (AddCommMonoid.toAddMonoid.{u1} B (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} B (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} B (Semiring.toNonAssocSemiring.{u1} B _inst_7))))) (DistribMulAction.toDistribSMul.{u4, u1} S B (MonoidWithZero.toMonoid.{u4} S (Semiring.toMonoidWithZero.{u4} S (CommSemiring.toSemiring.{u4} S _inst_1))) (AddCommMonoid.toAddMonoid.{u1} B (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} B (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} B (Semiring.toNonAssocSemiring.{u1} B _inst_7)))) (Module.toDistribMulAction.{u4, u1} S B (CommSemiring.toSemiring.{u4} S _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} B (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} B (Semiring.toNonAssocSemiring.{u1} B _inst_7))) (Algebra.toModule.{u4, u1} S B _inst_1 _inst_7 _inst_8))))) (DistribMulActionHomClass.toSMulHomClass.{max (max u2 u3) u1, u4, max u2 u3, u1} (AlgHom.{u4, max u3 u2, u1} S (Unitization.{u2, u3} R A) B _inst_1 (Unitization.semiring.{u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5) _inst_7 (Unitization.algebra.{u4, u2, u3} S R A _inst_1 _inst_2 _inst_3 _inst_4 _inst_6 _inst_5 _inst_9 _inst_10 _inst_11) _inst_8) S (Unitization.{u2, u3} R A) B (MonoidWithZero.toMonoid.{u4} S (Semiring.toMonoidWithZero.{u4} S (CommSemiring.toSemiring.{u4} S _inst_1))) (AddCommMonoid.toAddMonoid.{max u2 u3} (Unitization.{u2, u3} R A) (NonUnitalNonAssocSemiring.toAddCommMonoid.{max u2 u3} (Unitization.{u2, u3} R A) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{max u2 u3} (Unitization.{u2, u3} R A) (Semiring.toNonAssocSemiring.{max u2 u3} (Unitization.{u2, u3} R A) (Unitization.semiring.{u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5))))) (AddCommMonoid.toAddMonoid.{u1} B (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} B (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} B (Semiring.toNonAssocSemiring.{u1} B _inst_7)))) (Module.toDistribMulAction.{u4, max u2 u3} S (Unitization.{u2, u3} R A) (CommSemiring.toSemiring.{u4} S _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{max u2 u3} (Unitization.{u2, u3} R A) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{max u2 u3} (Unitization.{u2, u3} R A) (Semiring.toNonAssocSemiring.{max u2 u3} (Unitization.{u2, u3} R A) (Unitization.semiring.{u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5)))) (Algebra.toModule.{u4, max u2 u3} S (Unitization.{u2, u3} R A) _inst_1 (Unitization.semiring.{u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5) (Unitization.algebra.{u4, u2, u3} S R A _inst_1 _inst_2 _inst_3 _inst_4 _inst_6 _inst_5 _inst_9 _inst_10 _inst_11))) (Module.toDistribMulAction.{u4, u1} S B (CommSemiring.toSemiring.{u4} S _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} B (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} B (Semiring.toNonAssocSemiring.{u1} B _inst_7))) (Algebra.toModule.{u4, u1} S B _inst_1 _inst_7 _inst_8)) (NonUnitalAlgHomClass.toDistribMulActionHomClass.{max (max u2 u3) u1, u4, max u2 u3, u1} (AlgHom.{u4, max u3 u2, u1} S (Unitization.{u2, u3} R A) B _inst_1 (Unitization.semiring.{u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5) _inst_7 (Unitization.algebra.{u4, u2, u3} S R A _inst_1 _inst_2 _inst_3 _inst_4 _inst_6 _inst_5 _inst_9 _inst_10 _inst_11) _inst_8) S (Unitization.{u2, u3} R A) B (MonoidWithZero.toMonoid.{u4} S (Semiring.toMonoidWithZero.{u4} S (CommSemiring.toSemiring.{u4} S _inst_1))) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{max u2 u3} (Unitization.{u2, u3} R A) (Semiring.toNonAssocSemiring.{max u2 u3} (Unitization.{u2, u3} R A) (Unitization.semiring.{u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5))) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} B (Semiring.toNonAssocSemiring.{u1} B _inst_7)) (Module.toDistribMulAction.{u4, max u2 u3} S (Unitization.{u2, u3} R A) (CommSemiring.toSemiring.{u4} S _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{max u2 u3} (Unitization.{u2, u3} R A) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{max u2 u3} (Unitization.{u2, u3} R A) (Semiring.toNonAssocSemiring.{max u2 u3} (Unitization.{u2, u3} R A) (Unitization.semiring.{u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5)))) (Algebra.toModule.{u4, max u2 u3} S (Unitization.{u2, u3} R A) _inst_1 (Unitization.semiring.{u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5) (Unitization.algebra.{u4, u2, u3} S R A _inst_1 _inst_2 _inst_3 _inst_4 _inst_6 _inst_5 _inst_9 _inst_10 _inst_11))) (Module.toDistribMulAction.{u4, u1} S B (CommSemiring.toSemiring.{u4} S _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} B (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} B (Semiring.toNonAssocSemiring.{u1} B _inst_7))) (Algebra.toModule.{u4, u1} S B _inst_1 _inst_7 _inst_8)) (AlgHom.instNonUnitalAlgHomClassToMonoidToMonoidWithZeroToSemiringToNonUnitalNonAssocSemiringToNonAssocSemiringToNonUnitalNonAssocSemiringToNonAssocSemiringToDistribMulActionToAddCommMonoidToModuleToDistribMulActionToAddCommMonoidToModule.{u4, max u2 u3, u1, max (max u2 u3) u1} S (Unitization.{u2, u3} R A) B _inst_1 (Unitization.semiring.{u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5) _inst_7 (Unitization.algebra.{u4, u2, u3} S R A _inst_1 _inst_2 _inst_3 _inst_4 _inst_6 _inst_5 _inst_9 _inst_10 _inst_11) _inst_8 (AlgHom.{u4, max u3 u2, u1} S (Unitization.{u2, u3} R A) B _inst_1 (Unitization.semiring.{u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5) _inst_7 (Unitization.algebra.{u4, u2, u3} S R A _inst_1 _inst_2 _inst_3 _inst_4 _inst_6 _inst_5 _inst_9 _inst_10 _inst_11) _inst_8) (AlgHom.algHomClass.{u4, max u2 u3, u1} S (Unitization.{u2, u3} R A) B _inst_1 (Unitization.semiring.{u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5) _inst_7 (Unitization.algebra.{u4, u2, u3} S R A _inst_1 _inst_2 _inst_3 _inst_4 _inst_6 _inst_5 _inst_9 _inst_10 _inst_11) _inst_8))))) ψ (FunLike.coe.{max (succ u2) (succ u3), succ u2, max (succ u2) (succ u3)} (RingHom.{u2, max u3 u2} R (Unitization.{u2, u3} R A) (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_2)) (Semiring.toNonAssocSemiring.{max u3 u2} (Unitization.{u2, u3} R A) (Unitization.semiring.{u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5))) R (fun (_x : R) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : R) => Unitization.{u2, u3} R A) _x) (MulHomClass.toFunLike.{max u2 u3, u2, max u2 u3} (RingHom.{u2, max u3 u2} R (Unitization.{u2, u3} R A) (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_2)) (Semiring.toNonAssocSemiring.{max u3 u2} (Unitization.{u2, u3} R A) (Unitization.semiring.{u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5))) R (Unitization.{u2, u3} R A) (NonUnitalNonAssocSemiring.toMul.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_2)))) (NonUnitalNonAssocSemiring.toMul.{max u2 u3} (Unitization.{u2, u3} R A) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{max u2 u3} (Unitization.{u2, u3} R A) (Semiring.toNonAssocSemiring.{max u3 u2} (Unitization.{u2, u3} R A) (Unitization.semiring.{u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5)))) (NonUnitalRingHomClass.toMulHomClass.{max u2 u3, u2, max u2 u3} (RingHom.{u2, max u3 u2} R (Unitization.{u2, u3} R A) (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_2)) (Semiring.toNonAssocSemiring.{max u3 u2} (Unitization.{u2, u3} R A) (Unitization.semiring.{u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5))) R (Unitization.{u2, u3} R A) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_2))) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{max u2 u3} (Unitization.{u2, u3} R A) (Semiring.toNonAssocSemiring.{max u3 u2} (Unitization.{u2, u3} R A) (Unitization.semiring.{u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5))) (RingHomClass.toNonUnitalRingHomClass.{max u2 u3, u2, max u2 u3} (RingHom.{u2, max u3 u2} R (Unitization.{u2, u3} R A) (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_2)) (Semiring.toNonAssocSemiring.{max u3 u2} (Unitization.{u2, u3} R A) (Unitization.semiring.{u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5))) R (Unitization.{u2, u3} R A) (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_2)) (Semiring.toNonAssocSemiring.{max u3 u2} (Unitization.{u2, u3} R A) (Unitization.semiring.{u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5)) (RingHom.instRingHomClassRingHom.{u2, max u2 u3} R (Unitization.{u2, u3} R A) (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_2)) (Semiring.toNonAssocSemiring.{max u3 u2} (Unitization.{u2, u3} R A) (Unitization.semiring.{u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5)))))) (algebraMap.{u2, max u3 u2} R (Unitization.{u2, u3} R A) _inst_2 (Unitization.semiring.{u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5) (Unitization.algebra.{u2, u2, u3} R R A _inst_2 _inst_2 _inst_3 _inst_4 _inst_6 _inst_5 (Algebra.id.{u2} R _inst_2) (Module.toDistribMulAction.{u2, u3} R A (CommSemiring.toSemiring.{u2} R _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u3} A _inst_3)) _inst_4) (IsScalarTower.left.{u2, u3} R A (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R _inst_2))) (MulActionWithZero.toMulAction.{u2, u3} R A (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R _inst_2)) (SemigroupWithZero.toZero.{u3} A (NonUnitalSemiring.toSemigroupWithZero.{u3} A _inst_3)) (Module.toMulActionWithZero.{u2, u3} R A (CommSemiring.toSemiring.{u2} R _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u3} A _inst_3)) _inst_4))))) r))) -> (Eq.{max (max (succ u2) (succ u3)) (succ u1)} (AlgHom.{u4, max u3 u2, u1} S (Unitization.{u2, u3} R A) B _inst_1 (Unitization.semiring.{u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5) _inst_7 (Unitization.algebra.{u4, u2, u3} S R A _inst_1 _inst_2 _inst_3 _inst_4 _inst_6 _inst_5 _inst_9 _inst_10 _inst_11) _inst_8) φ ψ)
+  forall {S : Type.{u4}} {R : Type.{u2}} {A : Type.{u3}} [_inst_1 : CommSemiring.{u4} S] [_inst_2 : CommSemiring.{u2} R] [_inst_3 : NonUnitalSemiring.{u3} A] [_inst_4 : Module.{u2, u3} R A (CommSemiring.toSemiring.{u2} R _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u3} A _inst_3))] [_inst_5 : SMulCommClass.{u2, u3, u3} R A A (SMulZeroClass.toSMul.{u2, u3} R A (SemigroupWithZero.toZero.{u3} A (NonUnitalSemiring.toSemigroupWithZero.{u3} A _inst_3)) (SMulWithZero.toSMulZeroClass.{u2, u3} R A (CommMonoidWithZero.toZero.{u2} R (CommSemiring.toCommMonoidWithZero.{u2} R _inst_2)) (SemigroupWithZero.toZero.{u3} A (NonUnitalSemiring.toSemigroupWithZero.{u3} A _inst_3)) (MulActionWithZero.toSMulWithZero.{u2, u3} R A (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R _inst_2)) (SemigroupWithZero.toZero.{u3} A (NonUnitalSemiring.toSemigroupWithZero.{u3} A _inst_3)) (Module.toMulActionWithZero.{u2, u3} R A (CommSemiring.toSemiring.{u2} R _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u3} A _inst_3)) _inst_4)))) (SMulZeroClass.toSMul.{u3, u3} A A (SemigroupWithZero.toZero.{u3} A (NonUnitalSemiring.toSemigroupWithZero.{u3} A _inst_3)) (SMulWithZero.toSMulZeroClass.{u3, u3} A A (SemigroupWithZero.toZero.{u3} A (NonUnitalSemiring.toSemigroupWithZero.{u3} A _inst_3)) (SemigroupWithZero.toZero.{u3} A (NonUnitalSemiring.toSemigroupWithZero.{u3} A _inst_3)) (MulZeroClass.toSMulWithZero.{u3} A (NonUnitalNonAssocSemiring.toMulZeroClass.{u3} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u3} A _inst_3)))))] [_inst_6 : IsScalarTower.{u2, u3, u3} R A A (SMulZeroClass.toSMul.{u2, u3} R A (SemigroupWithZero.toZero.{u3} A (NonUnitalSemiring.toSemigroupWithZero.{u3} A _inst_3)) (SMulWithZero.toSMulZeroClass.{u2, u3} R A (CommMonoidWithZero.toZero.{u2} R (CommSemiring.toCommMonoidWithZero.{u2} R _inst_2)) (SemigroupWithZero.toZero.{u3} A (NonUnitalSemiring.toSemigroupWithZero.{u3} A _inst_3)) (MulActionWithZero.toSMulWithZero.{u2, u3} R A (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R _inst_2)) (SemigroupWithZero.toZero.{u3} A (NonUnitalSemiring.toSemigroupWithZero.{u3} A _inst_3)) (Module.toMulActionWithZero.{u2, u3} R A (CommSemiring.toSemiring.{u2} R _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u3} A _inst_3)) _inst_4)))) (SMulZeroClass.toSMul.{u3, u3} A A (SemigroupWithZero.toZero.{u3} A (NonUnitalSemiring.toSemigroupWithZero.{u3} A _inst_3)) (SMulWithZero.toSMulZeroClass.{u3, u3} A A (SemigroupWithZero.toZero.{u3} A (NonUnitalSemiring.toSemigroupWithZero.{u3} A _inst_3)) (SemigroupWithZero.toZero.{u3} A (NonUnitalSemiring.toSemigroupWithZero.{u3} A _inst_3)) (MulZeroClass.toSMulWithZero.{u3} A (NonUnitalNonAssocSemiring.toMulZeroClass.{u3} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u3} A _inst_3))))) (SMulZeroClass.toSMul.{u2, u3} R A (SemigroupWithZero.toZero.{u3} A (NonUnitalSemiring.toSemigroupWithZero.{u3} A _inst_3)) (SMulWithZero.toSMulZeroClass.{u2, u3} R A (CommMonoidWithZero.toZero.{u2} R (CommSemiring.toCommMonoidWithZero.{u2} R _inst_2)) (SemigroupWithZero.toZero.{u3} A (NonUnitalSemiring.toSemigroupWithZero.{u3} A _inst_3)) (MulActionWithZero.toSMulWithZero.{u2, u3} R A (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R _inst_2)) (SemigroupWithZero.toZero.{u3} A (NonUnitalSemiring.toSemigroupWithZero.{u3} A _inst_3)) (Module.toMulActionWithZero.{u2, u3} R A (CommSemiring.toSemiring.{u2} R _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u3} A _inst_3)) _inst_4))))] {B : Type.{u1}} [_inst_7 : Semiring.{u1} B] [_inst_8 : Algebra.{u4, u1} S B _inst_1 _inst_7] [_inst_9 : Algebra.{u4, u2} S R _inst_1 (CommSemiring.toSemiring.{u2} R _inst_2)] [_inst_10 : DistribMulAction.{u4, u3} S A (MonoidWithZero.toMonoid.{u4} S (Semiring.toMonoidWithZero.{u4} S (CommSemiring.toSemiring.{u4} S _inst_1))) (AddCommMonoid.toAddMonoid.{u3} A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u3} A _inst_3)))] [_inst_11 : IsScalarTower.{u4, u2, u3} S R A (Algebra.toSMul.{u4, u2} S R _inst_1 (CommSemiring.toSemiring.{u2} R _inst_2) _inst_9) (SMulZeroClass.toSMul.{u2, u3} R A (SemigroupWithZero.toZero.{u3} A (NonUnitalSemiring.toSemigroupWithZero.{u3} A _inst_3)) (SMulWithZero.toSMulZeroClass.{u2, u3} R A (CommMonoidWithZero.toZero.{u2} R (CommSemiring.toCommMonoidWithZero.{u2} R _inst_2)) (SemigroupWithZero.toZero.{u3} A (NonUnitalSemiring.toSemigroupWithZero.{u3} A _inst_3)) (MulActionWithZero.toSMulWithZero.{u2, u3} R A (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R _inst_2)) (SemigroupWithZero.toZero.{u3} A (NonUnitalSemiring.toSemigroupWithZero.{u3} A _inst_3)) (Module.toMulActionWithZero.{u2, u3} R A (CommSemiring.toSemiring.{u2} R _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u3} A _inst_3)) _inst_4)))) (SMulZeroClass.toSMul.{u4, u3} S A (SemigroupWithZero.toZero.{u3} A (NonUnitalSemiring.toSemigroupWithZero.{u3} A _inst_3)) (DistribSMul.toSMulZeroClass.{u4, u3} S A (AddMonoid.toAddZeroClass.{u3} A (AddCommMonoid.toAddMonoid.{u3} A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u3} A _inst_3)))) (DistribMulAction.toDistribSMul.{u4, u3} S A (MonoidWithZero.toMonoid.{u4} S (Semiring.toMonoidWithZero.{u4} S (CommSemiring.toSemiring.{u4} S _inst_1))) (AddCommMonoid.toAddMonoid.{u3} A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u3} A _inst_3))) _inst_10)))] {φ : AlgHom.{u4, max u3 u2, u1} S (Unitization.{u2, u3} R A) B _inst_1 (Unitization.semiring.{u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5) _inst_7 (Unitization.algebra.{u4, u2, u3} S R A _inst_1 _inst_2 _inst_3 _inst_4 _inst_6 _inst_5 _inst_9 _inst_10 _inst_11) _inst_8} {ψ : AlgHom.{u4, max u3 u2, u1} S (Unitization.{u2, u3} R A) B _inst_1 (Unitization.semiring.{u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5) _inst_7 (Unitization.algebra.{u4, u2, u3} S R A _inst_1 _inst_2 _inst_3 _inst_4 _inst_6 _inst_5 _inst_9 _inst_10 _inst_11) _inst_8}, (forall (a : A), Eq.{succ u1} ((fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2187 : Unitization.{u2, u3} R A) => B) (Unitization.inr.{u2, u3} R A (CommMonoidWithZero.toZero.{u2} R (CommSemiring.toCommMonoidWithZero.{u2} R _inst_2)) a)) (FunLike.coe.{max (max (succ u2) (succ u3)) (succ u1), max (succ u2) (succ u3), succ u1} (AlgHom.{u4, max u3 u2, u1} S (Unitization.{u2, u3} R A) B _inst_1 (Unitization.semiring.{u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5) _inst_7 (Unitization.algebra.{u4, u2, u3} S R A _inst_1 _inst_2 _inst_3 _inst_4 _inst_6 _inst_5 _inst_9 _inst_10 _inst_11) _inst_8) (Unitization.{u2, u3} R A) (fun (_x : Unitization.{u2, u3} R A) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2187 : Unitization.{u2, u3} R A) => B) _x) (SMulHomClass.toFunLike.{max (max u2 u3) u1, u4, max u2 u3, u1} (AlgHom.{u4, max u3 u2, u1} S (Unitization.{u2, u3} R A) B _inst_1 (Unitization.semiring.{u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5) _inst_7 (Unitization.algebra.{u4, u2, u3} S R A _inst_1 _inst_2 _inst_3 _inst_4 _inst_6 _inst_5 _inst_9 _inst_10 _inst_11) _inst_8) S (Unitization.{u2, u3} R A) B (SMulZeroClass.toSMul.{u4, max u2 u3} S (Unitization.{u2, u3} R A) (AddMonoid.toZero.{max u2 u3} (Unitization.{u2, u3} R A) (AddCommMonoid.toAddMonoid.{max u2 u3} (Unitization.{u2, u3} R A) (NonUnitalNonAssocSemiring.toAddCommMonoid.{max u2 u3} (Unitization.{u2, u3} R A) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{max u2 u3} (Unitization.{u2, u3} R A) (Semiring.toNonAssocSemiring.{max u2 u3} (Unitization.{u2, u3} R A) (Unitization.semiring.{u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5)))))) (DistribSMul.toSMulZeroClass.{u4, max u2 u3} S (Unitization.{u2, u3} R A) (AddMonoid.toAddZeroClass.{max u2 u3} (Unitization.{u2, u3} R A) (AddCommMonoid.toAddMonoid.{max u2 u3} (Unitization.{u2, u3} R A) (NonUnitalNonAssocSemiring.toAddCommMonoid.{max u2 u3} (Unitization.{u2, u3} R A) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{max u2 u3} (Unitization.{u2, u3} R A) (Semiring.toNonAssocSemiring.{max u2 u3} (Unitization.{u2, u3} R A) (Unitization.semiring.{u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5)))))) (DistribMulAction.toDistribSMul.{u4, max u2 u3} S (Unitization.{u2, u3} R A) (MonoidWithZero.toMonoid.{u4} S (Semiring.toMonoidWithZero.{u4} S (CommSemiring.toSemiring.{u4} S _inst_1))) (AddCommMonoid.toAddMonoid.{max u2 u3} (Unitization.{u2, u3} R A) (NonUnitalNonAssocSemiring.toAddCommMonoid.{max u2 u3} (Unitization.{u2, u3} R A) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{max u2 u3} (Unitization.{u2, u3} R A) (Semiring.toNonAssocSemiring.{max u2 u3} (Unitization.{u2, u3} R A) (Unitization.semiring.{u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5))))) (Module.toDistribMulAction.{u4, max u2 u3} S (Unitization.{u2, u3} R A) (CommSemiring.toSemiring.{u4} S _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{max u2 u3} (Unitization.{u2, u3} R A) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{max u2 u3} (Unitization.{u2, u3} R A) (Semiring.toNonAssocSemiring.{max u2 u3} (Unitization.{u2, u3} R A) (Unitization.semiring.{u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5)))) (Algebra.toModule.{u4, max u2 u3} S (Unitization.{u2, u3} R A) _inst_1 (Unitization.semiring.{u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5) (Unitization.algebra.{u4, u2, u3} S R A _inst_1 _inst_2 _inst_3 _inst_4 _inst_6 _inst_5 _inst_9 _inst_10 _inst_11)))))) (SMulZeroClass.toSMul.{u4, u1} S B (AddMonoid.toZero.{u1} B (AddCommMonoid.toAddMonoid.{u1} B (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} B (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} B (Semiring.toNonAssocSemiring.{u1} B _inst_7))))) (DistribSMul.toSMulZeroClass.{u4, u1} S B (AddMonoid.toAddZeroClass.{u1} B (AddCommMonoid.toAddMonoid.{u1} B (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} B (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} B (Semiring.toNonAssocSemiring.{u1} B _inst_7))))) (DistribMulAction.toDistribSMul.{u4, u1} S B (MonoidWithZero.toMonoid.{u4} S (Semiring.toMonoidWithZero.{u4} S (CommSemiring.toSemiring.{u4} S _inst_1))) (AddCommMonoid.toAddMonoid.{u1} B (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} B (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} B (Semiring.toNonAssocSemiring.{u1} B _inst_7)))) (Module.toDistribMulAction.{u4, u1} S B (CommSemiring.toSemiring.{u4} S _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} B (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} B (Semiring.toNonAssocSemiring.{u1} B _inst_7))) (Algebra.toModule.{u4, u1} S B _inst_1 _inst_7 _inst_8))))) (DistribMulActionHomClass.toSMulHomClass.{max (max u2 u3) u1, u4, max u2 u3, u1} (AlgHom.{u4, max u3 u2, u1} S (Unitization.{u2, u3} R A) B _inst_1 (Unitization.semiring.{u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5) _inst_7 (Unitization.algebra.{u4, u2, u3} S R A _inst_1 _inst_2 _inst_3 _inst_4 _inst_6 _inst_5 _inst_9 _inst_10 _inst_11) _inst_8) S (Unitization.{u2, u3} R A) B (MonoidWithZero.toMonoid.{u4} S (Semiring.toMonoidWithZero.{u4} S (CommSemiring.toSemiring.{u4} S _inst_1))) (AddCommMonoid.toAddMonoid.{max u2 u3} (Unitization.{u2, u3} R A) (NonUnitalNonAssocSemiring.toAddCommMonoid.{max u2 u3} (Unitization.{u2, u3} R A) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{max u2 u3} (Unitization.{u2, u3} R A) (Semiring.toNonAssocSemiring.{max u2 u3} (Unitization.{u2, u3} R A) (Unitization.semiring.{u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5))))) (AddCommMonoid.toAddMonoid.{u1} B (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} B (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} B (Semiring.toNonAssocSemiring.{u1} B _inst_7)))) (Module.toDistribMulAction.{u4, max u2 u3} S (Unitization.{u2, u3} R A) (CommSemiring.toSemiring.{u4} S _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{max u2 u3} (Unitization.{u2, u3} R A) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{max u2 u3} (Unitization.{u2, u3} R A) (Semiring.toNonAssocSemiring.{max u2 u3} (Unitization.{u2, u3} R A) (Unitization.semiring.{u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5)))) (Algebra.toModule.{u4, max u2 u3} S (Unitization.{u2, u3} R A) _inst_1 (Unitization.semiring.{u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5) (Unitization.algebra.{u4, u2, u3} S R A _inst_1 _inst_2 _inst_3 _inst_4 _inst_6 _inst_5 _inst_9 _inst_10 _inst_11))) (Module.toDistribMulAction.{u4, u1} S B (CommSemiring.toSemiring.{u4} S _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} B (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} B (Semiring.toNonAssocSemiring.{u1} B _inst_7))) (Algebra.toModule.{u4, u1} S B _inst_1 _inst_7 _inst_8)) (NonUnitalAlgHomClass.toDistribMulActionHomClass.{max (max u2 u3) u1, u4, max u2 u3, u1} (AlgHom.{u4, max u3 u2, u1} S (Unitization.{u2, u3} R A) B _inst_1 (Unitization.semiring.{u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5) _inst_7 (Unitization.algebra.{u4, u2, u3} S R A _inst_1 _inst_2 _inst_3 _inst_4 _inst_6 _inst_5 _inst_9 _inst_10 _inst_11) _inst_8) S (Unitization.{u2, u3} R A) B (MonoidWithZero.toMonoid.{u4} S (Semiring.toMonoidWithZero.{u4} S (CommSemiring.toSemiring.{u4} S _inst_1))) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{max u2 u3} (Unitization.{u2, u3} R A) (Semiring.toNonAssocSemiring.{max u2 u3} (Unitization.{u2, u3} R A) (Unitization.semiring.{u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5))) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} B (Semiring.toNonAssocSemiring.{u1} B _inst_7)) (Module.toDistribMulAction.{u4, max u2 u3} S (Unitization.{u2, u3} R A) (CommSemiring.toSemiring.{u4} S _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{max u2 u3} (Unitization.{u2, u3} R A) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{max u2 u3} (Unitization.{u2, u3} R A) (Semiring.toNonAssocSemiring.{max u2 u3} (Unitization.{u2, u3} R A) (Unitization.semiring.{u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5)))) (Algebra.toModule.{u4, max u2 u3} S (Unitization.{u2, u3} R A) _inst_1 (Unitization.semiring.{u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5) (Unitization.algebra.{u4, u2, u3} S R A _inst_1 _inst_2 _inst_3 _inst_4 _inst_6 _inst_5 _inst_9 _inst_10 _inst_11))) (Module.toDistribMulAction.{u4, u1} S B (CommSemiring.toSemiring.{u4} S _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} B (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} B (Semiring.toNonAssocSemiring.{u1} B _inst_7))) (Algebra.toModule.{u4, u1} S B _inst_1 _inst_7 _inst_8)) (AlgHom.instNonUnitalAlgHomClassToMonoidToMonoidWithZeroToSemiringToNonUnitalNonAssocSemiringToNonAssocSemiringToNonUnitalNonAssocSemiringToNonAssocSemiringToDistribMulActionToAddCommMonoidToModuleToDistribMulActionToAddCommMonoidToModule.{u4, max u2 u3, u1, max (max u2 u3) u1} S (Unitization.{u2, u3} R A) B _inst_1 (Unitization.semiring.{u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5) _inst_7 (Unitization.algebra.{u4, u2, u3} S R A _inst_1 _inst_2 _inst_3 _inst_4 _inst_6 _inst_5 _inst_9 _inst_10 _inst_11) _inst_8 (AlgHom.{u4, max u3 u2, u1} S (Unitization.{u2, u3} R A) B _inst_1 (Unitization.semiring.{u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5) _inst_7 (Unitization.algebra.{u4, u2, u3} S R A _inst_1 _inst_2 _inst_3 _inst_4 _inst_6 _inst_5 _inst_9 _inst_10 _inst_11) _inst_8) (AlgHom.algHomClass.{u4, max u2 u3, u1} S (Unitization.{u2, u3} R A) B _inst_1 (Unitization.semiring.{u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5) _inst_7 (Unitization.algebra.{u4, u2, u3} S R A _inst_1 _inst_2 _inst_3 _inst_4 _inst_6 _inst_5 _inst_9 _inst_10 _inst_11) _inst_8))))) φ (Unitization.inr.{u2, u3} R A (CommMonoidWithZero.toZero.{u2} R (CommSemiring.toCommMonoidWithZero.{u2} R _inst_2)) a)) (FunLike.coe.{max (max (succ u2) (succ u3)) (succ u1), max (succ u2) (succ u3), succ u1} (AlgHom.{u4, max u3 u2, u1} S (Unitization.{u2, u3} R A) B _inst_1 (Unitization.semiring.{u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5) _inst_7 (Unitization.algebra.{u4, u2, u3} S R A _inst_1 _inst_2 _inst_3 _inst_4 _inst_6 _inst_5 _inst_9 _inst_10 _inst_11) _inst_8) (Unitization.{u2, u3} R A) (fun (_x : Unitization.{u2, u3} R A) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2187 : Unitization.{u2, u3} R A) => B) _x) (SMulHomClass.toFunLike.{max (max u2 u3) u1, u4, max u2 u3, u1} (AlgHom.{u4, max u3 u2, u1} S (Unitization.{u2, u3} R A) B _inst_1 (Unitization.semiring.{u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5) _inst_7 (Unitization.algebra.{u4, u2, u3} S R A _inst_1 _inst_2 _inst_3 _inst_4 _inst_6 _inst_5 _inst_9 _inst_10 _inst_11) _inst_8) S (Unitization.{u2, u3} R A) B (SMulZeroClass.toSMul.{u4, max u2 u3} S (Unitization.{u2, u3} R A) (AddMonoid.toZero.{max u2 u3} (Unitization.{u2, u3} R A) (AddCommMonoid.toAddMonoid.{max u2 u3} (Unitization.{u2, u3} R A) (NonUnitalNonAssocSemiring.toAddCommMonoid.{max u2 u3} (Unitization.{u2, u3} R A) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{max u2 u3} (Unitization.{u2, u3} R A) (Semiring.toNonAssocSemiring.{max u2 u3} (Unitization.{u2, u3} R A) (Unitization.semiring.{u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5)))))) (DistribSMul.toSMulZeroClass.{u4, max u2 u3} S (Unitization.{u2, u3} R A) (AddMonoid.toAddZeroClass.{max u2 u3} (Unitization.{u2, u3} R A) (AddCommMonoid.toAddMonoid.{max u2 u3} (Unitization.{u2, u3} R A) (NonUnitalNonAssocSemiring.toAddCommMonoid.{max u2 u3} (Unitization.{u2, u3} R A) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{max u2 u3} (Unitization.{u2, u3} R A) (Semiring.toNonAssocSemiring.{max u2 u3} (Unitization.{u2, u3} R A) (Unitization.semiring.{u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5)))))) (DistribMulAction.toDistribSMul.{u4, max u2 u3} S (Unitization.{u2, u3} R A) (MonoidWithZero.toMonoid.{u4} S (Semiring.toMonoidWithZero.{u4} S (CommSemiring.toSemiring.{u4} S _inst_1))) (AddCommMonoid.toAddMonoid.{max u2 u3} (Unitization.{u2, u3} R A) (NonUnitalNonAssocSemiring.toAddCommMonoid.{max u2 u3} (Unitization.{u2, u3} R A) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{max u2 u3} (Unitization.{u2, u3} R A) (Semiring.toNonAssocSemiring.{max u2 u3} (Unitization.{u2, u3} R A) (Unitization.semiring.{u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5))))) (Module.toDistribMulAction.{u4, max u2 u3} S (Unitization.{u2, u3} R A) (CommSemiring.toSemiring.{u4} S _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{max u2 u3} (Unitization.{u2, u3} R A) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{max u2 u3} (Unitization.{u2, u3} R A) (Semiring.toNonAssocSemiring.{max u2 u3} (Unitization.{u2, u3} R A) (Unitization.semiring.{u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5)))) (Algebra.toModule.{u4, max u2 u3} S (Unitization.{u2, u3} R A) _inst_1 (Unitization.semiring.{u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5) (Unitization.algebra.{u4, u2, u3} S R A _inst_1 _inst_2 _inst_3 _inst_4 _inst_6 _inst_5 _inst_9 _inst_10 _inst_11)))))) (SMulZeroClass.toSMul.{u4, u1} S B (AddMonoid.toZero.{u1} B (AddCommMonoid.toAddMonoid.{u1} B (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} B (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} B (Semiring.toNonAssocSemiring.{u1} B _inst_7))))) (DistribSMul.toSMulZeroClass.{u4, u1} S B (AddMonoid.toAddZeroClass.{u1} B (AddCommMonoid.toAddMonoid.{u1} B (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} B (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} B (Semiring.toNonAssocSemiring.{u1} B _inst_7))))) (DistribMulAction.toDistribSMul.{u4, u1} S B (MonoidWithZero.toMonoid.{u4} S (Semiring.toMonoidWithZero.{u4} S (CommSemiring.toSemiring.{u4} S _inst_1))) (AddCommMonoid.toAddMonoid.{u1} B (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} B (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} B (Semiring.toNonAssocSemiring.{u1} B _inst_7)))) (Module.toDistribMulAction.{u4, u1} S B (CommSemiring.toSemiring.{u4} S _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} B (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} B (Semiring.toNonAssocSemiring.{u1} B _inst_7))) (Algebra.toModule.{u4, u1} S B _inst_1 _inst_7 _inst_8))))) (DistribMulActionHomClass.toSMulHomClass.{max (max u2 u3) u1, u4, max u2 u3, u1} (AlgHom.{u4, max u3 u2, u1} S (Unitization.{u2, u3} R A) B _inst_1 (Unitization.semiring.{u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5) _inst_7 (Unitization.algebra.{u4, u2, u3} S R A _inst_1 _inst_2 _inst_3 _inst_4 _inst_6 _inst_5 _inst_9 _inst_10 _inst_11) _inst_8) S (Unitization.{u2, u3} R A) B (MonoidWithZero.toMonoid.{u4} S (Semiring.toMonoidWithZero.{u4} S (CommSemiring.toSemiring.{u4} S _inst_1))) (AddCommMonoid.toAddMonoid.{max u2 u3} (Unitization.{u2, u3} R A) (NonUnitalNonAssocSemiring.toAddCommMonoid.{max u2 u3} (Unitization.{u2, u3} R A) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{max u2 u3} (Unitization.{u2, u3} R A) (Semiring.toNonAssocSemiring.{max u2 u3} (Unitization.{u2, u3} R A) (Unitization.semiring.{u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5))))) (AddCommMonoid.toAddMonoid.{u1} B (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} B (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} B (Semiring.toNonAssocSemiring.{u1} B _inst_7)))) (Module.toDistribMulAction.{u4, max u2 u3} S (Unitization.{u2, u3} R A) (CommSemiring.toSemiring.{u4} S _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{max u2 u3} (Unitization.{u2, u3} R A) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{max u2 u3} (Unitization.{u2, u3} R A) (Semiring.toNonAssocSemiring.{max u2 u3} (Unitization.{u2, u3} R A) (Unitization.semiring.{u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5)))) (Algebra.toModule.{u4, max u2 u3} S (Unitization.{u2, u3} R A) _inst_1 (Unitization.semiring.{u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5) (Unitization.algebra.{u4, u2, u3} S R A _inst_1 _inst_2 _inst_3 _inst_4 _inst_6 _inst_5 _inst_9 _inst_10 _inst_11))) (Module.toDistribMulAction.{u4, u1} S B (CommSemiring.toSemiring.{u4} S _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} B (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} B (Semiring.toNonAssocSemiring.{u1} B _inst_7))) (Algebra.toModule.{u4, u1} S B _inst_1 _inst_7 _inst_8)) (NonUnitalAlgHomClass.toDistribMulActionHomClass.{max (max u2 u3) u1, u4, max u2 u3, u1} (AlgHom.{u4, max u3 u2, u1} S (Unitization.{u2, u3} R A) B _inst_1 (Unitization.semiring.{u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5) _inst_7 (Unitization.algebra.{u4, u2, u3} S R A _inst_1 _inst_2 _inst_3 _inst_4 _inst_6 _inst_5 _inst_9 _inst_10 _inst_11) _inst_8) S (Unitization.{u2, u3} R A) B (MonoidWithZero.toMonoid.{u4} S (Semiring.toMonoidWithZero.{u4} S (CommSemiring.toSemiring.{u4} S _inst_1))) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{max u2 u3} (Unitization.{u2, u3} R A) (Semiring.toNonAssocSemiring.{max u2 u3} (Unitization.{u2, u3} R A) (Unitization.semiring.{u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5))) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} B (Semiring.toNonAssocSemiring.{u1} B _inst_7)) (Module.toDistribMulAction.{u4, max u2 u3} S (Unitization.{u2, u3} R A) (CommSemiring.toSemiring.{u4} S _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{max u2 u3} (Unitization.{u2, u3} R A) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{max u2 u3} (Unitization.{u2, u3} R A) (Semiring.toNonAssocSemiring.{max u2 u3} (Unitization.{u2, u3} R A) (Unitization.semiring.{u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5)))) (Algebra.toModule.{u4, max u2 u3} S (Unitization.{u2, u3} R A) _inst_1 (Unitization.semiring.{u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5) (Unitization.algebra.{u4, u2, u3} S R A _inst_1 _inst_2 _inst_3 _inst_4 _inst_6 _inst_5 _inst_9 _inst_10 _inst_11))) (Module.toDistribMulAction.{u4, u1} S B (CommSemiring.toSemiring.{u4} S _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} B (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} B (Semiring.toNonAssocSemiring.{u1} B _inst_7))) (Algebra.toModule.{u4, u1} S B _inst_1 _inst_7 _inst_8)) (AlgHom.instNonUnitalAlgHomClassToMonoidToMonoidWithZeroToSemiringToNonUnitalNonAssocSemiringToNonAssocSemiringToNonUnitalNonAssocSemiringToNonAssocSemiringToDistribMulActionToAddCommMonoidToModuleToDistribMulActionToAddCommMonoidToModule.{u4, max u2 u3, u1, max (max u2 u3) u1} S (Unitization.{u2, u3} R A) B _inst_1 (Unitization.semiring.{u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5) _inst_7 (Unitization.algebra.{u4, u2, u3} S R A _inst_1 _inst_2 _inst_3 _inst_4 _inst_6 _inst_5 _inst_9 _inst_10 _inst_11) _inst_8 (AlgHom.{u4, max u3 u2, u1} S (Unitization.{u2, u3} R A) B _inst_1 (Unitization.semiring.{u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5) _inst_7 (Unitization.algebra.{u4, u2, u3} S R A _inst_1 _inst_2 _inst_3 _inst_4 _inst_6 _inst_5 _inst_9 _inst_10 _inst_11) _inst_8) (AlgHom.algHomClass.{u4, max u2 u3, u1} S (Unitization.{u2, u3} R A) B _inst_1 (Unitization.semiring.{u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5) _inst_7 (Unitization.algebra.{u4, u2, u3} S R A _inst_1 _inst_2 _inst_3 _inst_4 _inst_6 _inst_5 _inst_9 _inst_10 _inst_11) _inst_8))))) ψ (Unitization.inr.{u2, u3} R A (CommMonoidWithZero.toZero.{u2} R (CommSemiring.toCommMonoidWithZero.{u2} R _inst_2)) a))) -> (forall (r : R), Eq.{succ u1} ((fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2187 : Unitization.{u2, u3} R A) => B) (FunLike.coe.{max (succ u2) (succ u3), succ u2, max (succ u2) (succ u3)} (RingHom.{u2, max u3 u2} R (Unitization.{u2, u3} R A) (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_2)) (Semiring.toNonAssocSemiring.{max u3 u2} (Unitization.{u2, u3} R A) (Unitization.semiring.{u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5))) R (fun (a : R) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : R) => Unitization.{u2, u3} R A) a) (MulHomClass.toFunLike.{max u2 u3, u2, max u2 u3} (RingHom.{u2, max u3 u2} R (Unitization.{u2, u3} R A) (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_2)) (Semiring.toNonAssocSemiring.{max u3 u2} (Unitization.{u2, u3} R A) (Unitization.semiring.{u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5))) R (Unitization.{u2, u3} R A) (NonUnitalNonAssocSemiring.toMul.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_2)))) (NonUnitalNonAssocSemiring.toMul.{max u2 u3} (Unitization.{u2, u3} R A) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{max u2 u3} (Unitization.{u2, u3} R A) (Semiring.toNonAssocSemiring.{max u3 u2} (Unitization.{u2, u3} R A) (Unitization.semiring.{u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5)))) (NonUnitalRingHomClass.toMulHomClass.{max u2 u3, u2, max u2 u3} (RingHom.{u2, max u3 u2} R (Unitization.{u2, u3} R A) (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_2)) (Semiring.toNonAssocSemiring.{max u3 u2} (Unitization.{u2, u3} R A) (Unitization.semiring.{u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5))) R (Unitization.{u2, u3} R A) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_2))) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{max u2 u3} (Unitization.{u2, u3} R A) (Semiring.toNonAssocSemiring.{max u3 u2} (Unitization.{u2, u3} R A) (Unitization.semiring.{u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5))) (RingHomClass.toNonUnitalRingHomClass.{max u2 u3, u2, max u2 u3} (RingHom.{u2, max u3 u2} R (Unitization.{u2, u3} R A) (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_2)) (Semiring.toNonAssocSemiring.{max u3 u2} (Unitization.{u2, u3} R A) (Unitization.semiring.{u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5))) R (Unitization.{u2, u3} R A) (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_2)) (Semiring.toNonAssocSemiring.{max u3 u2} (Unitization.{u2, u3} R A) (Unitization.semiring.{u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5)) (RingHom.instRingHomClassRingHom.{u2, max u2 u3} R (Unitization.{u2, u3} R A) (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_2)) (Semiring.toNonAssocSemiring.{max u3 u2} (Unitization.{u2, u3} R A) (Unitization.semiring.{u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5)))))) (algebraMap.{u2, max u3 u2} R (Unitization.{u2, u3} R A) _inst_2 (Unitization.semiring.{u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5) (Unitization.algebra.{u2, u2, u3} R R A _inst_2 _inst_2 _inst_3 _inst_4 _inst_6 _inst_5 (Algebra.id.{u2} R _inst_2) (Module.toDistribMulAction.{u2, u3} R A (CommSemiring.toSemiring.{u2} R _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u3} A _inst_3)) _inst_4) (IsScalarTower.left.{u2, u3} R A (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R _inst_2))) (MulActionWithZero.toMulAction.{u2, u3} R A (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R _inst_2)) (SemigroupWithZero.toZero.{u3} A (NonUnitalSemiring.toSemigroupWithZero.{u3} A _inst_3)) (Module.toMulActionWithZero.{u2, u3} R A (CommSemiring.toSemiring.{u2} R _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u3} A _inst_3)) _inst_4))))) r)) (FunLike.coe.{max (max (succ u2) (succ u3)) (succ u1), max (succ u2) (succ u3), succ u1} (AlgHom.{u4, max u3 u2, u1} S (Unitization.{u2, u3} R A) B _inst_1 (Unitization.semiring.{u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5) _inst_7 (Unitization.algebra.{u4, u2, u3} S R A _inst_1 _inst_2 _inst_3 _inst_4 _inst_6 _inst_5 _inst_9 _inst_10 _inst_11) _inst_8) (Unitization.{u2, u3} R A) (fun (_x : Unitization.{u2, u3} R A) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2187 : Unitization.{u2, u3} R A) => B) _x) (SMulHomClass.toFunLike.{max (max u2 u3) u1, u4, max u2 u3, u1} (AlgHom.{u4, max u3 u2, u1} S (Unitization.{u2, u3} R A) B _inst_1 (Unitization.semiring.{u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5) _inst_7 (Unitization.algebra.{u4, u2, u3} S R A _inst_1 _inst_2 _inst_3 _inst_4 _inst_6 _inst_5 _inst_9 _inst_10 _inst_11) _inst_8) S (Unitization.{u2, u3} R A) B (SMulZeroClass.toSMul.{u4, max u2 u3} S (Unitization.{u2, u3} R A) (AddMonoid.toZero.{max u2 u3} (Unitization.{u2, u3} R A) (AddCommMonoid.toAddMonoid.{max u2 u3} (Unitization.{u2, u3} R A) (NonUnitalNonAssocSemiring.toAddCommMonoid.{max u2 u3} (Unitization.{u2, u3} R A) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{max u2 u3} (Unitization.{u2, u3} R A) (Semiring.toNonAssocSemiring.{max u2 u3} (Unitization.{u2, u3} R A) (Unitization.semiring.{u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5)))))) (DistribSMul.toSMulZeroClass.{u4, max u2 u3} S (Unitization.{u2, u3} R A) (AddMonoid.toAddZeroClass.{max u2 u3} (Unitization.{u2, u3} R A) (AddCommMonoid.toAddMonoid.{max u2 u3} (Unitization.{u2, u3} R A) (NonUnitalNonAssocSemiring.toAddCommMonoid.{max u2 u3} (Unitization.{u2, u3} R A) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{max u2 u3} (Unitization.{u2, u3} R A) (Semiring.toNonAssocSemiring.{max u2 u3} (Unitization.{u2, u3} R A) (Unitization.semiring.{u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5)))))) (DistribMulAction.toDistribSMul.{u4, max u2 u3} S (Unitization.{u2, u3} R A) (MonoidWithZero.toMonoid.{u4} S (Semiring.toMonoidWithZero.{u4} S (CommSemiring.toSemiring.{u4} S _inst_1))) (AddCommMonoid.toAddMonoid.{max u2 u3} (Unitization.{u2, u3} R A) (NonUnitalNonAssocSemiring.toAddCommMonoid.{max u2 u3} (Unitization.{u2, u3} R A) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{max u2 u3} (Unitization.{u2, u3} R A) (Semiring.toNonAssocSemiring.{max u2 u3} (Unitization.{u2, u3} R A) (Unitization.semiring.{u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5))))) (Module.toDistribMulAction.{u4, max u2 u3} S (Unitization.{u2, u3} R A) (CommSemiring.toSemiring.{u4} S _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{max u2 u3} (Unitization.{u2, u3} R A) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{max u2 u3} (Unitization.{u2, u3} R A) (Semiring.toNonAssocSemiring.{max u2 u3} (Unitization.{u2, u3} R A) (Unitization.semiring.{u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5)))) (Algebra.toModule.{u4, max u2 u3} S (Unitization.{u2, u3} R A) _inst_1 (Unitization.semiring.{u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5) (Unitization.algebra.{u4, u2, u3} S R A _inst_1 _inst_2 _inst_3 _inst_4 _inst_6 _inst_5 _inst_9 _inst_10 _inst_11)))))) (SMulZeroClass.toSMul.{u4, u1} S B (AddMonoid.toZero.{u1} B (AddCommMonoid.toAddMonoid.{u1} B (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} B (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} B (Semiring.toNonAssocSemiring.{u1} B _inst_7))))) (DistribSMul.toSMulZeroClass.{u4, u1} S B (AddMonoid.toAddZeroClass.{u1} B (AddCommMonoid.toAddMonoid.{u1} B (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} B (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} B (Semiring.toNonAssocSemiring.{u1} B _inst_7))))) (DistribMulAction.toDistribSMul.{u4, u1} S B (MonoidWithZero.toMonoid.{u4} S (Semiring.toMonoidWithZero.{u4} S (CommSemiring.toSemiring.{u4} S _inst_1))) (AddCommMonoid.toAddMonoid.{u1} B (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} B (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} B (Semiring.toNonAssocSemiring.{u1} B _inst_7)))) (Module.toDistribMulAction.{u4, u1} S B (CommSemiring.toSemiring.{u4} S _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} B (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} B (Semiring.toNonAssocSemiring.{u1} B _inst_7))) (Algebra.toModule.{u4, u1} S B _inst_1 _inst_7 _inst_8))))) (DistribMulActionHomClass.toSMulHomClass.{max (max u2 u3) u1, u4, max u2 u3, u1} (AlgHom.{u4, max u3 u2, u1} S (Unitization.{u2, u3} R A) B _inst_1 (Unitization.semiring.{u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5) _inst_7 (Unitization.algebra.{u4, u2, u3} S R A _inst_1 _inst_2 _inst_3 _inst_4 _inst_6 _inst_5 _inst_9 _inst_10 _inst_11) _inst_8) S (Unitization.{u2, u3} R A) B (MonoidWithZero.toMonoid.{u4} S (Semiring.toMonoidWithZero.{u4} S (CommSemiring.toSemiring.{u4} S _inst_1))) (AddCommMonoid.toAddMonoid.{max u2 u3} (Unitization.{u2, u3} R A) (NonUnitalNonAssocSemiring.toAddCommMonoid.{max u2 u3} (Unitization.{u2, u3} R A) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{max u2 u3} (Unitization.{u2, u3} R A) (Semiring.toNonAssocSemiring.{max u2 u3} (Unitization.{u2, u3} R A) (Unitization.semiring.{u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5))))) (AddCommMonoid.toAddMonoid.{u1} B (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} B (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} B (Semiring.toNonAssocSemiring.{u1} B _inst_7)))) (Module.toDistribMulAction.{u4, max u2 u3} S (Unitization.{u2, u3} R A) (CommSemiring.toSemiring.{u4} S _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{max u2 u3} (Unitization.{u2, u3} R A) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{max u2 u3} (Unitization.{u2, u3} R A) (Semiring.toNonAssocSemiring.{max u2 u3} (Unitization.{u2, u3} R A) (Unitization.semiring.{u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5)))) (Algebra.toModule.{u4, max u2 u3} S (Unitization.{u2, u3} R A) _inst_1 (Unitization.semiring.{u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5) (Unitization.algebra.{u4, u2, u3} S R A _inst_1 _inst_2 _inst_3 _inst_4 _inst_6 _inst_5 _inst_9 _inst_10 _inst_11))) (Module.toDistribMulAction.{u4, u1} S B (CommSemiring.toSemiring.{u4} S _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} B (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} B (Semiring.toNonAssocSemiring.{u1} B _inst_7))) (Algebra.toModule.{u4, u1} S B _inst_1 _inst_7 _inst_8)) (NonUnitalAlgHomClass.toDistribMulActionHomClass.{max (max u2 u3) u1, u4, max u2 u3, u1} (AlgHom.{u4, max u3 u2, u1} S (Unitization.{u2, u3} R A) B _inst_1 (Unitization.semiring.{u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5) _inst_7 (Unitization.algebra.{u4, u2, u3} S R A _inst_1 _inst_2 _inst_3 _inst_4 _inst_6 _inst_5 _inst_9 _inst_10 _inst_11) _inst_8) S (Unitization.{u2, u3} R A) B (MonoidWithZero.toMonoid.{u4} S (Semiring.toMonoidWithZero.{u4} S (CommSemiring.toSemiring.{u4} S _inst_1))) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{max u2 u3} (Unitization.{u2, u3} R A) (Semiring.toNonAssocSemiring.{max u2 u3} (Unitization.{u2, u3} R A) (Unitization.semiring.{u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5))) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} B (Semiring.toNonAssocSemiring.{u1} B _inst_7)) (Module.toDistribMulAction.{u4, max u2 u3} S (Unitization.{u2, u3} R A) (CommSemiring.toSemiring.{u4} S _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{max u2 u3} (Unitization.{u2, u3} R A) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{max u2 u3} (Unitization.{u2, u3} R A) (Semiring.toNonAssocSemiring.{max u2 u3} (Unitization.{u2, u3} R A) (Unitization.semiring.{u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5)))) (Algebra.toModule.{u4, max u2 u3} S (Unitization.{u2, u3} R A) _inst_1 (Unitization.semiring.{u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5) (Unitization.algebra.{u4, u2, u3} S R A _inst_1 _inst_2 _inst_3 _inst_4 _inst_6 _inst_5 _inst_9 _inst_10 _inst_11))) (Module.toDistribMulAction.{u4, u1} S B (CommSemiring.toSemiring.{u4} S _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} B (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} B (Semiring.toNonAssocSemiring.{u1} B _inst_7))) (Algebra.toModule.{u4, u1} S B _inst_1 _inst_7 _inst_8)) (AlgHom.instNonUnitalAlgHomClassToMonoidToMonoidWithZeroToSemiringToNonUnitalNonAssocSemiringToNonAssocSemiringToNonUnitalNonAssocSemiringToNonAssocSemiringToDistribMulActionToAddCommMonoidToModuleToDistribMulActionToAddCommMonoidToModule.{u4, max u2 u3, u1, max (max u2 u3) u1} S (Unitization.{u2, u3} R A) B _inst_1 (Unitization.semiring.{u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5) _inst_7 (Unitization.algebra.{u4, u2, u3} S R A _inst_1 _inst_2 _inst_3 _inst_4 _inst_6 _inst_5 _inst_9 _inst_10 _inst_11) _inst_8 (AlgHom.{u4, max u3 u2, u1} S (Unitization.{u2, u3} R A) B _inst_1 (Unitization.semiring.{u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5) _inst_7 (Unitization.algebra.{u4, u2, u3} S R A _inst_1 _inst_2 _inst_3 _inst_4 _inst_6 _inst_5 _inst_9 _inst_10 _inst_11) _inst_8) (AlgHom.algHomClass.{u4, max u2 u3, u1} S (Unitization.{u2, u3} R A) B _inst_1 (Unitization.semiring.{u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5) _inst_7 (Unitization.algebra.{u4, u2, u3} S R A _inst_1 _inst_2 _inst_3 _inst_4 _inst_6 _inst_5 _inst_9 _inst_10 _inst_11) _inst_8))))) φ (FunLike.coe.{max (succ u2) (succ u3), succ u2, max (succ u2) (succ u3)} (RingHom.{u2, max u3 u2} R (Unitization.{u2, u3} R A) (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_2)) (Semiring.toNonAssocSemiring.{max u3 u2} (Unitization.{u2, u3} R A) (Unitization.semiring.{u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5))) R (fun (_x : R) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : R) => Unitization.{u2, u3} R A) _x) (MulHomClass.toFunLike.{max u2 u3, u2, max u2 u3} (RingHom.{u2, max u3 u2} R (Unitization.{u2, u3} R A) (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_2)) (Semiring.toNonAssocSemiring.{max u3 u2} (Unitization.{u2, u3} R A) (Unitization.semiring.{u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5))) R (Unitization.{u2, u3} R A) (NonUnitalNonAssocSemiring.toMul.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_2)))) (NonUnitalNonAssocSemiring.toMul.{max u2 u3} (Unitization.{u2, u3} R A) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{max u2 u3} (Unitization.{u2, u3} R A) (Semiring.toNonAssocSemiring.{max u3 u2} (Unitization.{u2, u3} R A) (Unitization.semiring.{u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5)))) (NonUnitalRingHomClass.toMulHomClass.{max u2 u3, u2, max u2 u3} (RingHom.{u2, max u3 u2} R (Unitization.{u2, u3} R A) (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_2)) (Semiring.toNonAssocSemiring.{max u3 u2} (Unitization.{u2, u3} R A) (Unitization.semiring.{u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5))) R (Unitization.{u2, u3} R A) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_2))) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{max u2 u3} (Unitization.{u2, u3} R A) (Semiring.toNonAssocSemiring.{max u3 u2} (Unitization.{u2, u3} R A) (Unitization.semiring.{u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5))) (RingHomClass.toNonUnitalRingHomClass.{max u2 u3, u2, max u2 u3} (RingHom.{u2, max u3 u2} R (Unitization.{u2, u3} R A) (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_2)) (Semiring.toNonAssocSemiring.{max u3 u2} (Unitization.{u2, u3} R A) (Unitization.semiring.{u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5))) R (Unitization.{u2, u3} R A) (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_2)) (Semiring.toNonAssocSemiring.{max u3 u2} (Unitization.{u2, u3} R A) (Unitization.semiring.{u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5)) (RingHom.instRingHomClassRingHom.{u2, max u2 u3} R (Unitization.{u2, u3} R A) (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_2)) (Semiring.toNonAssocSemiring.{max u3 u2} (Unitization.{u2, u3} R A) (Unitization.semiring.{u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5)))))) (algebraMap.{u2, max u3 u2} R (Unitization.{u2, u3} R A) _inst_2 (Unitization.semiring.{u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5) (Unitization.algebra.{u2, u2, u3} R R A _inst_2 _inst_2 _inst_3 _inst_4 _inst_6 _inst_5 (Algebra.id.{u2} R _inst_2) (Module.toDistribMulAction.{u2, u3} R A (CommSemiring.toSemiring.{u2} R _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u3} A _inst_3)) _inst_4) (IsScalarTower.left.{u2, u3} R A (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R _inst_2))) (MulActionWithZero.toMulAction.{u2, u3} R A (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R _inst_2)) (SemigroupWithZero.toZero.{u3} A (NonUnitalSemiring.toSemigroupWithZero.{u3} A _inst_3)) (Module.toMulActionWithZero.{u2, u3} R A (CommSemiring.toSemiring.{u2} R _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u3} A _inst_3)) _inst_4))))) r)) (FunLike.coe.{max (max (succ u2) (succ u3)) (succ u1), max (succ u2) (succ u3), succ u1} (AlgHom.{u4, max u3 u2, u1} S (Unitization.{u2, u3} R A) B _inst_1 (Unitization.semiring.{u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5) _inst_7 (Unitization.algebra.{u4, u2, u3} S R A _inst_1 _inst_2 _inst_3 _inst_4 _inst_6 _inst_5 _inst_9 _inst_10 _inst_11) _inst_8) (Unitization.{u2, u3} R A) (fun (_x : Unitization.{u2, u3} R A) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2187 : Unitization.{u2, u3} R A) => B) _x) (SMulHomClass.toFunLike.{max (max u2 u3) u1, u4, max u2 u3, u1} (AlgHom.{u4, max u3 u2, u1} S (Unitization.{u2, u3} R A) B _inst_1 (Unitization.semiring.{u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5) _inst_7 (Unitization.algebra.{u4, u2, u3} S R A _inst_1 _inst_2 _inst_3 _inst_4 _inst_6 _inst_5 _inst_9 _inst_10 _inst_11) _inst_8) S (Unitization.{u2, u3} R A) B (SMulZeroClass.toSMul.{u4, max u2 u3} S (Unitization.{u2, u3} R A) (AddMonoid.toZero.{max u2 u3} (Unitization.{u2, u3} R A) (AddCommMonoid.toAddMonoid.{max u2 u3} (Unitization.{u2, u3} R A) (NonUnitalNonAssocSemiring.toAddCommMonoid.{max u2 u3} (Unitization.{u2, u3} R A) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{max u2 u3} (Unitization.{u2, u3} R A) (Semiring.toNonAssocSemiring.{max u2 u3} (Unitization.{u2, u3} R A) (Unitization.semiring.{u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5)))))) (DistribSMul.toSMulZeroClass.{u4, max u2 u3} S (Unitization.{u2, u3} R A) (AddMonoid.toAddZeroClass.{max u2 u3} (Unitization.{u2, u3} R A) (AddCommMonoid.toAddMonoid.{max u2 u3} (Unitization.{u2, u3} R A) (NonUnitalNonAssocSemiring.toAddCommMonoid.{max u2 u3} (Unitization.{u2, u3} R A) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{max u2 u3} (Unitization.{u2, u3} R A) (Semiring.toNonAssocSemiring.{max u2 u3} (Unitization.{u2, u3} R A) (Unitization.semiring.{u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5)))))) (DistribMulAction.toDistribSMul.{u4, max u2 u3} S (Unitization.{u2, u3} R A) (MonoidWithZero.toMonoid.{u4} S (Semiring.toMonoidWithZero.{u4} S (CommSemiring.toSemiring.{u4} S _inst_1))) (AddCommMonoid.toAddMonoid.{max u2 u3} (Unitization.{u2, u3} R A) (NonUnitalNonAssocSemiring.toAddCommMonoid.{max u2 u3} (Unitization.{u2, u3} R A) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{max u2 u3} (Unitization.{u2, u3} R A) (Semiring.toNonAssocSemiring.{max u2 u3} (Unitization.{u2, u3} R A) (Unitization.semiring.{u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5))))) (Module.toDistribMulAction.{u4, max u2 u3} S (Unitization.{u2, u3} R A) (CommSemiring.toSemiring.{u4} S _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{max u2 u3} (Unitization.{u2, u3} R A) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{max u2 u3} (Unitization.{u2, u3} R A) (Semiring.toNonAssocSemiring.{max u2 u3} (Unitization.{u2, u3} R A) (Unitization.semiring.{u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5)))) (Algebra.toModule.{u4, max u2 u3} S (Unitization.{u2, u3} R A) _inst_1 (Unitization.semiring.{u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5) (Unitization.algebra.{u4, u2, u3} S R A _inst_1 _inst_2 _inst_3 _inst_4 _inst_6 _inst_5 _inst_9 _inst_10 _inst_11)))))) (SMulZeroClass.toSMul.{u4, u1} S B (AddMonoid.toZero.{u1} B (AddCommMonoid.toAddMonoid.{u1} B (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} B (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} B (Semiring.toNonAssocSemiring.{u1} B _inst_7))))) (DistribSMul.toSMulZeroClass.{u4, u1} S B (AddMonoid.toAddZeroClass.{u1} B (AddCommMonoid.toAddMonoid.{u1} B (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} B (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} B (Semiring.toNonAssocSemiring.{u1} B _inst_7))))) (DistribMulAction.toDistribSMul.{u4, u1} S B (MonoidWithZero.toMonoid.{u4} S (Semiring.toMonoidWithZero.{u4} S (CommSemiring.toSemiring.{u4} S _inst_1))) (AddCommMonoid.toAddMonoid.{u1} B (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} B (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} B (Semiring.toNonAssocSemiring.{u1} B _inst_7)))) (Module.toDistribMulAction.{u4, u1} S B (CommSemiring.toSemiring.{u4} S _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} B (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} B (Semiring.toNonAssocSemiring.{u1} B _inst_7))) (Algebra.toModule.{u4, u1} S B _inst_1 _inst_7 _inst_8))))) (DistribMulActionHomClass.toSMulHomClass.{max (max u2 u3) u1, u4, max u2 u3, u1} (AlgHom.{u4, max u3 u2, u1} S (Unitization.{u2, u3} R A) B _inst_1 (Unitization.semiring.{u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5) _inst_7 (Unitization.algebra.{u4, u2, u3} S R A _inst_1 _inst_2 _inst_3 _inst_4 _inst_6 _inst_5 _inst_9 _inst_10 _inst_11) _inst_8) S (Unitization.{u2, u3} R A) B (MonoidWithZero.toMonoid.{u4} S (Semiring.toMonoidWithZero.{u4} S (CommSemiring.toSemiring.{u4} S _inst_1))) (AddCommMonoid.toAddMonoid.{max u2 u3} (Unitization.{u2, u3} R A) (NonUnitalNonAssocSemiring.toAddCommMonoid.{max u2 u3} (Unitization.{u2, u3} R A) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{max u2 u3} (Unitization.{u2, u3} R A) (Semiring.toNonAssocSemiring.{max u2 u3} (Unitization.{u2, u3} R A) (Unitization.semiring.{u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5))))) (AddCommMonoid.toAddMonoid.{u1} B (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} B (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} B (Semiring.toNonAssocSemiring.{u1} B _inst_7)))) (Module.toDistribMulAction.{u4, max u2 u3} S (Unitization.{u2, u3} R A) (CommSemiring.toSemiring.{u4} S _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{max u2 u3} (Unitization.{u2, u3} R A) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{max u2 u3} (Unitization.{u2, u3} R A) (Semiring.toNonAssocSemiring.{max u2 u3} (Unitization.{u2, u3} R A) (Unitization.semiring.{u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5)))) (Algebra.toModule.{u4, max u2 u3} S (Unitization.{u2, u3} R A) _inst_1 (Unitization.semiring.{u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5) (Unitization.algebra.{u4, u2, u3} S R A _inst_1 _inst_2 _inst_3 _inst_4 _inst_6 _inst_5 _inst_9 _inst_10 _inst_11))) (Module.toDistribMulAction.{u4, u1} S B (CommSemiring.toSemiring.{u4} S _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} B (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} B (Semiring.toNonAssocSemiring.{u1} B _inst_7))) (Algebra.toModule.{u4, u1} S B _inst_1 _inst_7 _inst_8)) (NonUnitalAlgHomClass.toDistribMulActionHomClass.{max (max u2 u3) u1, u4, max u2 u3, u1} (AlgHom.{u4, max u3 u2, u1} S (Unitization.{u2, u3} R A) B _inst_1 (Unitization.semiring.{u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5) _inst_7 (Unitization.algebra.{u4, u2, u3} S R A _inst_1 _inst_2 _inst_3 _inst_4 _inst_6 _inst_5 _inst_9 _inst_10 _inst_11) _inst_8) S (Unitization.{u2, u3} R A) B (MonoidWithZero.toMonoid.{u4} S (Semiring.toMonoidWithZero.{u4} S (CommSemiring.toSemiring.{u4} S _inst_1))) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{max u2 u3} (Unitization.{u2, u3} R A) (Semiring.toNonAssocSemiring.{max u2 u3} (Unitization.{u2, u3} R A) (Unitization.semiring.{u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5))) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} B (Semiring.toNonAssocSemiring.{u1} B _inst_7)) (Module.toDistribMulAction.{u4, max u2 u3} S (Unitization.{u2, u3} R A) (CommSemiring.toSemiring.{u4} S _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{max u2 u3} (Unitization.{u2, u3} R A) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{max u2 u3} (Unitization.{u2, u3} R A) (Semiring.toNonAssocSemiring.{max u2 u3} (Unitization.{u2, u3} R A) (Unitization.semiring.{u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5)))) (Algebra.toModule.{u4, max u2 u3} S (Unitization.{u2, u3} R A) _inst_1 (Unitization.semiring.{u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5) (Unitization.algebra.{u4, u2, u3} S R A _inst_1 _inst_2 _inst_3 _inst_4 _inst_6 _inst_5 _inst_9 _inst_10 _inst_11))) (Module.toDistribMulAction.{u4, u1} S B (CommSemiring.toSemiring.{u4} S _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} B (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} B (Semiring.toNonAssocSemiring.{u1} B _inst_7))) (Algebra.toModule.{u4, u1} S B _inst_1 _inst_7 _inst_8)) (AlgHom.instNonUnitalAlgHomClassToMonoidToMonoidWithZeroToSemiringToNonUnitalNonAssocSemiringToNonAssocSemiringToNonUnitalNonAssocSemiringToNonAssocSemiringToDistribMulActionToAddCommMonoidToModuleToDistribMulActionToAddCommMonoidToModule.{u4, max u2 u3, u1, max (max u2 u3) u1} S (Unitization.{u2, u3} R A) B _inst_1 (Unitization.semiring.{u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5) _inst_7 (Unitization.algebra.{u4, u2, u3} S R A _inst_1 _inst_2 _inst_3 _inst_4 _inst_6 _inst_5 _inst_9 _inst_10 _inst_11) _inst_8 (AlgHom.{u4, max u3 u2, u1} S (Unitization.{u2, u3} R A) B _inst_1 (Unitization.semiring.{u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5) _inst_7 (Unitization.algebra.{u4, u2, u3} S R A _inst_1 _inst_2 _inst_3 _inst_4 _inst_6 _inst_5 _inst_9 _inst_10 _inst_11) _inst_8) (AlgHom.algHomClass.{u4, max u2 u3, u1} S (Unitization.{u2, u3} R A) B _inst_1 (Unitization.semiring.{u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5) _inst_7 (Unitization.algebra.{u4, u2, u3} S R A _inst_1 _inst_2 _inst_3 _inst_4 _inst_6 _inst_5 _inst_9 _inst_10 _inst_11) _inst_8))))) ψ (FunLike.coe.{max (succ u2) (succ u3), succ u2, max (succ u2) (succ u3)} (RingHom.{u2, max u3 u2} R (Unitization.{u2, u3} R A) (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_2)) (Semiring.toNonAssocSemiring.{max u3 u2} (Unitization.{u2, u3} R A) (Unitization.semiring.{u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5))) R (fun (_x : R) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : R) => Unitization.{u2, u3} R A) _x) (MulHomClass.toFunLike.{max u2 u3, u2, max u2 u3} (RingHom.{u2, max u3 u2} R (Unitization.{u2, u3} R A) (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_2)) (Semiring.toNonAssocSemiring.{max u3 u2} (Unitization.{u2, u3} R A) (Unitization.semiring.{u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5))) R (Unitization.{u2, u3} R A) (NonUnitalNonAssocSemiring.toMul.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_2)))) (NonUnitalNonAssocSemiring.toMul.{max u2 u3} (Unitization.{u2, u3} R A) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{max u2 u3} (Unitization.{u2, u3} R A) (Semiring.toNonAssocSemiring.{max u3 u2} (Unitization.{u2, u3} R A) (Unitization.semiring.{u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5)))) (NonUnitalRingHomClass.toMulHomClass.{max u2 u3, u2, max u2 u3} (RingHom.{u2, max u3 u2} R (Unitization.{u2, u3} R A) (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_2)) (Semiring.toNonAssocSemiring.{max u3 u2} (Unitization.{u2, u3} R A) (Unitization.semiring.{u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5))) R (Unitization.{u2, u3} R A) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_2))) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{max u2 u3} (Unitization.{u2, u3} R A) (Semiring.toNonAssocSemiring.{max u3 u2} (Unitization.{u2, u3} R A) (Unitization.semiring.{u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5))) (RingHomClass.toNonUnitalRingHomClass.{max u2 u3, u2, max u2 u3} (RingHom.{u2, max u3 u2} R (Unitization.{u2, u3} R A) (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_2)) (Semiring.toNonAssocSemiring.{max u3 u2} (Unitization.{u2, u3} R A) (Unitization.semiring.{u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5))) R (Unitization.{u2, u3} R A) (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_2)) (Semiring.toNonAssocSemiring.{max u3 u2} (Unitization.{u2, u3} R A) (Unitization.semiring.{u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5)) (RingHom.instRingHomClassRingHom.{u2, max u2 u3} R (Unitization.{u2, u3} R A) (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_2)) (Semiring.toNonAssocSemiring.{max u3 u2} (Unitization.{u2, u3} R A) (Unitization.semiring.{u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5)))))) (algebraMap.{u2, max u3 u2} R (Unitization.{u2, u3} R A) _inst_2 (Unitization.semiring.{u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5) (Unitization.algebra.{u2, u2, u3} R R A _inst_2 _inst_2 _inst_3 _inst_4 _inst_6 _inst_5 (Algebra.id.{u2} R _inst_2) (Module.toDistribMulAction.{u2, u3} R A (CommSemiring.toSemiring.{u2} R _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u3} A _inst_3)) _inst_4) (IsScalarTower.left.{u2, u3} R A (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R _inst_2))) (MulActionWithZero.toMulAction.{u2, u3} R A (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R _inst_2)) (SemigroupWithZero.toZero.{u3} A (NonUnitalSemiring.toSemigroupWithZero.{u3} A _inst_3)) (Module.toMulActionWithZero.{u2, u3} R A (CommSemiring.toSemiring.{u2} R _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u3} A _inst_3)) _inst_4))))) r))) -> (Eq.{max (max (succ u2) (succ u3)) (succ u1)} (AlgHom.{u4, max u3 u2, u1} S (Unitization.{u2, u3} R A) B _inst_1 (Unitization.semiring.{u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5) _inst_7 (Unitization.algebra.{u4, u2, u3} S R A _inst_1 _inst_2 _inst_3 _inst_4 _inst_6 _inst_5 _inst_9 _inst_10 _inst_11) _inst_8) φ ψ)
 Case conversion may be inaccurate. Consider using '#align unitization.alg_hom_ext Unitization.algHom_extₓ'. -/
 theorem algHom_ext {φ ψ : Unitization R A →ₐ[S] B} (h : ∀ a : A, φ a = ψ a)
     (h' : ∀ r, φ (algebraMap R (Unitization R A) r) = ψ (algebraMap R (Unitization R A) r)) :
Diff
@@ -840,7 +840,7 @@ instance algebra : Algebra S (Unitization R A) :=
 lean 3 declaration is
   forall (S : Type.{u1}) (R : Type.{u2}) (A : Type.{u3}) [_inst_1 : CommSemiring.{u1} S] [_inst_2 : CommSemiring.{u2} R] [_inst_3 : NonUnitalSemiring.{u3} A] [_inst_4 : Module.{u2, u3} R A (CommSemiring.toSemiring.{u2} R _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u3} A _inst_3))] [_inst_5 : IsScalarTower.{u2, u3, u3} R A A (SMulZeroClass.toHasSmul.{u2, u3} R A (AddZeroClass.toHasZero.{u3} A (AddMonoid.toAddZeroClass.{u3} A (AddCommMonoid.toAddMonoid.{u3} A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u3} A _inst_3))))) (SMulWithZero.toSmulZeroClass.{u2, u3} R A (MulZeroClass.toHasZero.{u2} R (MulZeroOneClass.toMulZeroClass.{u2} R (MonoidWithZero.toMulZeroOneClass.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R _inst_2))))) (AddZeroClass.toHasZero.{u3} A (AddMonoid.toAddZeroClass.{u3} A (AddCommMonoid.toAddMonoid.{u3} A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u3} A _inst_3))))) (MulActionWithZero.toSMulWithZero.{u2, u3} R A (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R _inst_2)) (AddZeroClass.toHasZero.{u3} A (AddMonoid.toAddZeroClass.{u3} A (AddCommMonoid.toAddMonoid.{u3} A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u3} A _inst_3))))) (Module.toMulActionWithZero.{u2, u3} R A (CommSemiring.toSemiring.{u2} R _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u3} A _inst_3)) _inst_4)))) (Mul.toSMul.{u3} A (Distrib.toHasMul.{u3} A (NonUnitalNonAssocSemiring.toDistrib.{u3} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u3} A _inst_3)))) (SMulZeroClass.toHasSmul.{u2, u3} R A (AddZeroClass.toHasZero.{u3} A (AddMonoid.toAddZeroClass.{u3} A (AddCommMonoid.toAddMonoid.{u3} A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u3} A _inst_3))))) (SMulWithZero.toSmulZeroClass.{u2, u3} R A (MulZeroClass.toHasZero.{u2} R (MulZeroOneClass.toMulZeroClass.{u2} R (MonoidWithZero.toMulZeroOneClass.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R _inst_2))))) (AddZeroClass.toHasZero.{u3} A (AddMonoid.toAddZeroClass.{u3} A (AddCommMonoid.toAddMonoid.{u3} A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u3} A _inst_3))))) (MulActionWithZero.toSMulWithZero.{u2, u3} R A (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R _inst_2)) (AddZeroClass.toHasZero.{u3} A (AddMonoid.toAddZeroClass.{u3} A (AddCommMonoid.toAddMonoid.{u3} A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u3} A _inst_3))))) (Module.toMulActionWithZero.{u2, u3} R A (CommSemiring.toSemiring.{u2} R _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u3} A _inst_3)) _inst_4))))] [_inst_6 : SMulCommClass.{u2, u3, u3} R A A (SMulZeroClass.toHasSmul.{u2, u3} R A (AddZeroClass.toHasZero.{u3} A (AddMonoid.toAddZeroClass.{u3} A (AddCommMonoid.toAddMonoid.{u3} A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u3} A _inst_3))))) (SMulWithZero.toSmulZeroClass.{u2, u3} R A (MulZeroClass.toHasZero.{u2} R (MulZeroOneClass.toMulZeroClass.{u2} R (MonoidWithZero.toMulZeroOneClass.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R _inst_2))))) (AddZeroClass.toHasZero.{u3} A (AddMonoid.toAddZeroClass.{u3} A (AddCommMonoid.toAddMonoid.{u3} A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u3} A _inst_3))))) (MulActionWithZero.toSMulWithZero.{u2, u3} R A (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R _inst_2)) (AddZeroClass.toHasZero.{u3} A (AddMonoid.toAddZeroClass.{u3} A (AddCommMonoid.toAddMonoid.{u3} A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u3} A _inst_3))))) (Module.toMulActionWithZero.{u2, u3} R A (CommSemiring.toSemiring.{u2} R _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u3} A _inst_3)) _inst_4)))) (Mul.toSMul.{u3} A (Distrib.toHasMul.{u3} A (NonUnitalNonAssocSemiring.toDistrib.{u3} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u3} A _inst_3))))] [_inst_7 : Algebra.{u1, u2} S R _inst_1 (CommSemiring.toSemiring.{u2} R _inst_2)] [_inst_8 : DistribMulAction.{u1, u3} S A (MonoidWithZero.toMonoid.{u1} S (Semiring.toMonoidWithZero.{u1} S (CommSemiring.toSemiring.{u1} S _inst_1))) (AddCommMonoid.toAddMonoid.{u3} A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u3} A _inst_3)))] [_inst_9 : IsScalarTower.{u1, u2, u3} S R A (SMulZeroClass.toHasSmul.{u1, u2} S R (AddZeroClass.toHasZero.{u2} R (AddMonoid.toAddZeroClass.{u2} R (AddCommMonoid.toAddMonoid.{u2} R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_2))))))) (SMulWithZero.toSmulZeroClass.{u1, u2} S R (MulZeroClass.toHasZero.{u1} S (MulZeroOneClass.toMulZeroClass.{u1} S (MonoidWithZero.toMulZeroOneClass.{u1} S (Semiring.toMonoidWithZero.{u1} S (CommSemiring.toSemiring.{u1} S _inst_1))))) (AddZeroClass.toHasZero.{u2} R (AddMonoid.toAddZeroClass.{u2} R (AddCommMonoid.toAddMonoid.{u2} R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_2))))))) (MulActionWithZero.toSMulWithZero.{u1, u2} S R (Semiring.toMonoidWithZero.{u1} S (CommSemiring.toSemiring.{u1} S _inst_1)) (AddZeroClass.toHasZero.{u2} R (AddMonoid.toAddZeroClass.{u2} R (AddCommMonoid.toAddMonoid.{u2} R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_2))))))) (Module.toMulActionWithZero.{u1, u2} S R (CommSemiring.toSemiring.{u1} S _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_2)))) (Algebra.toModule.{u1, u2} S R _inst_1 (CommSemiring.toSemiring.{u2} R _inst_2) _inst_7))))) (SMulZeroClass.toHasSmul.{u2, u3} R A (AddZeroClass.toHasZero.{u3} A (AddMonoid.toAddZeroClass.{u3} A (AddCommMonoid.toAddMonoid.{u3} A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u3} A _inst_3))))) (SMulWithZero.toSmulZeroClass.{u2, u3} R A (MulZeroClass.toHasZero.{u2} R (MulZeroOneClass.toMulZeroClass.{u2} R (MonoidWithZero.toMulZeroOneClass.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R _inst_2))))) (AddZeroClass.toHasZero.{u3} A (AddMonoid.toAddZeroClass.{u3} A (AddCommMonoid.toAddMonoid.{u3} A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u3} A _inst_3))))) (MulActionWithZero.toSMulWithZero.{u2, u3} R A (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R _inst_2)) (AddZeroClass.toHasZero.{u3} A (AddMonoid.toAddZeroClass.{u3} A (AddCommMonoid.toAddMonoid.{u3} A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u3} A _inst_3))))) (Module.toMulActionWithZero.{u2, u3} R A (CommSemiring.toSemiring.{u2} R _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u3} A _inst_3)) _inst_4)))) (SMulZeroClass.toHasSmul.{u1, u3} S A (AddZeroClass.toHasZero.{u3} A (AddMonoid.toAddZeroClass.{u3} A (AddCommMonoid.toAddMonoid.{u3} A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u3} A _inst_3))))) (DistribSMul.toSmulZeroClass.{u1, u3} S A (AddMonoid.toAddZeroClass.{u3} A (AddCommMonoid.toAddMonoid.{u3} A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u3} A _inst_3)))) (DistribMulAction.toDistribSMul.{u1, u3} S A (MonoidWithZero.toMonoid.{u1} S (Semiring.toMonoidWithZero.{u1} S (CommSemiring.toSemiring.{u1} S _inst_1))) (AddCommMonoid.toAddMonoid.{u3} A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u3} A _inst_3))) _inst_8)))], Eq.{max (succ u1) (succ (max u2 u3))} (S -> (Unitization.{u2, u3} R A)) (coeFn.{max (succ u1) (succ (max u2 u3)), max (succ u1) (succ (max u2 u3))} (RingHom.{u1, max u2 u3} S (Unitization.{u2, u3} R A) (Semiring.toNonAssocSemiring.{u1} S (CommSemiring.toSemiring.{u1} S _inst_1)) (Semiring.toNonAssocSemiring.{max u2 u3} (Unitization.{u2, u3} R A) (Unitization.semiring.{u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_5 _inst_6))) (fun (_x : RingHom.{u1, max u2 u3} S (Unitization.{u2, u3} R A) (Semiring.toNonAssocSemiring.{u1} S (CommSemiring.toSemiring.{u1} S _inst_1)) (Semiring.toNonAssocSemiring.{max u2 u3} (Unitization.{u2, u3} R A) (Unitization.semiring.{u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_5 _inst_6))) => S -> (Unitization.{u2, u3} R A)) (RingHom.hasCoeToFun.{u1, max u2 u3} S (Unitization.{u2, u3} R A) (Semiring.toNonAssocSemiring.{u1} S (CommSemiring.toSemiring.{u1} S _inst_1)) (Semiring.toNonAssocSemiring.{max u2 u3} (Unitization.{u2, u3} R A) (Unitization.semiring.{u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_5 _inst_6))) (algebraMap.{u1, max u2 u3} S (Unitization.{u2, u3} R A) _inst_1 (Unitization.semiring.{u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_5 _inst_6) (Unitization.algebra.{u1, u2, u3} S R A _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 _inst_6 _inst_7 _inst_8 _inst_9))) (Function.comp.{succ u1, succ u2, max (succ u2) (succ u3)} S R (Unitization.{u2, u3} R A) (Unitization.inl.{u2, u3} R A (MulZeroClass.toHasZero.{u3} A (NonUnitalNonAssocSemiring.toMulZeroClass.{u3} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u3} A _inst_3)))) (coeFn.{max (succ u1) (succ u2), max (succ u1) (succ u2)} (RingHom.{u1, u2} S R (Semiring.toNonAssocSemiring.{u1} S (CommSemiring.toSemiring.{u1} S _inst_1)) (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_2))) (fun (_x : RingHom.{u1, u2} S R (Semiring.toNonAssocSemiring.{u1} S (CommSemiring.toSemiring.{u1} S _inst_1)) (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_2))) => S -> R) (RingHom.hasCoeToFun.{u1, u2} S R (Semiring.toNonAssocSemiring.{u1} S (CommSemiring.toSemiring.{u1} S _inst_1)) (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_2))) (algebraMap.{u1, u2} S R _inst_1 (CommSemiring.toSemiring.{u2} R _inst_2) _inst_7)))
 but is expected to have type
-  forall (S : Type.{u3}) (R : Type.{u2}) (A : Type.{u1}) [_inst_1 : CommSemiring.{u3} S] [_inst_2 : CommSemiring.{u2} R] [_inst_3 : NonUnitalSemiring.{u1} A] [_inst_4 : Module.{u2, u1} R A (CommSemiring.toSemiring.{u2} R _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u1} A _inst_3))] [_inst_5 : IsScalarTower.{u2, u1, u1} R A A (SMulZeroClass.toSMul.{u2, u1} R A (SemigroupWithZero.toZero.{u1} A (NonUnitalSemiring.toSemigroupWithZero.{u1} A _inst_3)) (SMulWithZero.toSMulZeroClass.{u2, u1} R A (CommMonoidWithZero.toZero.{u2} R (CommSemiring.toCommMonoidWithZero.{u2} R _inst_2)) (SemigroupWithZero.toZero.{u1} A (NonUnitalSemiring.toSemigroupWithZero.{u1} A _inst_3)) (MulActionWithZero.toSMulWithZero.{u2, u1} R A (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R _inst_2)) (SemigroupWithZero.toZero.{u1} A (NonUnitalSemiring.toSemigroupWithZero.{u1} A _inst_3)) (Module.toMulActionWithZero.{u2, u1} R A (CommSemiring.toSemiring.{u2} R _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u1} A _inst_3)) _inst_4)))) (SMulZeroClass.toSMul.{u1, u1} A A (SemigroupWithZero.toZero.{u1} A (NonUnitalSemiring.toSemigroupWithZero.{u1} A _inst_3)) (SMulWithZero.toSMulZeroClass.{u1, u1} A A (SemigroupWithZero.toZero.{u1} A (NonUnitalSemiring.toSemigroupWithZero.{u1} A _inst_3)) (SemigroupWithZero.toZero.{u1} A (NonUnitalSemiring.toSemigroupWithZero.{u1} A _inst_3)) (MulZeroClass.toSMulWithZero.{u1} A (NonUnitalNonAssocSemiring.toMulZeroClass.{u1} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u1} A _inst_3))))) (SMulZeroClass.toSMul.{u2, u1} R A (SemigroupWithZero.toZero.{u1} A (NonUnitalSemiring.toSemigroupWithZero.{u1} A _inst_3)) (SMulWithZero.toSMulZeroClass.{u2, u1} R A (CommMonoidWithZero.toZero.{u2} R (CommSemiring.toCommMonoidWithZero.{u2} R _inst_2)) (SemigroupWithZero.toZero.{u1} A (NonUnitalSemiring.toSemigroupWithZero.{u1} A _inst_3)) (MulActionWithZero.toSMulWithZero.{u2, u1} R A (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R _inst_2)) (SemigroupWithZero.toZero.{u1} A (NonUnitalSemiring.toSemigroupWithZero.{u1} A _inst_3)) (Module.toMulActionWithZero.{u2, u1} R A (CommSemiring.toSemiring.{u2} R _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u1} A _inst_3)) _inst_4))))] [_inst_6 : SMulCommClass.{u2, u1, u1} R A A (SMulZeroClass.toSMul.{u2, u1} R A (SemigroupWithZero.toZero.{u1} A (NonUnitalSemiring.toSemigroupWithZero.{u1} A _inst_3)) (SMulWithZero.toSMulZeroClass.{u2, u1} R A (CommMonoidWithZero.toZero.{u2} R (CommSemiring.toCommMonoidWithZero.{u2} R _inst_2)) (SemigroupWithZero.toZero.{u1} A (NonUnitalSemiring.toSemigroupWithZero.{u1} A _inst_3)) (MulActionWithZero.toSMulWithZero.{u2, u1} R A (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R _inst_2)) (SemigroupWithZero.toZero.{u1} A (NonUnitalSemiring.toSemigroupWithZero.{u1} A _inst_3)) (Module.toMulActionWithZero.{u2, u1} R A (CommSemiring.toSemiring.{u2} R _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u1} A _inst_3)) _inst_4)))) (SMulZeroClass.toSMul.{u1, u1} A A (SemigroupWithZero.toZero.{u1} A (NonUnitalSemiring.toSemigroupWithZero.{u1} A _inst_3)) (SMulWithZero.toSMulZeroClass.{u1, u1} A A (SemigroupWithZero.toZero.{u1} A (NonUnitalSemiring.toSemigroupWithZero.{u1} A _inst_3)) (SemigroupWithZero.toZero.{u1} A (NonUnitalSemiring.toSemigroupWithZero.{u1} A _inst_3)) (MulZeroClass.toSMulWithZero.{u1} A (NonUnitalNonAssocSemiring.toMulZeroClass.{u1} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u1} A _inst_3)))))] [_inst_7 : Algebra.{u3, u2} S R _inst_1 (CommSemiring.toSemiring.{u2} R _inst_2)] [_inst_8 : DistribMulAction.{u3, u1} S A (MonoidWithZero.toMonoid.{u3} S (Semiring.toMonoidWithZero.{u3} S (CommSemiring.toSemiring.{u3} S _inst_1))) (AddCommMonoid.toAddMonoid.{u1} A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u1} A _inst_3)))] [_inst_9 : IsScalarTower.{u3, u2, u1} S R A (Algebra.toSMul.{u3, u2} S R _inst_1 (CommSemiring.toSemiring.{u2} R _inst_2) _inst_7) (SMulZeroClass.toSMul.{u2, u1} R A (SemigroupWithZero.toZero.{u1} A (NonUnitalSemiring.toSemigroupWithZero.{u1} A _inst_3)) (SMulWithZero.toSMulZeroClass.{u2, u1} R A (CommMonoidWithZero.toZero.{u2} R (CommSemiring.toCommMonoidWithZero.{u2} R _inst_2)) (SemigroupWithZero.toZero.{u1} A (NonUnitalSemiring.toSemigroupWithZero.{u1} A _inst_3)) (MulActionWithZero.toSMulWithZero.{u2, u1} R A (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R _inst_2)) (SemigroupWithZero.toZero.{u1} A (NonUnitalSemiring.toSemigroupWithZero.{u1} A _inst_3)) (Module.toMulActionWithZero.{u2, u1} R A (CommSemiring.toSemiring.{u2} R _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u1} A _inst_3)) _inst_4)))) (SMulZeroClass.toSMul.{u3, u1} S A (SemigroupWithZero.toZero.{u1} A (NonUnitalSemiring.toSemigroupWithZero.{u1} A _inst_3)) (DistribSMul.toSMulZeroClass.{u3, u1} S A (AddMonoid.toAddZeroClass.{u1} A (AddCommMonoid.toAddMonoid.{u1} A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u1} A _inst_3)))) (DistribMulAction.toDistribSMul.{u3, u1} S A (MonoidWithZero.toMonoid.{u3} S (Semiring.toMonoidWithZero.{u3} S (CommSemiring.toSemiring.{u3} S _inst_1))) (AddCommMonoid.toAddMonoid.{u1} A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u1} A _inst_3))) _inst_8)))], Eq.{max (max (succ u3) (succ u2)) (succ u1)} (forall (ᾰ : S), (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : S) => Unitization.{u2, u1} R A) ᾰ) (FunLike.coe.{max (max (succ u3) (succ u2)) (succ u1), succ u3, max (succ u2) (succ u1)} (RingHom.{u3, max u1 u2} S (Unitization.{u2, u1} R A) (Semiring.toNonAssocSemiring.{u3} S (CommSemiring.toSemiring.{u3} S _inst_1)) (Semiring.toNonAssocSemiring.{max u1 u2} (Unitization.{u2, u1} R A) (Unitization.semiring.{u2, u1} R A _inst_2 _inst_3 _inst_4 _inst_5 _inst_6))) S (fun (_x : S) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : S) => Unitization.{u2, u1} R A) _x) (MulHomClass.toFunLike.{max (max u3 u2) u1, u3, max u2 u1} (RingHom.{u3, max u1 u2} S (Unitization.{u2, u1} R A) (Semiring.toNonAssocSemiring.{u3} S (CommSemiring.toSemiring.{u3} S _inst_1)) (Semiring.toNonAssocSemiring.{max u1 u2} (Unitization.{u2, u1} R A) (Unitization.semiring.{u2, u1} R A _inst_2 _inst_3 _inst_4 _inst_5 _inst_6))) S (Unitization.{u2, u1} R A) (NonUnitalNonAssocSemiring.toMul.{u3} S (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} S (Semiring.toNonAssocSemiring.{u3} S (CommSemiring.toSemiring.{u3} S _inst_1)))) (NonUnitalNonAssocSemiring.toMul.{max u2 u1} (Unitization.{u2, u1} R A) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{max u2 u1} (Unitization.{u2, u1} R A) (Semiring.toNonAssocSemiring.{max u1 u2} (Unitization.{u2, u1} R A) (Unitization.semiring.{u2, u1} R A _inst_2 _inst_3 _inst_4 _inst_5 _inst_6)))) (NonUnitalRingHomClass.toMulHomClass.{max (max u3 u2) u1, u3, max u2 u1} (RingHom.{u3, max u1 u2} S (Unitization.{u2, u1} R A) (Semiring.toNonAssocSemiring.{u3} S (CommSemiring.toSemiring.{u3} S _inst_1)) (Semiring.toNonAssocSemiring.{max u1 u2} (Unitization.{u2, u1} R A) (Unitization.semiring.{u2, u1} R A _inst_2 _inst_3 _inst_4 _inst_5 _inst_6))) S (Unitization.{u2, u1} R A) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} S (Semiring.toNonAssocSemiring.{u3} S (CommSemiring.toSemiring.{u3} S _inst_1))) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{max u2 u1} (Unitization.{u2, u1} R A) (Semiring.toNonAssocSemiring.{max u1 u2} (Unitization.{u2, u1} R A) (Unitization.semiring.{u2, u1} R A _inst_2 _inst_3 _inst_4 _inst_5 _inst_6))) (RingHomClass.toNonUnitalRingHomClass.{max (max u3 u2) u1, u3, max u2 u1} (RingHom.{u3, max u1 u2} S (Unitization.{u2, u1} R A) (Semiring.toNonAssocSemiring.{u3} S (CommSemiring.toSemiring.{u3} S _inst_1)) (Semiring.toNonAssocSemiring.{max u1 u2} (Unitization.{u2, u1} R A) (Unitization.semiring.{u2, u1} R A _inst_2 _inst_3 _inst_4 _inst_5 _inst_6))) S (Unitization.{u2, u1} R A) (Semiring.toNonAssocSemiring.{u3} S (CommSemiring.toSemiring.{u3} S _inst_1)) (Semiring.toNonAssocSemiring.{max u1 u2} (Unitization.{u2, u1} R A) (Unitization.semiring.{u2, u1} R A _inst_2 _inst_3 _inst_4 _inst_5 _inst_6)) (RingHom.instRingHomClassRingHom.{u3, max u2 u1} S (Unitization.{u2, u1} R A) (Semiring.toNonAssocSemiring.{u3} S (CommSemiring.toSemiring.{u3} S _inst_1)) (Semiring.toNonAssocSemiring.{max u1 u2} (Unitization.{u2, u1} R A) (Unitization.semiring.{u2, u1} R A _inst_2 _inst_3 _inst_4 _inst_5 _inst_6)))))) (algebraMap.{u3, max u1 u2} S (Unitization.{u2, u1} R A) _inst_1 (Unitization.semiring.{u2, u1} R A _inst_2 _inst_3 _inst_4 _inst_5 _inst_6) (Unitization.algebra.{u3, u2, u1} S R A _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 _inst_6 _inst_7 _inst_8 _inst_9))) (Function.comp.{succ u3, succ u2, max (succ u1) (succ u2)} S R (Unitization.{u2, u1} R A) (Unitization.inl.{u2, u1} R A (SemigroupWithZero.toZero.{u1} A (NonUnitalSemiring.toSemigroupWithZero.{u1} A _inst_3))) (FunLike.coe.{max (succ u3) (succ u2), succ u3, succ u2} (RingHom.{u3, u2} S R (Semiring.toNonAssocSemiring.{u3} S (CommSemiring.toSemiring.{u3} S _inst_1)) (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_2))) S (fun (_x : S) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : S) => R) _x) (MulHomClass.toFunLike.{max u3 u2, u3, u2} (RingHom.{u3, u2} S R (Semiring.toNonAssocSemiring.{u3} S (CommSemiring.toSemiring.{u3} S _inst_1)) (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_2))) S R (NonUnitalNonAssocSemiring.toMul.{u3} S (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} S (Semiring.toNonAssocSemiring.{u3} S (CommSemiring.toSemiring.{u3} S _inst_1)))) (NonUnitalNonAssocSemiring.toMul.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_2)))) (NonUnitalRingHomClass.toMulHomClass.{max u3 u2, u3, u2} (RingHom.{u3, u2} S R (Semiring.toNonAssocSemiring.{u3} S (CommSemiring.toSemiring.{u3} S _inst_1)) (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_2))) S R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} S (Semiring.toNonAssocSemiring.{u3} S (CommSemiring.toSemiring.{u3} S _inst_1))) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_2))) (RingHomClass.toNonUnitalRingHomClass.{max u3 u2, u3, u2} (RingHom.{u3, u2} S R (Semiring.toNonAssocSemiring.{u3} S (CommSemiring.toSemiring.{u3} S _inst_1)) (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_2))) S R (Semiring.toNonAssocSemiring.{u3} S (CommSemiring.toSemiring.{u3} S _inst_1)) (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_2)) (RingHom.instRingHomClassRingHom.{u3, u2} S R (Semiring.toNonAssocSemiring.{u3} S (CommSemiring.toSemiring.{u3} S _inst_1)) (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_2)))))) (algebraMap.{u3, u2} S R _inst_1 (CommSemiring.toSemiring.{u2} R _inst_2) _inst_7)))
+  forall (S : Type.{u3}) (R : Type.{u2}) (A : Type.{u1}) [_inst_1 : CommSemiring.{u3} S] [_inst_2 : CommSemiring.{u2} R] [_inst_3 : NonUnitalSemiring.{u1} A] [_inst_4 : Module.{u2, u1} R A (CommSemiring.toSemiring.{u2} R _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u1} A _inst_3))] [_inst_5 : IsScalarTower.{u2, u1, u1} R A A (SMulZeroClass.toSMul.{u2, u1} R A (SemigroupWithZero.toZero.{u1} A (NonUnitalSemiring.toSemigroupWithZero.{u1} A _inst_3)) (SMulWithZero.toSMulZeroClass.{u2, u1} R A (CommMonoidWithZero.toZero.{u2} R (CommSemiring.toCommMonoidWithZero.{u2} R _inst_2)) (SemigroupWithZero.toZero.{u1} A (NonUnitalSemiring.toSemigroupWithZero.{u1} A _inst_3)) (MulActionWithZero.toSMulWithZero.{u2, u1} R A (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R _inst_2)) (SemigroupWithZero.toZero.{u1} A (NonUnitalSemiring.toSemigroupWithZero.{u1} A _inst_3)) (Module.toMulActionWithZero.{u2, u1} R A (CommSemiring.toSemiring.{u2} R _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u1} A _inst_3)) _inst_4)))) (SMulZeroClass.toSMul.{u1, u1} A A (SemigroupWithZero.toZero.{u1} A (NonUnitalSemiring.toSemigroupWithZero.{u1} A _inst_3)) (SMulWithZero.toSMulZeroClass.{u1, u1} A A (SemigroupWithZero.toZero.{u1} A (NonUnitalSemiring.toSemigroupWithZero.{u1} A _inst_3)) (SemigroupWithZero.toZero.{u1} A (NonUnitalSemiring.toSemigroupWithZero.{u1} A _inst_3)) (MulZeroClass.toSMulWithZero.{u1} A (NonUnitalNonAssocSemiring.toMulZeroClass.{u1} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u1} A _inst_3))))) (SMulZeroClass.toSMul.{u2, u1} R A (SemigroupWithZero.toZero.{u1} A (NonUnitalSemiring.toSemigroupWithZero.{u1} A _inst_3)) (SMulWithZero.toSMulZeroClass.{u2, u1} R A (CommMonoidWithZero.toZero.{u2} R (CommSemiring.toCommMonoidWithZero.{u2} R _inst_2)) (SemigroupWithZero.toZero.{u1} A (NonUnitalSemiring.toSemigroupWithZero.{u1} A _inst_3)) (MulActionWithZero.toSMulWithZero.{u2, u1} R A (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R _inst_2)) (SemigroupWithZero.toZero.{u1} A (NonUnitalSemiring.toSemigroupWithZero.{u1} A _inst_3)) (Module.toMulActionWithZero.{u2, u1} R A (CommSemiring.toSemiring.{u2} R _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u1} A _inst_3)) _inst_4))))] [_inst_6 : SMulCommClass.{u2, u1, u1} R A A (SMulZeroClass.toSMul.{u2, u1} R A (SemigroupWithZero.toZero.{u1} A (NonUnitalSemiring.toSemigroupWithZero.{u1} A _inst_3)) (SMulWithZero.toSMulZeroClass.{u2, u1} R A (CommMonoidWithZero.toZero.{u2} R (CommSemiring.toCommMonoidWithZero.{u2} R _inst_2)) (SemigroupWithZero.toZero.{u1} A (NonUnitalSemiring.toSemigroupWithZero.{u1} A _inst_3)) (MulActionWithZero.toSMulWithZero.{u2, u1} R A (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R _inst_2)) (SemigroupWithZero.toZero.{u1} A (NonUnitalSemiring.toSemigroupWithZero.{u1} A _inst_3)) (Module.toMulActionWithZero.{u2, u1} R A (CommSemiring.toSemiring.{u2} R _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u1} A _inst_3)) _inst_4)))) (SMulZeroClass.toSMul.{u1, u1} A A (SemigroupWithZero.toZero.{u1} A (NonUnitalSemiring.toSemigroupWithZero.{u1} A _inst_3)) (SMulWithZero.toSMulZeroClass.{u1, u1} A A (SemigroupWithZero.toZero.{u1} A (NonUnitalSemiring.toSemigroupWithZero.{u1} A _inst_3)) (SemigroupWithZero.toZero.{u1} A (NonUnitalSemiring.toSemigroupWithZero.{u1} A _inst_3)) (MulZeroClass.toSMulWithZero.{u1} A (NonUnitalNonAssocSemiring.toMulZeroClass.{u1} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u1} A _inst_3)))))] [_inst_7 : Algebra.{u3, u2} S R _inst_1 (CommSemiring.toSemiring.{u2} R _inst_2)] [_inst_8 : DistribMulAction.{u3, u1} S A (MonoidWithZero.toMonoid.{u3} S (Semiring.toMonoidWithZero.{u3} S (CommSemiring.toSemiring.{u3} S _inst_1))) (AddCommMonoid.toAddMonoid.{u1} A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u1} A _inst_3)))] [_inst_9 : IsScalarTower.{u3, u2, u1} S R A (Algebra.toSMul.{u3, u2} S R _inst_1 (CommSemiring.toSemiring.{u2} R _inst_2) _inst_7) (SMulZeroClass.toSMul.{u2, u1} R A (SemigroupWithZero.toZero.{u1} A (NonUnitalSemiring.toSemigroupWithZero.{u1} A _inst_3)) (SMulWithZero.toSMulZeroClass.{u2, u1} R A (CommMonoidWithZero.toZero.{u2} R (CommSemiring.toCommMonoidWithZero.{u2} R _inst_2)) (SemigroupWithZero.toZero.{u1} A (NonUnitalSemiring.toSemigroupWithZero.{u1} A _inst_3)) (MulActionWithZero.toSMulWithZero.{u2, u1} R A (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R _inst_2)) (SemigroupWithZero.toZero.{u1} A (NonUnitalSemiring.toSemigroupWithZero.{u1} A _inst_3)) (Module.toMulActionWithZero.{u2, u1} R A (CommSemiring.toSemiring.{u2} R _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u1} A _inst_3)) _inst_4)))) (SMulZeroClass.toSMul.{u3, u1} S A (SemigroupWithZero.toZero.{u1} A (NonUnitalSemiring.toSemigroupWithZero.{u1} A _inst_3)) (DistribSMul.toSMulZeroClass.{u3, u1} S A (AddMonoid.toAddZeroClass.{u1} A (AddCommMonoid.toAddMonoid.{u1} A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u1} A _inst_3)))) (DistribMulAction.toDistribSMul.{u3, u1} S A (MonoidWithZero.toMonoid.{u3} S (Semiring.toMonoidWithZero.{u3} S (CommSemiring.toSemiring.{u3} S _inst_1))) (AddCommMonoid.toAddMonoid.{u1} A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u1} A _inst_3))) _inst_8)))], Eq.{max (max (succ u3) (succ u2)) (succ u1)} (forall (ᾰ : S), (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : S) => Unitization.{u2, u1} R A) ᾰ) (FunLike.coe.{max (max (succ u3) (succ u2)) (succ u1), succ u3, max (succ u2) (succ u1)} (RingHom.{u3, max u1 u2} S (Unitization.{u2, u1} R A) (Semiring.toNonAssocSemiring.{u3} S (CommSemiring.toSemiring.{u3} S _inst_1)) (Semiring.toNonAssocSemiring.{max u1 u2} (Unitization.{u2, u1} R A) (Unitization.semiring.{u2, u1} R A _inst_2 _inst_3 _inst_4 _inst_5 _inst_6))) S (fun (_x : S) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : S) => Unitization.{u2, u1} R A) _x) (MulHomClass.toFunLike.{max (max u3 u2) u1, u3, max u2 u1} (RingHom.{u3, max u1 u2} S (Unitization.{u2, u1} R A) (Semiring.toNonAssocSemiring.{u3} S (CommSemiring.toSemiring.{u3} S _inst_1)) (Semiring.toNonAssocSemiring.{max u1 u2} (Unitization.{u2, u1} R A) (Unitization.semiring.{u2, u1} R A _inst_2 _inst_3 _inst_4 _inst_5 _inst_6))) S (Unitization.{u2, u1} R A) (NonUnitalNonAssocSemiring.toMul.{u3} S (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} S (Semiring.toNonAssocSemiring.{u3} S (CommSemiring.toSemiring.{u3} S _inst_1)))) (NonUnitalNonAssocSemiring.toMul.{max u2 u1} (Unitization.{u2, u1} R A) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{max u2 u1} (Unitization.{u2, u1} R A) (Semiring.toNonAssocSemiring.{max u1 u2} (Unitization.{u2, u1} R A) (Unitization.semiring.{u2, u1} R A _inst_2 _inst_3 _inst_4 _inst_5 _inst_6)))) (NonUnitalRingHomClass.toMulHomClass.{max (max u3 u2) u1, u3, max u2 u1} (RingHom.{u3, max u1 u2} S (Unitization.{u2, u1} R A) (Semiring.toNonAssocSemiring.{u3} S (CommSemiring.toSemiring.{u3} S _inst_1)) (Semiring.toNonAssocSemiring.{max u1 u2} (Unitization.{u2, u1} R A) (Unitization.semiring.{u2, u1} R A _inst_2 _inst_3 _inst_4 _inst_5 _inst_6))) S (Unitization.{u2, u1} R A) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} S (Semiring.toNonAssocSemiring.{u3} S (CommSemiring.toSemiring.{u3} S _inst_1))) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{max u2 u1} (Unitization.{u2, u1} R A) (Semiring.toNonAssocSemiring.{max u1 u2} (Unitization.{u2, u1} R A) (Unitization.semiring.{u2, u1} R A _inst_2 _inst_3 _inst_4 _inst_5 _inst_6))) (RingHomClass.toNonUnitalRingHomClass.{max (max u3 u2) u1, u3, max u2 u1} (RingHom.{u3, max u1 u2} S (Unitization.{u2, u1} R A) (Semiring.toNonAssocSemiring.{u3} S (CommSemiring.toSemiring.{u3} S _inst_1)) (Semiring.toNonAssocSemiring.{max u1 u2} (Unitization.{u2, u1} R A) (Unitization.semiring.{u2, u1} R A _inst_2 _inst_3 _inst_4 _inst_5 _inst_6))) S (Unitization.{u2, u1} R A) (Semiring.toNonAssocSemiring.{u3} S (CommSemiring.toSemiring.{u3} S _inst_1)) (Semiring.toNonAssocSemiring.{max u1 u2} (Unitization.{u2, u1} R A) (Unitization.semiring.{u2, u1} R A _inst_2 _inst_3 _inst_4 _inst_5 _inst_6)) (RingHom.instRingHomClassRingHom.{u3, max u2 u1} S (Unitization.{u2, u1} R A) (Semiring.toNonAssocSemiring.{u3} S (CommSemiring.toSemiring.{u3} S _inst_1)) (Semiring.toNonAssocSemiring.{max u1 u2} (Unitization.{u2, u1} R A) (Unitization.semiring.{u2, u1} R A _inst_2 _inst_3 _inst_4 _inst_5 _inst_6)))))) (algebraMap.{u3, max u1 u2} S (Unitization.{u2, u1} R A) _inst_1 (Unitization.semiring.{u2, u1} R A _inst_2 _inst_3 _inst_4 _inst_5 _inst_6) (Unitization.algebra.{u3, u2, u1} S R A _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 _inst_6 _inst_7 _inst_8 _inst_9))) (Function.comp.{succ u3, succ u2, max (succ u1) (succ u2)} S R (Unitization.{u2, u1} R A) (Unitization.inl.{u2, u1} R A (SemigroupWithZero.toZero.{u1} A (NonUnitalSemiring.toSemigroupWithZero.{u1} A _inst_3))) (FunLike.coe.{max (succ u3) (succ u2), succ u3, succ u2} (RingHom.{u3, u2} S R (Semiring.toNonAssocSemiring.{u3} S (CommSemiring.toSemiring.{u3} S _inst_1)) (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_2))) S (fun (_x : S) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : S) => R) _x) (MulHomClass.toFunLike.{max u3 u2, u3, u2} (RingHom.{u3, u2} S R (Semiring.toNonAssocSemiring.{u3} S (CommSemiring.toSemiring.{u3} S _inst_1)) (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_2))) S R (NonUnitalNonAssocSemiring.toMul.{u3} S (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} S (Semiring.toNonAssocSemiring.{u3} S (CommSemiring.toSemiring.{u3} S _inst_1)))) (NonUnitalNonAssocSemiring.toMul.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_2)))) (NonUnitalRingHomClass.toMulHomClass.{max u3 u2, u3, u2} (RingHom.{u3, u2} S R (Semiring.toNonAssocSemiring.{u3} S (CommSemiring.toSemiring.{u3} S _inst_1)) (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_2))) S R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} S (Semiring.toNonAssocSemiring.{u3} S (CommSemiring.toSemiring.{u3} S _inst_1))) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_2))) (RingHomClass.toNonUnitalRingHomClass.{max u3 u2, u3, u2} (RingHom.{u3, u2} S R (Semiring.toNonAssocSemiring.{u3} S (CommSemiring.toSemiring.{u3} S _inst_1)) (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_2))) S R (Semiring.toNonAssocSemiring.{u3} S (CommSemiring.toSemiring.{u3} S _inst_1)) (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_2)) (RingHom.instRingHomClassRingHom.{u3, u2} S R (Semiring.toNonAssocSemiring.{u3} S (CommSemiring.toSemiring.{u3} S _inst_1)) (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_2)))))) (algebraMap.{u3, u2} S R _inst_1 (CommSemiring.toSemiring.{u2} R _inst_2) _inst_7)))
 Case conversion may be inaccurate. Consider using '#align unitization.algebra_map_eq_inl_comp Unitization.algebraMap_eq_inl_compₓ'. -/
 theorem algebraMap_eq_inl_comp : ⇑(algebraMap S (Unitization R A)) = inl ∘ algebraMap S R :=
   rfl
@@ -861,7 +861,7 @@ theorem algebraMap_eq_inlRingHom_comp :
 lean 3 declaration is
   forall (R : Type.{u1}) (A : Type.{u2}) [_inst_2 : CommSemiring.{u1} R] [_inst_3 : NonUnitalSemiring.{u2} A] [_inst_4 : Module.{u1, u2} R A (CommSemiring.toSemiring.{u1} R _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u2} A _inst_3))] [_inst_5 : IsScalarTower.{u1, u2, u2} R A A (SMulZeroClass.toHasSmul.{u1, u2} R A (AddZeroClass.toHasZero.{u2} A (AddMonoid.toAddZeroClass.{u2} A (AddCommMonoid.toAddMonoid.{u2} A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u2} A _inst_3))))) (SMulWithZero.toSmulZeroClass.{u1, u2} R A (MulZeroClass.toHasZero.{u1} R (MulZeroOneClass.toMulZeroClass.{u1} R (MonoidWithZero.toMulZeroOneClass.{u1} R (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R _inst_2))))) (AddZeroClass.toHasZero.{u2} A (AddMonoid.toAddZeroClass.{u2} A (AddCommMonoid.toAddMonoid.{u2} A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u2} A _inst_3))))) (MulActionWithZero.toSMulWithZero.{u1, u2} R A (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R _inst_2)) (AddZeroClass.toHasZero.{u2} A (AddMonoid.toAddZeroClass.{u2} A (AddCommMonoid.toAddMonoid.{u2} A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u2} A _inst_3))))) (Module.toMulActionWithZero.{u1, u2} R A (CommSemiring.toSemiring.{u1} R _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u2} A _inst_3)) _inst_4)))) (Mul.toSMul.{u2} A (Distrib.toHasMul.{u2} A (NonUnitalNonAssocSemiring.toDistrib.{u2} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u2} A _inst_3)))) (SMulZeroClass.toHasSmul.{u1, u2} R A (AddZeroClass.toHasZero.{u2} A (AddMonoid.toAddZeroClass.{u2} A (AddCommMonoid.toAddMonoid.{u2} A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u2} A _inst_3))))) (SMulWithZero.toSmulZeroClass.{u1, u2} R A (MulZeroClass.toHasZero.{u1} R (MulZeroOneClass.toMulZeroClass.{u1} R (MonoidWithZero.toMulZeroOneClass.{u1} R (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R _inst_2))))) (AddZeroClass.toHasZero.{u2} A (AddMonoid.toAddZeroClass.{u2} A (AddCommMonoid.toAddMonoid.{u2} A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u2} A _inst_3))))) (MulActionWithZero.toSMulWithZero.{u1, u2} R A (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R _inst_2)) (AddZeroClass.toHasZero.{u2} A (AddMonoid.toAddZeroClass.{u2} A (AddCommMonoid.toAddMonoid.{u2} A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u2} A _inst_3))))) (Module.toMulActionWithZero.{u1, u2} R A (CommSemiring.toSemiring.{u1} R _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u2} A _inst_3)) _inst_4))))] [_inst_6 : SMulCommClass.{u1, u2, u2} R A A (SMulZeroClass.toHasSmul.{u1, u2} R A (AddZeroClass.toHasZero.{u2} A (AddMonoid.toAddZeroClass.{u2} A (AddCommMonoid.toAddMonoid.{u2} A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u2} A _inst_3))))) (SMulWithZero.toSmulZeroClass.{u1, u2} R A (MulZeroClass.toHasZero.{u1} R (MulZeroOneClass.toMulZeroClass.{u1} R (MonoidWithZero.toMulZeroOneClass.{u1} R (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R _inst_2))))) (AddZeroClass.toHasZero.{u2} A (AddMonoid.toAddZeroClass.{u2} A (AddCommMonoid.toAddMonoid.{u2} A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u2} A _inst_3))))) (MulActionWithZero.toSMulWithZero.{u1, u2} R A (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R _inst_2)) (AddZeroClass.toHasZero.{u2} A (AddMonoid.toAddZeroClass.{u2} A (AddCommMonoid.toAddMonoid.{u2} A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u2} A _inst_3))))) (Module.toMulActionWithZero.{u1, u2} R A (CommSemiring.toSemiring.{u1} R _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u2} A _inst_3)) _inst_4)))) (Mul.toSMul.{u2} A (Distrib.toHasMul.{u2} A (NonUnitalNonAssocSemiring.toDistrib.{u2} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u2} A _inst_3))))], Eq.{max (succ u1) (succ (max u1 u2))} (R -> (Unitization.{u1, u2} R A)) (coeFn.{max (succ u1) (succ (max u1 u2)), max (succ u1) (succ (max u1 u2))} (RingHom.{u1, max u1 u2} R (Unitization.{u1, u2} R A) (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R _inst_2)) (Semiring.toNonAssocSemiring.{max u1 u2} (Unitization.{u1, u2} R A) (Unitization.semiring.{u1, u2} R A _inst_2 _inst_3 _inst_4 _inst_5 _inst_6))) (fun (_x : RingHom.{u1, max u1 u2} R (Unitization.{u1, u2} R A) (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R _inst_2)) (Semiring.toNonAssocSemiring.{max u1 u2} (Unitization.{u1, u2} R A) (Unitization.semiring.{u1, u2} R A _inst_2 _inst_3 _inst_4 _inst_5 _inst_6))) => R -> (Unitization.{u1, u2} R A)) (RingHom.hasCoeToFun.{u1, max u1 u2} R (Unitization.{u1, u2} R A) (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R _inst_2)) (Semiring.toNonAssocSemiring.{max u1 u2} (Unitization.{u1, u2} R A) (Unitization.semiring.{u1, u2} R A _inst_2 _inst_3 _inst_4 _inst_5 _inst_6))) (algebraMap.{u1, max u1 u2} R (Unitization.{u1, u2} R A) _inst_2 (Unitization.semiring.{u1, u2} R A _inst_2 _inst_3 _inst_4 _inst_5 _inst_6) (Unitization.algebra.{u1, u1, u2} R R A _inst_2 _inst_2 _inst_3 _inst_4 _inst_5 _inst_6 (Algebra.id.{u1} R _inst_2) (Module.toDistribMulAction.{u1, u2} R A (CommSemiring.toSemiring.{u1} R _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u2} A _inst_3)) _inst_4) (IsScalarTower.left.{u1, u2} R A (MonoidWithZero.toMonoid.{u1} R (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R _inst_2))) (MulActionWithZero.toMulAction.{u1, u2} R A (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R _inst_2)) (AddZeroClass.toHasZero.{u2} A (AddMonoid.toAddZeroClass.{u2} A (AddCommMonoid.toAddMonoid.{u2} A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u2} A _inst_3))))) (Module.toMulActionWithZero.{u1, u2} R A (CommSemiring.toSemiring.{u1} R _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u2} A _inst_3)) _inst_4)))))) (Unitization.inl.{u1, u2} R A (MulZeroClass.toHasZero.{u2} A (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u2} A _inst_3))))
 but is expected to have type
-  forall (R : Type.{u2}) (A : Type.{u1}) [_inst_2 : CommSemiring.{u2} R] [_inst_3 : NonUnitalSemiring.{u1} A] [_inst_4 : Module.{u2, u1} R A (CommSemiring.toSemiring.{u2} R _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u1} A _inst_3))] [_inst_5 : IsScalarTower.{u2, u1, u1} R A A (SMulZeroClass.toSMul.{u2, u1} R A (SemigroupWithZero.toZero.{u1} A (NonUnitalSemiring.toSemigroupWithZero.{u1} A _inst_3)) (SMulWithZero.toSMulZeroClass.{u2, u1} R A (CommMonoidWithZero.toZero.{u2} R (CommSemiring.toCommMonoidWithZero.{u2} R _inst_2)) (SemigroupWithZero.toZero.{u1} A (NonUnitalSemiring.toSemigroupWithZero.{u1} A _inst_3)) (MulActionWithZero.toSMulWithZero.{u2, u1} R A (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R _inst_2)) (SemigroupWithZero.toZero.{u1} A (NonUnitalSemiring.toSemigroupWithZero.{u1} A _inst_3)) (Module.toMulActionWithZero.{u2, u1} R A (CommSemiring.toSemiring.{u2} R _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u1} A _inst_3)) _inst_4)))) (SMulZeroClass.toSMul.{u1, u1} A A (SemigroupWithZero.toZero.{u1} A (NonUnitalSemiring.toSemigroupWithZero.{u1} A _inst_3)) (SMulWithZero.toSMulZeroClass.{u1, u1} A A (SemigroupWithZero.toZero.{u1} A (NonUnitalSemiring.toSemigroupWithZero.{u1} A _inst_3)) (SemigroupWithZero.toZero.{u1} A (NonUnitalSemiring.toSemigroupWithZero.{u1} A _inst_3)) (MulZeroClass.toSMulWithZero.{u1} A (NonUnitalNonAssocSemiring.toMulZeroClass.{u1} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u1} A _inst_3))))) (SMulZeroClass.toSMul.{u2, u1} R A (SemigroupWithZero.toZero.{u1} A (NonUnitalSemiring.toSemigroupWithZero.{u1} A _inst_3)) (SMulWithZero.toSMulZeroClass.{u2, u1} R A (CommMonoidWithZero.toZero.{u2} R (CommSemiring.toCommMonoidWithZero.{u2} R _inst_2)) (SemigroupWithZero.toZero.{u1} A (NonUnitalSemiring.toSemigroupWithZero.{u1} A _inst_3)) (MulActionWithZero.toSMulWithZero.{u2, u1} R A (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R _inst_2)) (SemigroupWithZero.toZero.{u1} A (NonUnitalSemiring.toSemigroupWithZero.{u1} A _inst_3)) (Module.toMulActionWithZero.{u2, u1} R A (CommSemiring.toSemiring.{u2} R _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u1} A _inst_3)) _inst_4))))] [_inst_6 : SMulCommClass.{u2, u1, u1} R A A (SMulZeroClass.toSMul.{u2, u1} R A (SemigroupWithZero.toZero.{u1} A (NonUnitalSemiring.toSemigroupWithZero.{u1} A _inst_3)) (SMulWithZero.toSMulZeroClass.{u2, u1} R A (CommMonoidWithZero.toZero.{u2} R (CommSemiring.toCommMonoidWithZero.{u2} R _inst_2)) (SemigroupWithZero.toZero.{u1} A (NonUnitalSemiring.toSemigroupWithZero.{u1} A _inst_3)) (MulActionWithZero.toSMulWithZero.{u2, u1} R A (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R _inst_2)) (SemigroupWithZero.toZero.{u1} A (NonUnitalSemiring.toSemigroupWithZero.{u1} A _inst_3)) (Module.toMulActionWithZero.{u2, u1} R A (CommSemiring.toSemiring.{u2} R _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u1} A _inst_3)) _inst_4)))) (SMulZeroClass.toSMul.{u1, u1} A A (SemigroupWithZero.toZero.{u1} A (NonUnitalSemiring.toSemigroupWithZero.{u1} A _inst_3)) (SMulWithZero.toSMulZeroClass.{u1, u1} A A (SemigroupWithZero.toZero.{u1} A (NonUnitalSemiring.toSemigroupWithZero.{u1} A _inst_3)) (SemigroupWithZero.toZero.{u1} A (NonUnitalSemiring.toSemigroupWithZero.{u1} A _inst_3)) (MulZeroClass.toSMulWithZero.{u1} A (NonUnitalNonAssocSemiring.toMulZeroClass.{u1} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u1} A _inst_3)))))], Eq.{max (succ u2) (succ u1)} (forall (ᾰ : R), (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : R) => Unitization.{u2, u1} R A) ᾰ) (FunLike.coe.{max (succ u2) (succ u1), succ u2, max (succ u2) (succ u1)} (RingHom.{u2, max u1 u2} R (Unitization.{u2, u1} R A) (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_2)) (Semiring.toNonAssocSemiring.{max u1 u2} (Unitization.{u2, u1} R A) (Unitization.semiring.{u2, u1} R A _inst_2 _inst_3 _inst_4 _inst_5 _inst_6))) R (fun (_x : R) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : R) => Unitization.{u2, u1} R A) _x) (MulHomClass.toFunLike.{max u2 u1, u2, max u2 u1} (RingHom.{u2, max u1 u2} R (Unitization.{u2, u1} R A) (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_2)) (Semiring.toNonAssocSemiring.{max u1 u2} (Unitization.{u2, u1} R A) (Unitization.semiring.{u2, u1} R A _inst_2 _inst_3 _inst_4 _inst_5 _inst_6))) R (Unitization.{u2, u1} R A) (NonUnitalNonAssocSemiring.toMul.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_2)))) (NonUnitalNonAssocSemiring.toMul.{max u2 u1} (Unitization.{u2, u1} R A) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{max u2 u1} (Unitization.{u2, u1} R A) (Semiring.toNonAssocSemiring.{max u1 u2} (Unitization.{u2, u1} R A) (Unitization.semiring.{u2, u1} R A _inst_2 _inst_3 _inst_4 _inst_5 _inst_6)))) (NonUnitalRingHomClass.toMulHomClass.{max u2 u1, u2, max u2 u1} (RingHom.{u2, max u1 u2} R (Unitization.{u2, u1} R A) (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_2)) (Semiring.toNonAssocSemiring.{max u1 u2} (Unitization.{u2, u1} R A) (Unitization.semiring.{u2, u1} R A _inst_2 _inst_3 _inst_4 _inst_5 _inst_6))) R (Unitization.{u2, u1} R A) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_2))) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{max u2 u1} (Unitization.{u2, u1} R A) (Semiring.toNonAssocSemiring.{max u1 u2} (Unitization.{u2, u1} R A) (Unitization.semiring.{u2, u1} R A _inst_2 _inst_3 _inst_4 _inst_5 _inst_6))) (RingHomClass.toNonUnitalRingHomClass.{max u2 u1, u2, max u2 u1} (RingHom.{u2, max u1 u2} R (Unitization.{u2, u1} R A) (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_2)) (Semiring.toNonAssocSemiring.{max u1 u2} (Unitization.{u2, u1} R A) (Unitization.semiring.{u2, u1} R A _inst_2 _inst_3 _inst_4 _inst_5 _inst_6))) R (Unitization.{u2, u1} R A) (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_2)) (Semiring.toNonAssocSemiring.{max u1 u2} (Unitization.{u2, u1} R A) (Unitization.semiring.{u2, u1} R A _inst_2 _inst_3 _inst_4 _inst_5 _inst_6)) (RingHom.instRingHomClassRingHom.{u2, max u2 u1} R (Unitization.{u2, u1} R A) (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_2)) (Semiring.toNonAssocSemiring.{max u1 u2} (Unitization.{u2, u1} R A) (Unitization.semiring.{u2, u1} R A _inst_2 _inst_3 _inst_4 _inst_5 _inst_6)))))) (algebraMap.{u2, max u1 u2} R (Unitization.{u2, u1} R A) _inst_2 (Unitization.semiring.{u2, u1} R A _inst_2 _inst_3 _inst_4 _inst_5 _inst_6) (Unitization.algebra.{u2, u2, u1} R R A _inst_2 _inst_2 _inst_3 _inst_4 _inst_5 _inst_6 (Algebra.id.{u2} R _inst_2) (Module.toDistribMulAction.{u2, u1} R A (CommSemiring.toSemiring.{u2} R _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u1} A _inst_3)) _inst_4) (IsScalarTower.left.{u2, u1} R A (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R _inst_2))) (MulActionWithZero.toMulAction.{u2, u1} R A (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R _inst_2)) (SemigroupWithZero.toZero.{u1} A (NonUnitalSemiring.toSemigroupWithZero.{u1} A _inst_3)) (Module.toMulActionWithZero.{u2, u1} R A (CommSemiring.toSemiring.{u2} R _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u1} A _inst_3)) _inst_4)))))) (Unitization.inl.{u2, u1} R A (SemigroupWithZero.toZero.{u1} A (NonUnitalSemiring.toSemigroupWithZero.{u1} A _inst_3)))
+  forall (R : Type.{u2}) (A : Type.{u1}) [_inst_2 : CommSemiring.{u2} R] [_inst_3 : NonUnitalSemiring.{u1} A] [_inst_4 : Module.{u2, u1} R A (CommSemiring.toSemiring.{u2} R _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u1} A _inst_3))] [_inst_5 : IsScalarTower.{u2, u1, u1} R A A (SMulZeroClass.toSMul.{u2, u1} R A (SemigroupWithZero.toZero.{u1} A (NonUnitalSemiring.toSemigroupWithZero.{u1} A _inst_3)) (SMulWithZero.toSMulZeroClass.{u2, u1} R A (CommMonoidWithZero.toZero.{u2} R (CommSemiring.toCommMonoidWithZero.{u2} R _inst_2)) (SemigroupWithZero.toZero.{u1} A (NonUnitalSemiring.toSemigroupWithZero.{u1} A _inst_3)) (MulActionWithZero.toSMulWithZero.{u2, u1} R A (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R _inst_2)) (SemigroupWithZero.toZero.{u1} A (NonUnitalSemiring.toSemigroupWithZero.{u1} A _inst_3)) (Module.toMulActionWithZero.{u2, u1} R A (CommSemiring.toSemiring.{u2} R _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u1} A _inst_3)) _inst_4)))) (SMulZeroClass.toSMul.{u1, u1} A A (SemigroupWithZero.toZero.{u1} A (NonUnitalSemiring.toSemigroupWithZero.{u1} A _inst_3)) (SMulWithZero.toSMulZeroClass.{u1, u1} A A (SemigroupWithZero.toZero.{u1} A (NonUnitalSemiring.toSemigroupWithZero.{u1} A _inst_3)) (SemigroupWithZero.toZero.{u1} A (NonUnitalSemiring.toSemigroupWithZero.{u1} A _inst_3)) (MulZeroClass.toSMulWithZero.{u1} A (NonUnitalNonAssocSemiring.toMulZeroClass.{u1} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u1} A _inst_3))))) (SMulZeroClass.toSMul.{u2, u1} R A (SemigroupWithZero.toZero.{u1} A (NonUnitalSemiring.toSemigroupWithZero.{u1} A _inst_3)) (SMulWithZero.toSMulZeroClass.{u2, u1} R A (CommMonoidWithZero.toZero.{u2} R (CommSemiring.toCommMonoidWithZero.{u2} R _inst_2)) (SemigroupWithZero.toZero.{u1} A (NonUnitalSemiring.toSemigroupWithZero.{u1} A _inst_3)) (MulActionWithZero.toSMulWithZero.{u2, u1} R A (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R _inst_2)) (SemigroupWithZero.toZero.{u1} A (NonUnitalSemiring.toSemigroupWithZero.{u1} A _inst_3)) (Module.toMulActionWithZero.{u2, u1} R A (CommSemiring.toSemiring.{u2} R _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u1} A _inst_3)) _inst_4))))] [_inst_6 : SMulCommClass.{u2, u1, u1} R A A (SMulZeroClass.toSMul.{u2, u1} R A (SemigroupWithZero.toZero.{u1} A (NonUnitalSemiring.toSemigroupWithZero.{u1} A _inst_3)) (SMulWithZero.toSMulZeroClass.{u2, u1} R A (CommMonoidWithZero.toZero.{u2} R (CommSemiring.toCommMonoidWithZero.{u2} R _inst_2)) (SemigroupWithZero.toZero.{u1} A (NonUnitalSemiring.toSemigroupWithZero.{u1} A _inst_3)) (MulActionWithZero.toSMulWithZero.{u2, u1} R A (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R _inst_2)) (SemigroupWithZero.toZero.{u1} A (NonUnitalSemiring.toSemigroupWithZero.{u1} A _inst_3)) (Module.toMulActionWithZero.{u2, u1} R A (CommSemiring.toSemiring.{u2} R _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u1} A _inst_3)) _inst_4)))) (SMulZeroClass.toSMul.{u1, u1} A A (SemigroupWithZero.toZero.{u1} A (NonUnitalSemiring.toSemigroupWithZero.{u1} A _inst_3)) (SMulWithZero.toSMulZeroClass.{u1, u1} A A (SemigroupWithZero.toZero.{u1} A (NonUnitalSemiring.toSemigroupWithZero.{u1} A _inst_3)) (SemigroupWithZero.toZero.{u1} A (NonUnitalSemiring.toSemigroupWithZero.{u1} A _inst_3)) (MulZeroClass.toSMulWithZero.{u1} A (NonUnitalNonAssocSemiring.toMulZeroClass.{u1} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u1} A _inst_3)))))], Eq.{max (succ u2) (succ u1)} (forall (ᾰ : R), (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : R) => Unitization.{u2, u1} R A) ᾰ) (FunLike.coe.{max (succ u2) (succ u1), succ u2, max (succ u2) (succ u1)} (RingHom.{u2, max u1 u2} R (Unitization.{u2, u1} R A) (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_2)) (Semiring.toNonAssocSemiring.{max u1 u2} (Unitization.{u2, u1} R A) (Unitization.semiring.{u2, u1} R A _inst_2 _inst_3 _inst_4 _inst_5 _inst_6))) R (fun (_x : R) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : R) => Unitization.{u2, u1} R A) _x) (MulHomClass.toFunLike.{max u2 u1, u2, max u2 u1} (RingHom.{u2, max u1 u2} R (Unitization.{u2, u1} R A) (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_2)) (Semiring.toNonAssocSemiring.{max u1 u2} (Unitization.{u2, u1} R A) (Unitization.semiring.{u2, u1} R A _inst_2 _inst_3 _inst_4 _inst_5 _inst_6))) R (Unitization.{u2, u1} R A) (NonUnitalNonAssocSemiring.toMul.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_2)))) (NonUnitalNonAssocSemiring.toMul.{max u2 u1} (Unitization.{u2, u1} R A) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{max u2 u1} (Unitization.{u2, u1} R A) (Semiring.toNonAssocSemiring.{max u1 u2} (Unitization.{u2, u1} R A) (Unitization.semiring.{u2, u1} R A _inst_2 _inst_3 _inst_4 _inst_5 _inst_6)))) (NonUnitalRingHomClass.toMulHomClass.{max u2 u1, u2, max u2 u1} (RingHom.{u2, max u1 u2} R (Unitization.{u2, u1} R A) (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_2)) (Semiring.toNonAssocSemiring.{max u1 u2} (Unitization.{u2, u1} R A) (Unitization.semiring.{u2, u1} R A _inst_2 _inst_3 _inst_4 _inst_5 _inst_6))) R (Unitization.{u2, u1} R A) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_2))) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{max u2 u1} (Unitization.{u2, u1} R A) (Semiring.toNonAssocSemiring.{max u1 u2} (Unitization.{u2, u1} R A) (Unitization.semiring.{u2, u1} R A _inst_2 _inst_3 _inst_4 _inst_5 _inst_6))) (RingHomClass.toNonUnitalRingHomClass.{max u2 u1, u2, max u2 u1} (RingHom.{u2, max u1 u2} R (Unitization.{u2, u1} R A) (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_2)) (Semiring.toNonAssocSemiring.{max u1 u2} (Unitization.{u2, u1} R A) (Unitization.semiring.{u2, u1} R A _inst_2 _inst_3 _inst_4 _inst_5 _inst_6))) R (Unitization.{u2, u1} R A) (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_2)) (Semiring.toNonAssocSemiring.{max u1 u2} (Unitization.{u2, u1} R A) (Unitization.semiring.{u2, u1} R A _inst_2 _inst_3 _inst_4 _inst_5 _inst_6)) (RingHom.instRingHomClassRingHom.{u2, max u2 u1} R (Unitization.{u2, u1} R A) (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_2)) (Semiring.toNonAssocSemiring.{max u1 u2} (Unitization.{u2, u1} R A) (Unitization.semiring.{u2, u1} R A _inst_2 _inst_3 _inst_4 _inst_5 _inst_6)))))) (algebraMap.{u2, max u1 u2} R (Unitization.{u2, u1} R A) _inst_2 (Unitization.semiring.{u2, u1} R A _inst_2 _inst_3 _inst_4 _inst_5 _inst_6) (Unitization.algebra.{u2, u2, u1} R R A _inst_2 _inst_2 _inst_3 _inst_4 _inst_5 _inst_6 (Algebra.id.{u2} R _inst_2) (Module.toDistribMulAction.{u2, u1} R A (CommSemiring.toSemiring.{u2} R _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u1} A _inst_3)) _inst_4) (IsScalarTower.left.{u2, u1} R A (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R _inst_2))) (MulActionWithZero.toMulAction.{u2, u1} R A (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R _inst_2)) (SemigroupWithZero.toZero.{u1} A (NonUnitalSemiring.toSemigroupWithZero.{u1} A _inst_3)) (Module.toMulActionWithZero.{u2, u1} R A (CommSemiring.toSemiring.{u2} R _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u1} A _inst_3)) _inst_4)))))) (Unitization.inl.{u2, u1} R A (SemigroupWithZero.toZero.{u1} A (NonUnitalSemiring.toSemigroupWithZero.{u1} A _inst_3)))
 Case conversion may be inaccurate. Consider using '#align unitization.algebra_map_eq_inl Unitization.algebraMap_eq_inlₓ'. -/
 theorem algebraMap_eq_inl : ⇑(algebraMap R (Unitization R A)) = inl :=
   rfl
@@ -924,7 +924,7 @@ variable {S R A : Type _} [CommSemiring S] [CommSemiring R] [NonUnitalSemiring A
 lean 3 declaration is
   forall {S : Type.{u1}} {R : Type.{u2}} {A : Type.{u3}} [_inst_1 : CommSemiring.{u1} S] [_inst_2 : CommSemiring.{u2} R] [_inst_3 : NonUnitalSemiring.{u3} A] [_inst_4 : Module.{u2, u3} R A (CommSemiring.toSemiring.{u2} R _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u3} A _inst_3))] [_inst_5 : SMulCommClass.{u2, u3, u3} R A A (SMulZeroClass.toHasSmul.{u2, u3} R A (AddZeroClass.toHasZero.{u3} A (AddMonoid.toAddZeroClass.{u3} A (AddCommMonoid.toAddMonoid.{u3} A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u3} A _inst_3))))) (SMulWithZero.toSmulZeroClass.{u2, u3} R A (MulZeroClass.toHasZero.{u2} R (MulZeroOneClass.toMulZeroClass.{u2} R (MonoidWithZero.toMulZeroOneClass.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R _inst_2))))) (AddZeroClass.toHasZero.{u3} A (AddMonoid.toAddZeroClass.{u3} A (AddCommMonoid.toAddMonoid.{u3} A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u3} A _inst_3))))) (MulActionWithZero.toSMulWithZero.{u2, u3} R A (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R _inst_2)) (AddZeroClass.toHasZero.{u3} A (AddMonoid.toAddZeroClass.{u3} A (AddCommMonoid.toAddMonoid.{u3} A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u3} A _inst_3))))) (Module.toMulActionWithZero.{u2, u3} R A (CommSemiring.toSemiring.{u2} R _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u3} A _inst_3)) _inst_4)))) (Mul.toSMul.{u3} A (Distrib.toHasMul.{u3} A (NonUnitalNonAssocSemiring.toDistrib.{u3} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u3} A _inst_3))))] [_inst_6 : IsScalarTower.{u2, u3, u3} R A A (SMulZeroClass.toHasSmul.{u2, u3} R A (AddZeroClass.toHasZero.{u3} A (AddMonoid.toAddZeroClass.{u3} A (AddCommMonoid.toAddMonoid.{u3} A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u3} A _inst_3))))) (SMulWithZero.toSmulZeroClass.{u2, u3} R A (MulZeroClass.toHasZero.{u2} R (MulZeroOneClass.toMulZeroClass.{u2} R (MonoidWithZero.toMulZeroOneClass.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R _inst_2))))) (AddZeroClass.toHasZero.{u3} A (AddMonoid.toAddZeroClass.{u3} A (AddCommMonoid.toAddMonoid.{u3} A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u3} A _inst_3))))) (MulActionWithZero.toSMulWithZero.{u2, u3} R A (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R _inst_2)) (AddZeroClass.toHasZero.{u3} A (AddMonoid.toAddZeroClass.{u3} A (AddCommMonoid.toAddMonoid.{u3} A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u3} A _inst_3))))) (Module.toMulActionWithZero.{u2, u3} R A (CommSemiring.toSemiring.{u2} R _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u3} A _inst_3)) _inst_4)))) (Mul.toSMul.{u3} A (Distrib.toHasMul.{u3} A (NonUnitalNonAssocSemiring.toDistrib.{u3} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u3} A _inst_3)))) (SMulZeroClass.toHasSmul.{u2, u3} R A (AddZeroClass.toHasZero.{u3} A (AddMonoid.toAddZeroClass.{u3} A (AddCommMonoid.toAddMonoid.{u3} A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u3} A _inst_3))))) (SMulWithZero.toSmulZeroClass.{u2, u3} R A (MulZeroClass.toHasZero.{u2} R (MulZeroOneClass.toMulZeroClass.{u2} R (MonoidWithZero.toMulZeroOneClass.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R _inst_2))))) (AddZeroClass.toHasZero.{u3} A (AddMonoid.toAddZeroClass.{u3} A (AddCommMonoid.toAddMonoid.{u3} A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u3} A _inst_3))))) (MulActionWithZero.toSMulWithZero.{u2, u3} R A (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R _inst_2)) (AddZeroClass.toHasZero.{u3} A (AddMonoid.toAddZeroClass.{u3} A (AddCommMonoid.toAddMonoid.{u3} A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u3} A _inst_3))))) (Module.toMulActionWithZero.{u2, u3} R A (CommSemiring.toSemiring.{u2} R _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u3} A _inst_3)) _inst_4))))] {B : Type.{u4}} [_inst_7 : Semiring.{u4} B] [_inst_8 : Algebra.{u1, u4} S B _inst_1 _inst_7] [_inst_9 : Algebra.{u1, u2} S R _inst_1 (CommSemiring.toSemiring.{u2} R _inst_2)] [_inst_10 : DistribMulAction.{u1, u3} S A (MonoidWithZero.toMonoid.{u1} S (Semiring.toMonoidWithZero.{u1} S (CommSemiring.toSemiring.{u1} S _inst_1))) (AddCommMonoid.toAddMonoid.{u3} A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u3} A _inst_3)))] [_inst_11 : IsScalarTower.{u1, u2, u3} S R A (SMulZeroClass.toHasSmul.{u1, u2} S R (AddZeroClass.toHasZero.{u2} R (AddMonoid.toAddZeroClass.{u2} R (AddCommMonoid.toAddMonoid.{u2} R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_2))))))) (SMulWithZero.toSmulZeroClass.{u1, u2} S R (MulZeroClass.toHasZero.{u1} S (MulZeroOneClass.toMulZeroClass.{u1} S (MonoidWithZero.toMulZeroOneClass.{u1} S (Semiring.toMonoidWithZero.{u1} S (CommSemiring.toSemiring.{u1} S _inst_1))))) (AddZeroClass.toHasZero.{u2} R (AddMonoid.toAddZeroClass.{u2} R (AddCommMonoid.toAddMonoid.{u2} R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_2))))))) (MulActionWithZero.toSMulWithZero.{u1, u2} S R (Semiring.toMonoidWithZero.{u1} S (CommSemiring.toSemiring.{u1} S _inst_1)) (AddZeroClass.toHasZero.{u2} R (AddMonoid.toAddZeroClass.{u2} R (AddCommMonoid.toAddMonoid.{u2} R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_2))))))) (Module.toMulActionWithZero.{u1, u2} S R (CommSemiring.toSemiring.{u1} S _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_2)))) (Algebra.toModule.{u1, u2} S R _inst_1 (CommSemiring.toSemiring.{u2} R _inst_2) _inst_9))))) (SMulZeroClass.toHasSmul.{u2, u3} R A (AddZeroClass.toHasZero.{u3} A (AddMonoid.toAddZeroClass.{u3} A (AddCommMonoid.toAddMonoid.{u3} A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u3} A _inst_3))))) (SMulWithZero.toSmulZeroClass.{u2, u3} R A (MulZeroClass.toHasZero.{u2} R (MulZeroOneClass.toMulZeroClass.{u2} R (MonoidWithZero.toMulZeroOneClass.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R _inst_2))))) (AddZeroClass.toHasZero.{u3} A (AddMonoid.toAddZeroClass.{u3} A (AddCommMonoid.toAddMonoid.{u3} A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u3} A _inst_3))))) (MulActionWithZero.toSMulWithZero.{u2, u3} R A (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R _inst_2)) (AddZeroClass.toHasZero.{u3} A (AddMonoid.toAddZeroClass.{u3} A (AddCommMonoid.toAddMonoid.{u3} A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u3} A _inst_3))))) (Module.toMulActionWithZero.{u2, u3} R A (CommSemiring.toSemiring.{u2} R _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u3} A _inst_3)) _inst_4)))) (SMulZeroClass.toHasSmul.{u1, u3} S A (AddZeroClass.toHasZero.{u3} A (AddMonoid.toAddZeroClass.{u3} A (AddCommMonoid.toAddMonoid.{u3} A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u3} A _inst_3))))) (DistribSMul.toSmulZeroClass.{u1, u3} S A (AddMonoid.toAddZeroClass.{u3} A (AddCommMonoid.toAddMonoid.{u3} A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u3} A _inst_3)))) (DistribMulAction.toDistribSMul.{u1, u3} S A (MonoidWithZero.toMonoid.{u1} S (Semiring.toMonoidWithZero.{u1} S (CommSemiring.toSemiring.{u1} S _inst_1))) (AddCommMonoid.toAddMonoid.{u3} A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u3} A _inst_3))) _inst_10)))] {φ : AlgHom.{u1, max u2 u3, u4} S (Unitization.{u2, u3} R A) B _inst_1 (Unitization.semiring.{u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5) _inst_7 (Unitization.algebra.{u1, u2, u3} S R A _inst_1 _inst_2 _inst_3 _inst_4 _inst_6 _inst_5 _inst_9 _inst_10 _inst_11) _inst_8} {ψ : AlgHom.{u1, max u2 u3, u4} S (Unitization.{u2, u3} R A) B _inst_1 (Unitization.semiring.{u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5) _inst_7 (Unitization.algebra.{u1, u2, u3} S R A _inst_1 _inst_2 _inst_3 _inst_4 _inst_6 _inst_5 _inst_9 _inst_10 _inst_11) _inst_8}, (forall (a : A), Eq.{succ u4} B (coeFn.{max (succ (max u2 u3)) (succ u4), max (succ (max u2 u3)) (succ u4)} (AlgHom.{u1, max u2 u3, u4} S (Unitization.{u2, u3} R A) B _inst_1 (Unitization.semiring.{u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5) _inst_7 (Unitization.algebra.{u1, u2, u3} S R A _inst_1 _inst_2 _inst_3 _inst_4 _inst_6 _inst_5 _inst_9 _inst_10 _inst_11) _inst_8) (fun (_x : AlgHom.{u1, max u2 u3, u4} S (Unitization.{u2, u3} R A) B _inst_1 (Unitization.semiring.{u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5) _inst_7 (Unitization.algebra.{u1, u2, u3} S R A _inst_1 _inst_2 _inst_3 _inst_4 _inst_6 _inst_5 _inst_9 _inst_10 _inst_11) _inst_8) => (Unitization.{u2, u3} R A) -> B) ([anonymous].{u1, max u2 u3, u4} S (Unitization.{u2, u3} R A) B _inst_1 (Unitization.semiring.{u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5) _inst_7 (Unitization.algebra.{u1, u2, u3} S R A _inst_1 _inst_2 _inst_3 _inst_4 _inst_6 _inst_5 _inst_9 _inst_10 _inst_11) _inst_8) φ ((fun (a : Type.{u3}) (b : Sort.{max (succ u2) (succ u3)}) [self : HasLiftT.{succ u3, max (succ u2) (succ u3)} a b] => self.0) A (Unitization.{u2, u3} R A) (HasLiftT.mk.{succ u3, max (succ u2) (succ u3)} A (Unitization.{u2, u3} R A) (CoeTCₓ.coe.{succ u3, max (succ u2) (succ u3)} A (Unitization.{u2, u3} R A) (Unitization.hasCoeT.{u2, u3} R A (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_2)))))))) a)) (coeFn.{max (succ (max u2 u3)) (succ u4), max (succ (max u2 u3)) (succ u4)} (AlgHom.{u1, max u2 u3, u4} S (Unitization.{u2, u3} R A) B _inst_1 (Unitization.semiring.{u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5) _inst_7 (Unitization.algebra.{u1, u2, u3} S R A _inst_1 _inst_2 _inst_3 _inst_4 _inst_6 _inst_5 _inst_9 _inst_10 _inst_11) _inst_8) (fun (_x : AlgHom.{u1, max u2 u3, u4} S (Unitization.{u2, u3} R A) B _inst_1 (Unitization.semiring.{u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5) _inst_7 (Unitization.algebra.{u1, u2, u3} S R A _inst_1 _inst_2 _inst_3 _inst_4 _inst_6 _inst_5 _inst_9 _inst_10 _inst_11) _inst_8) => (Unitization.{u2, u3} R A) -> B) ([anonymous].{u1, max u2 u3, u4} S (Unitization.{u2, u3} R A) B _inst_1 (Unitization.semiring.{u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5) _inst_7 (Unitization.algebra.{u1, u2, u3} S R A _inst_1 _inst_2 _inst_3 _inst_4 _inst_6 _inst_5 _inst_9 _inst_10 _inst_11) _inst_8) ψ ((fun (a : Type.{u3}) (b : Sort.{max (succ u2) (succ u3)}) [self : HasLiftT.{succ u3, max (succ u2) (succ u3)} a b] => self.0) A (Unitization.{u2, u3} R A) (HasLiftT.mk.{succ u3, max (succ u2) (succ u3)} A (Unitization.{u2, u3} R A) (CoeTCₓ.coe.{succ u3, max (succ u2) (succ u3)} A (Unitization.{u2, u3} R A) (Unitization.hasCoeT.{u2, u3} R A (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_2)))))))) a))) -> (forall (r : R), Eq.{succ u4} B (coeFn.{max (succ (max u2 u3)) (succ u4), max (succ (max u2 u3)) (succ u4)} (AlgHom.{u1, max u2 u3, u4} S (Unitization.{u2, u3} R A) B _inst_1 (Unitization.semiring.{u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5) _inst_7 (Unitization.algebra.{u1, u2, u3} S R A _inst_1 _inst_2 _inst_3 _inst_4 _inst_6 _inst_5 _inst_9 _inst_10 _inst_11) _inst_8) (fun (_x : AlgHom.{u1, max u2 u3, u4} S (Unitization.{u2, u3} R A) B _inst_1 (Unitization.semiring.{u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5) _inst_7 (Unitization.algebra.{u1, u2, u3} S R A _inst_1 _inst_2 _inst_3 _inst_4 _inst_6 _inst_5 _inst_9 _inst_10 _inst_11) _inst_8) => (Unitization.{u2, u3} R A) -> B) ([anonymous].{u1, max u2 u3, u4} S (Unitization.{u2, u3} R A) B _inst_1 (Unitization.semiring.{u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5) _inst_7 (Unitization.algebra.{u1, u2, u3} S R A _inst_1 _inst_2 _inst_3 _inst_4 _inst_6 _inst_5 _inst_9 _inst_10 _inst_11) _inst_8) φ (coeFn.{max (succ u2) (succ (max u2 u3)), max (succ u2) (succ (max u2 u3))} (RingHom.{u2, max u2 u3} R (Unitization.{u2, u3} R A) (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_2)) (Semiring.toNonAssocSemiring.{max u2 u3} (Unitization.{u2, u3} R A) (Unitization.semiring.{u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5))) (fun (_x : RingHom.{u2, max u2 u3} R (Unitization.{u2, u3} R A) (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_2)) (Semiring.toNonAssocSemiring.{max u2 u3} (Unitization.{u2, u3} R A) (Unitization.semiring.{u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5))) => R -> (Unitization.{u2, u3} R A)) (RingHom.hasCoeToFun.{u2, max u2 u3} R (Unitization.{u2, u3} R A) (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_2)) (Semiring.toNonAssocSemiring.{max u2 u3} (Unitization.{u2, u3} R A) (Unitization.semiring.{u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5))) (algebraMap.{u2, max u2 u3} R (Unitization.{u2, u3} R A) _inst_2 (Unitization.semiring.{u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5) (Unitization.algebra.{u2, u2, u3} R R A _inst_2 _inst_2 _inst_3 _inst_4 _inst_6 _inst_5 (Algebra.id.{u2} R _inst_2) (Module.toDistribMulAction.{u2, u3} R A (CommSemiring.toSemiring.{u2} R _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u3} A _inst_3)) _inst_4) (IsScalarTower.left.{u2, u3} R A (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R _inst_2))) (MulActionWithZero.toMulAction.{u2, u3} R A (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R _inst_2)) (AddZeroClass.toHasZero.{u3} A (AddMonoid.toAddZeroClass.{u3} A (AddCommMonoid.toAddMonoid.{u3} A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u3} A _inst_3))))) (Module.toMulActionWithZero.{u2, u3} R A (CommSemiring.toSemiring.{u2} R _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u3} A _inst_3)) _inst_4))))) r)) (coeFn.{max (succ (max u2 u3)) (succ u4), max (succ (max u2 u3)) (succ u4)} (AlgHom.{u1, max u2 u3, u4} S (Unitization.{u2, u3} R A) B _inst_1 (Unitization.semiring.{u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5) _inst_7 (Unitization.algebra.{u1, u2, u3} S R A _inst_1 _inst_2 _inst_3 _inst_4 _inst_6 _inst_5 _inst_9 _inst_10 _inst_11) _inst_8) (fun (_x : AlgHom.{u1, max u2 u3, u4} S (Unitization.{u2, u3} R A) B _inst_1 (Unitization.semiring.{u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5) _inst_7 (Unitization.algebra.{u1, u2, u3} S R A _inst_1 _inst_2 _inst_3 _inst_4 _inst_6 _inst_5 _inst_9 _inst_10 _inst_11) _inst_8) => (Unitization.{u2, u3} R A) -> B) ([anonymous].{u1, max u2 u3, u4} S (Unitization.{u2, u3} R A) B _inst_1 (Unitization.semiring.{u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5) _inst_7 (Unitization.algebra.{u1, u2, u3} S R A _inst_1 _inst_2 _inst_3 _inst_4 _inst_6 _inst_5 _inst_9 _inst_10 _inst_11) _inst_8) ψ (coeFn.{max (succ u2) (succ (max u2 u3)), max (succ u2) (succ (max u2 u3))} (RingHom.{u2, max u2 u3} R (Unitization.{u2, u3} R A) (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_2)) (Semiring.toNonAssocSemiring.{max u2 u3} (Unitization.{u2, u3} R A) (Unitization.semiring.{u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5))) (fun (_x : RingHom.{u2, max u2 u3} R (Unitization.{u2, u3} R A) (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_2)) (Semiring.toNonAssocSemiring.{max u2 u3} (Unitization.{u2, u3} R A) (Unitization.semiring.{u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5))) => R -> (Unitization.{u2, u3} R A)) (RingHom.hasCoeToFun.{u2, max u2 u3} R (Unitization.{u2, u3} R A) (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_2)) (Semiring.toNonAssocSemiring.{max u2 u3} (Unitization.{u2, u3} R A) (Unitization.semiring.{u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5))) (algebraMap.{u2, max u2 u3} R (Unitization.{u2, u3} R A) _inst_2 (Unitization.semiring.{u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5) (Unitization.algebra.{u2, u2, u3} R R A _inst_2 _inst_2 _inst_3 _inst_4 _inst_6 _inst_5 (Algebra.id.{u2} R _inst_2) (Module.toDistribMulAction.{u2, u3} R A (CommSemiring.toSemiring.{u2} R _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u3} A _inst_3)) _inst_4) (IsScalarTower.left.{u2, u3} R A (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R _inst_2))) (MulActionWithZero.toMulAction.{u2, u3} R A (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R _inst_2)) (AddZeroClass.toHasZero.{u3} A (AddMonoid.toAddZeroClass.{u3} A (AddCommMonoid.toAddMonoid.{u3} A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u3} A _inst_3))))) (Module.toMulActionWithZero.{u2, u3} R A (CommSemiring.toSemiring.{u2} R _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u3} A _inst_3)) _inst_4))))) r))) -> (Eq.{max (succ (max u2 u3)) (succ u4)} (AlgHom.{u1, max u2 u3, u4} S (Unitization.{u2, u3} R A) B _inst_1 (Unitization.semiring.{u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5) _inst_7 (Unitization.algebra.{u1, u2, u3} S R A _inst_1 _inst_2 _inst_3 _inst_4 _inst_6 _inst_5 _inst_9 _inst_10 _inst_11) _inst_8) φ ψ)
 but is expected to have type
-  forall {S : Type.{u4}} {R : Type.{u2}} {A : Type.{u3}} [_inst_1 : CommSemiring.{u4} S] [_inst_2 : CommSemiring.{u2} R] [_inst_3 : NonUnitalSemiring.{u3} A] [_inst_4 : Module.{u2, u3} R A (CommSemiring.toSemiring.{u2} R _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u3} A _inst_3))] [_inst_5 : SMulCommClass.{u2, u3, u3} R A A (SMulZeroClass.toSMul.{u2, u3} R A (SemigroupWithZero.toZero.{u3} A (NonUnitalSemiring.toSemigroupWithZero.{u3} A _inst_3)) (SMulWithZero.toSMulZeroClass.{u2, u3} R A (CommMonoidWithZero.toZero.{u2} R (CommSemiring.toCommMonoidWithZero.{u2} R _inst_2)) (SemigroupWithZero.toZero.{u3} A (NonUnitalSemiring.toSemigroupWithZero.{u3} A _inst_3)) (MulActionWithZero.toSMulWithZero.{u2, u3} R A (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R _inst_2)) (SemigroupWithZero.toZero.{u3} A (NonUnitalSemiring.toSemigroupWithZero.{u3} A _inst_3)) (Module.toMulActionWithZero.{u2, u3} R A (CommSemiring.toSemiring.{u2} R _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u3} A _inst_3)) _inst_4)))) (SMulZeroClass.toSMul.{u3, u3} A A (SemigroupWithZero.toZero.{u3} A (NonUnitalSemiring.toSemigroupWithZero.{u3} A _inst_3)) (SMulWithZero.toSMulZeroClass.{u3, u3} A A (SemigroupWithZero.toZero.{u3} A (NonUnitalSemiring.toSemigroupWithZero.{u3} A _inst_3)) (SemigroupWithZero.toZero.{u3} A (NonUnitalSemiring.toSemigroupWithZero.{u3} A _inst_3)) (MulZeroClass.toSMulWithZero.{u3} A (NonUnitalNonAssocSemiring.toMulZeroClass.{u3} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u3} A _inst_3)))))] [_inst_6 : IsScalarTower.{u2, u3, u3} R A A (SMulZeroClass.toSMul.{u2, u3} R A (SemigroupWithZero.toZero.{u3} A (NonUnitalSemiring.toSemigroupWithZero.{u3} A _inst_3)) (SMulWithZero.toSMulZeroClass.{u2, u3} R A (CommMonoidWithZero.toZero.{u2} R (CommSemiring.toCommMonoidWithZero.{u2} R _inst_2)) (SemigroupWithZero.toZero.{u3} A (NonUnitalSemiring.toSemigroupWithZero.{u3} A _inst_3)) (MulActionWithZero.toSMulWithZero.{u2, u3} R A (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R _inst_2)) (SemigroupWithZero.toZero.{u3} A (NonUnitalSemiring.toSemigroupWithZero.{u3} A _inst_3)) (Module.toMulActionWithZero.{u2, u3} R A (CommSemiring.toSemiring.{u2} R _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u3} A _inst_3)) _inst_4)))) (SMulZeroClass.toSMul.{u3, u3} A A (SemigroupWithZero.toZero.{u3} A (NonUnitalSemiring.toSemigroupWithZero.{u3} A _inst_3)) (SMulWithZero.toSMulZeroClass.{u3, u3} A A (SemigroupWithZero.toZero.{u3} A (NonUnitalSemiring.toSemigroupWithZero.{u3} A _inst_3)) (SemigroupWithZero.toZero.{u3} A (NonUnitalSemiring.toSemigroupWithZero.{u3} A _inst_3)) (MulZeroClass.toSMulWithZero.{u3} A (NonUnitalNonAssocSemiring.toMulZeroClass.{u3} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u3} A _inst_3))))) (SMulZeroClass.toSMul.{u2, u3} R A (SemigroupWithZero.toZero.{u3} A (NonUnitalSemiring.toSemigroupWithZero.{u3} A _inst_3)) (SMulWithZero.toSMulZeroClass.{u2, u3} R A (CommMonoidWithZero.toZero.{u2} R (CommSemiring.toCommMonoidWithZero.{u2} R _inst_2)) (SemigroupWithZero.toZero.{u3} A (NonUnitalSemiring.toSemigroupWithZero.{u3} A _inst_3)) (MulActionWithZero.toSMulWithZero.{u2, u3} R A (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R _inst_2)) (SemigroupWithZero.toZero.{u3} A (NonUnitalSemiring.toSemigroupWithZero.{u3} A _inst_3)) (Module.toMulActionWithZero.{u2, u3} R A (CommSemiring.toSemiring.{u2} R _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u3} A _inst_3)) _inst_4))))] {B : Type.{u1}} [_inst_7 : Semiring.{u1} B] [_inst_8 : Algebra.{u4, u1} S B _inst_1 _inst_7] [_inst_9 : Algebra.{u4, u2} S R _inst_1 (CommSemiring.toSemiring.{u2} R _inst_2)] [_inst_10 : DistribMulAction.{u4, u3} S A (MonoidWithZero.toMonoid.{u4} S (Semiring.toMonoidWithZero.{u4} S (CommSemiring.toSemiring.{u4} S _inst_1))) (AddCommMonoid.toAddMonoid.{u3} A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u3} A _inst_3)))] [_inst_11 : IsScalarTower.{u4, u2, u3} S R A (Algebra.toSMul.{u4, u2} S R _inst_1 (CommSemiring.toSemiring.{u2} R _inst_2) _inst_9) (SMulZeroClass.toSMul.{u2, u3} R A (SemigroupWithZero.toZero.{u3} A (NonUnitalSemiring.toSemigroupWithZero.{u3} A _inst_3)) (SMulWithZero.toSMulZeroClass.{u2, u3} R A (CommMonoidWithZero.toZero.{u2} R (CommSemiring.toCommMonoidWithZero.{u2} R _inst_2)) (SemigroupWithZero.toZero.{u3} A (NonUnitalSemiring.toSemigroupWithZero.{u3} A _inst_3)) (MulActionWithZero.toSMulWithZero.{u2, u3} R A (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R _inst_2)) (SemigroupWithZero.toZero.{u3} A (NonUnitalSemiring.toSemigroupWithZero.{u3} A _inst_3)) (Module.toMulActionWithZero.{u2, u3} R A (CommSemiring.toSemiring.{u2} R _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u3} A _inst_3)) _inst_4)))) (SMulZeroClass.toSMul.{u4, u3} S A (SemigroupWithZero.toZero.{u3} A (NonUnitalSemiring.toSemigroupWithZero.{u3} A _inst_3)) (DistribSMul.toSMulZeroClass.{u4, u3} S A (AddMonoid.toAddZeroClass.{u3} A (AddCommMonoid.toAddMonoid.{u3} A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u3} A _inst_3)))) (DistribMulAction.toDistribSMul.{u4, u3} S A (MonoidWithZero.toMonoid.{u4} S (Semiring.toMonoidWithZero.{u4} S (CommSemiring.toSemiring.{u4} S _inst_1))) (AddCommMonoid.toAddMonoid.{u3} A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u3} A _inst_3))) _inst_10)))] {φ : AlgHom.{u4, max u3 u2, u1} S (Unitization.{u2, u3} R A) B _inst_1 (Unitization.semiring.{u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5) _inst_7 (Unitization.algebra.{u4, u2, u3} S R A _inst_1 _inst_2 _inst_3 _inst_4 _inst_6 _inst_5 _inst_9 _inst_10 _inst_11) _inst_8} {ψ : AlgHom.{u4, max u3 u2, u1} S (Unitization.{u2, u3} R A) B _inst_1 (Unitization.semiring.{u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5) _inst_7 (Unitization.algebra.{u4, u2, u3} S R A _inst_1 _inst_2 _inst_3 _inst_4 _inst_6 _inst_5 _inst_9 _inst_10 _inst_11) _inst_8}, (forall (a : A), Eq.{succ u1} ((fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : Unitization.{u2, u3} R A) => B) (Unitization.inr.{u2, u3} R A (CommMonoidWithZero.toZero.{u2} R (CommSemiring.toCommMonoidWithZero.{u2} R _inst_2)) a)) (FunLike.coe.{max (max (succ u2) (succ u3)) (succ u1), max (succ u2) (succ u3), succ u1} (AlgHom.{u4, max u3 u2, u1} S (Unitization.{u2, u3} R A) B _inst_1 (Unitization.semiring.{u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5) _inst_7 (Unitization.algebra.{u4, u2, u3} S R A _inst_1 _inst_2 _inst_3 _inst_4 _inst_6 _inst_5 _inst_9 _inst_10 _inst_11) _inst_8) (Unitization.{u2, u3} R A) (fun (_x : Unitization.{u2, u3} R A) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : Unitization.{u2, u3} R A) => B) _x) (SMulHomClass.toFunLike.{max (max u2 u3) u1, u4, max u2 u3, u1} (AlgHom.{u4, max u3 u2, u1} S (Unitization.{u2, u3} R A) B _inst_1 (Unitization.semiring.{u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5) _inst_7 (Unitization.algebra.{u4, u2, u3} S R A _inst_1 _inst_2 _inst_3 _inst_4 _inst_6 _inst_5 _inst_9 _inst_10 _inst_11) _inst_8) S (Unitization.{u2, u3} R A) B (SMulZeroClass.toSMul.{u4, max u2 u3} S (Unitization.{u2, u3} R A) (AddMonoid.toZero.{max u2 u3} (Unitization.{u2, u3} R A) (AddCommMonoid.toAddMonoid.{max u2 u3} (Unitization.{u2, u3} R A) (NonUnitalNonAssocSemiring.toAddCommMonoid.{max u2 u3} (Unitization.{u2, u3} R A) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{max u2 u3} (Unitization.{u2, u3} R A) (Semiring.toNonAssocSemiring.{max u2 u3} (Unitization.{u2, u3} R A) (Unitization.semiring.{u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5)))))) (DistribSMul.toSMulZeroClass.{u4, max u2 u3} S (Unitization.{u2, u3} R A) (AddMonoid.toAddZeroClass.{max u2 u3} (Unitization.{u2, u3} R A) (AddCommMonoid.toAddMonoid.{max u2 u3} (Unitization.{u2, u3} R A) (NonUnitalNonAssocSemiring.toAddCommMonoid.{max u2 u3} (Unitization.{u2, u3} R A) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{max u2 u3} (Unitization.{u2, u3} R A) (Semiring.toNonAssocSemiring.{max u2 u3} (Unitization.{u2, u3} R A) (Unitization.semiring.{u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5)))))) (DistribMulAction.toDistribSMul.{u4, max u2 u3} S (Unitization.{u2, u3} R A) (MonoidWithZero.toMonoid.{u4} S (Semiring.toMonoidWithZero.{u4} S (CommSemiring.toSemiring.{u4} S _inst_1))) (AddCommMonoid.toAddMonoid.{max u2 u3} (Unitization.{u2, u3} R A) (NonUnitalNonAssocSemiring.toAddCommMonoid.{max u2 u3} (Unitization.{u2, u3} R A) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{max u2 u3} (Unitization.{u2, u3} R A) (Semiring.toNonAssocSemiring.{max u2 u3} (Unitization.{u2, u3} R A) (Unitization.semiring.{u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5))))) (Module.toDistribMulAction.{u4, max u2 u3} S (Unitization.{u2, u3} R A) (CommSemiring.toSemiring.{u4} S _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{max u2 u3} (Unitization.{u2, u3} R A) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{max u2 u3} (Unitization.{u2, u3} R A) (Semiring.toNonAssocSemiring.{max u2 u3} (Unitization.{u2, u3} R A) (Unitization.semiring.{u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5)))) (Algebra.toModule.{u4, max u2 u3} S (Unitization.{u2, u3} R A) _inst_1 (Unitization.semiring.{u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5) (Unitization.algebra.{u4, u2, u3} S R A _inst_1 _inst_2 _inst_3 _inst_4 _inst_6 _inst_5 _inst_9 _inst_10 _inst_11)))))) (SMulZeroClass.toSMul.{u4, u1} S B (AddMonoid.toZero.{u1} B (AddCommMonoid.toAddMonoid.{u1} B (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} B (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} B (Semiring.toNonAssocSemiring.{u1} B _inst_7))))) (DistribSMul.toSMulZeroClass.{u4, u1} S B (AddMonoid.toAddZeroClass.{u1} B (AddCommMonoid.toAddMonoid.{u1} B (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} B (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} B (Semiring.toNonAssocSemiring.{u1} B _inst_7))))) (DistribMulAction.toDistribSMul.{u4, u1} S B (MonoidWithZero.toMonoid.{u4} S (Semiring.toMonoidWithZero.{u4} S (CommSemiring.toSemiring.{u4} S _inst_1))) (AddCommMonoid.toAddMonoid.{u1} B (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} B (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} B (Semiring.toNonAssocSemiring.{u1} B _inst_7)))) (Module.toDistribMulAction.{u4, u1} S B (CommSemiring.toSemiring.{u4} S _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} B (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} B (Semiring.toNonAssocSemiring.{u1} B _inst_7))) (Algebra.toModule.{u4, u1} S B _inst_1 _inst_7 _inst_8))))) (DistribMulActionHomClass.toSMulHomClass.{max (max u2 u3) u1, u4, max u2 u3, u1} (AlgHom.{u4, max u3 u2, u1} S (Unitization.{u2, u3} R A) B _inst_1 (Unitization.semiring.{u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5) _inst_7 (Unitization.algebra.{u4, u2, u3} S R A _inst_1 _inst_2 _inst_3 _inst_4 _inst_6 _inst_5 _inst_9 _inst_10 _inst_11) _inst_8) S (Unitization.{u2, u3} R A) B (MonoidWithZero.toMonoid.{u4} S (Semiring.toMonoidWithZero.{u4} S (CommSemiring.toSemiring.{u4} S _inst_1))) (AddCommMonoid.toAddMonoid.{max u2 u3} (Unitization.{u2, u3} R A) (NonUnitalNonAssocSemiring.toAddCommMonoid.{max u2 u3} (Unitization.{u2, u3} R A) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{max u2 u3} (Unitization.{u2, u3} R A) (Semiring.toNonAssocSemiring.{max u2 u3} (Unitization.{u2, u3} R A) (Unitization.semiring.{u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5))))) (AddCommMonoid.toAddMonoid.{u1} B (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} B (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} B (Semiring.toNonAssocSemiring.{u1} B _inst_7)))) (Module.toDistribMulAction.{u4, max u2 u3} S (Unitization.{u2, u3} R A) (CommSemiring.toSemiring.{u4} S _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{max u2 u3} (Unitization.{u2, u3} R A) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{max u2 u3} (Unitization.{u2, u3} R A) (Semiring.toNonAssocSemiring.{max u2 u3} (Unitization.{u2, u3} R A) (Unitization.semiring.{u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5)))) (Algebra.toModule.{u4, max u2 u3} S (Unitization.{u2, u3} R A) _inst_1 (Unitization.semiring.{u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5) (Unitization.algebra.{u4, u2, u3} S R A _inst_1 _inst_2 _inst_3 _inst_4 _inst_6 _inst_5 _inst_9 _inst_10 _inst_11))) (Module.toDistribMulAction.{u4, u1} S B (CommSemiring.toSemiring.{u4} S _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} B (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} B (Semiring.toNonAssocSemiring.{u1} B _inst_7))) (Algebra.toModule.{u4, u1} S B _inst_1 _inst_7 _inst_8)) (NonUnitalAlgHomClass.toDistribMulActionHomClass.{max (max u2 u3) u1, u4, max u2 u3, u1} (AlgHom.{u4, max u3 u2, u1} S (Unitization.{u2, u3} R A) B _inst_1 (Unitization.semiring.{u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5) _inst_7 (Unitization.algebra.{u4, u2, u3} S R A _inst_1 _inst_2 _inst_3 _inst_4 _inst_6 _inst_5 _inst_9 _inst_10 _inst_11) _inst_8) S (Unitization.{u2, u3} R A) B (MonoidWithZero.toMonoid.{u4} S (Semiring.toMonoidWithZero.{u4} S (CommSemiring.toSemiring.{u4} S _inst_1))) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{max u2 u3} (Unitization.{u2, u3} R A) (Semiring.toNonAssocSemiring.{max u2 u3} (Unitization.{u2, u3} R A) (Unitization.semiring.{u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5))) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} B (Semiring.toNonAssocSemiring.{u1} B _inst_7)) (Module.toDistribMulAction.{u4, max u2 u3} S (Unitization.{u2, u3} R A) (CommSemiring.toSemiring.{u4} S _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{max u2 u3} (Unitization.{u2, u3} R A) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{max u2 u3} (Unitization.{u2, u3} R A) (Semiring.toNonAssocSemiring.{max u2 u3} (Unitization.{u2, u3} R A) (Unitization.semiring.{u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5)))) (Algebra.toModule.{u4, max u2 u3} S (Unitization.{u2, u3} R A) _inst_1 (Unitization.semiring.{u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5) (Unitization.algebra.{u4, u2, u3} S R A _inst_1 _inst_2 _inst_3 _inst_4 _inst_6 _inst_5 _inst_9 _inst_10 _inst_11))) (Module.toDistribMulAction.{u4, u1} S B (CommSemiring.toSemiring.{u4} S _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} B (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} B (Semiring.toNonAssocSemiring.{u1} B _inst_7))) (Algebra.toModule.{u4, u1} S B _inst_1 _inst_7 _inst_8)) (AlgHom.instNonUnitalAlgHomClassToMonoidToMonoidWithZeroToSemiringToNonUnitalNonAssocSemiringToNonAssocSemiringToNonUnitalNonAssocSemiringToNonAssocSemiringToDistribMulActionToAddCommMonoidToModuleToDistribMulActionToAddCommMonoidToModule.{u4, max u2 u3, u1, max (max u2 u3) u1} S (Unitization.{u2, u3} R A) B _inst_1 (Unitization.semiring.{u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5) _inst_7 (Unitization.algebra.{u4, u2, u3} S R A _inst_1 _inst_2 _inst_3 _inst_4 _inst_6 _inst_5 _inst_9 _inst_10 _inst_11) _inst_8 (AlgHom.{u4, max u3 u2, u1} S (Unitization.{u2, u3} R A) B _inst_1 (Unitization.semiring.{u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5) _inst_7 (Unitization.algebra.{u4, u2, u3} S R A _inst_1 _inst_2 _inst_3 _inst_4 _inst_6 _inst_5 _inst_9 _inst_10 _inst_11) _inst_8) (AlgHom.algHomClass.{u4, max u2 u3, u1} S (Unitization.{u2, u3} R A) B _inst_1 (Unitization.semiring.{u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5) _inst_7 (Unitization.algebra.{u4, u2, u3} S R A _inst_1 _inst_2 _inst_3 _inst_4 _inst_6 _inst_5 _inst_9 _inst_10 _inst_11) _inst_8))))) φ (Unitization.inr.{u2, u3} R A (CommMonoidWithZero.toZero.{u2} R (CommSemiring.toCommMonoidWithZero.{u2} R _inst_2)) a)) (FunLike.coe.{max (max (succ u2) (succ u3)) (succ u1), max (succ u2) (succ u3), succ u1} (AlgHom.{u4, max u3 u2, u1} S (Unitization.{u2, u3} R A) B _inst_1 (Unitization.semiring.{u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5) _inst_7 (Unitization.algebra.{u4, u2, u3} S R A _inst_1 _inst_2 _inst_3 _inst_4 _inst_6 _inst_5 _inst_9 _inst_10 _inst_11) _inst_8) (Unitization.{u2, u3} R A) (fun (_x : Unitization.{u2, u3} R A) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : Unitization.{u2, u3} R A) => B) _x) (SMulHomClass.toFunLike.{max (max u2 u3) u1, u4, max u2 u3, u1} (AlgHom.{u4, max u3 u2, u1} S (Unitization.{u2, u3} R A) B _inst_1 (Unitization.semiring.{u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5) _inst_7 (Unitization.algebra.{u4, u2, u3} S R A _inst_1 _inst_2 _inst_3 _inst_4 _inst_6 _inst_5 _inst_9 _inst_10 _inst_11) _inst_8) S (Unitization.{u2, u3} R A) B (SMulZeroClass.toSMul.{u4, max u2 u3} S (Unitization.{u2, u3} R A) (AddMonoid.toZero.{max u2 u3} (Unitization.{u2, u3} R A) (AddCommMonoid.toAddMonoid.{max u2 u3} (Unitization.{u2, u3} R A) (NonUnitalNonAssocSemiring.toAddCommMonoid.{max u2 u3} (Unitization.{u2, u3} R A) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{max u2 u3} (Unitization.{u2, u3} R A) (Semiring.toNonAssocSemiring.{max u2 u3} (Unitization.{u2, u3} R A) (Unitization.semiring.{u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5)))))) (DistribSMul.toSMulZeroClass.{u4, max u2 u3} S (Unitization.{u2, u3} R A) (AddMonoid.toAddZeroClass.{max u2 u3} (Unitization.{u2, u3} R A) (AddCommMonoid.toAddMonoid.{max u2 u3} (Unitization.{u2, u3} R A) (NonUnitalNonAssocSemiring.toAddCommMonoid.{max u2 u3} (Unitization.{u2, u3} R A) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{max u2 u3} (Unitization.{u2, u3} R A) (Semiring.toNonAssocSemiring.{max u2 u3} (Unitization.{u2, u3} R A) (Unitization.semiring.{u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5)))))) (DistribMulAction.toDistribSMul.{u4, max u2 u3} S (Unitization.{u2, u3} R A) (MonoidWithZero.toMonoid.{u4} S (Semiring.toMonoidWithZero.{u4} S (CommSemiring.toSemiring.{u4} S _inst_1))) (AddCommMonoid.toAddMonoid.{max u2 u3} (Unitization.{u2, u3} R A) (NonUnitalNonAssocSemiring.toAddCommMonoid.{max u2 u3} (Unitization.{u2, u3} R A) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{max u2 u3} (Unitization.{u2, u3} R A) (Semiring.toNonAssocSemiring.{max u2 u3} (Unitization.{u2, u3} R A) (Unitization.semiring.{u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5))))) (Module.toDistribMulAction.{u4, max u2 u3} S (Unitization.{u2, u3} R A) (CommSemiring.toSemiring.{u4} S _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{max u2 u3} (Unitization.{u2, u3} R A) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{max u2 u3} (Unitization.{u2, u3} R A) (Semiring.toNonAssocSemiring.{max u2 u3} (Unitization.{u2, u3} R A) (Unitization.semiring.{u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5)))) (Algebra.toModule.{u4, max u2 u3} S (Unitization.{u2, u3} R A) _inst_1 (Unitization.semiring.{u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5) (Unitization.algebra.{u4, u2, u3} S R A _inst_1 _inst_2 _inst_3 _inst_4 _inst_6 _inst_5 _inst_9 _inst_10 _inst_11)))))) (SMulZeroClass.toSMul.{u4, u1} S B (AddMonoid.toZero.{u1} B (AddCommMonoid.toAddMonoid.{u1} B (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} B (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} B (Semiring.toNonAssocSemiring.{u1} B _inst_7))))) (DistribSMul.toSMulZeroClass.{u4, u1} S B (AddMonoid.toAddZeroClass.{u1} B (AddCommMonoid.toAddMonoid.{u1} B (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} B (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} B (Semiring.toNonAssocSemiring.{u1} B _inst_7))))) (DistribMulAction.toDistribSMul.{u4, u1} S B (MonoidWithZero.toMonoid.{u4} S (Semiring.toMonoidWithZero.{u4} S (CommSemiring.toSemiring.{u4} S _inst_1))) (AddCommMonoid.toAddMonoid.{u1} B (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} B (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} B (Semiring.toNonAssocSemiring.{u1} B _inst_7)))) (Module.toDistribMulAction.{u4, u1} S B (CommSemiring.toSemiring.{u4} S _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} B (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} B (Semiring.toNonAssocSemiring.{u1} B _inst_7))) (Algebra.toModule.{u4, u1} S B _inst_1 _inst_7 _inst_8))))) (DistribMulActionHomClass.toSMulHomClass.{max (max u2 u3) u1, u4, max u2 u3, u1} (AlgHom.{u4, max u3 u2, u1} S (Unitization.{u2, u3} R A) B _inst_1 (Unitization.semiring.{u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5) _inst_7 (Unitization.algebra.{u4, u2, u3} S R A _inst_1 _inst_2 _inst_3 _inst_4 _inst_6 _inst_5 _inst_9 _inst_10 _inst_11) _inst_8) S (Unitization.{u2, u3} R A) B (MonoidWithZero.toMonoid.{u4} S (Semiring.toMonoidWithZero.{u4} S (CommSemiring.toSemiring.{u4} S _inst_1))) (AddCommMonoid.toAddMonoid.{max u2 u3} (Unitization.{u2, u3} R A) (NonUnitalNonAssocSemiring.toAddCommMonoid.{max u2 u3} (Unitization.{u2, u3} R A) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{max u2 u3} (Unitization.{u2, u3} R A) (Semiring.toNonAssocSemiring.{max u2 u3} (Unitization.{u2, u3} R A) (Unitization.semiring.{u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5))))) (AddCommMonoid.toAddMonoid.{u1} B (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} B (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} B (Semiring.toNonAssocSemiring.{u1} B _inst_7)))) (Module.toDistribMulAction.{u4, max u2 u3} S (Unitization.{u2, u3} R A) (CommSemiring.toSemiring.{u4} S _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{max u2 u3} (Unitization.{u2, u3} R A) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{max u2 u3} (Unitization.{u2, u3} R A) (Semiring.toNonAssocSemiring.{max u2 u3} (Unitization.{u2, u3} R A) (Unitization.semiring.{u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5)))) (Algebra.toModule.{u4, max u2 u3} S (Unitization.{u2, u3} R A) _inst_1 (Unitization.semiring.{u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5) (Unitization.algebra.{u4, u2, u3} S R A _inst_1 _inst_2 _inst_3 _inst_4 _inst_6 _inst_5 _inst_9 _inst_10 _inst_11))) (Module.toDistribMulAction.{u4, u1} S B (CommSemiring.toSemiring.{u4} S _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} B (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} B (Semiring.toNonAssocSemiring.{u1} B _inst_7))) (Algebra.toModule.{u4, u1} S B _inst_1 _inst_7 _inst_8)) (NonUnitalAlgHomClass.toDistribMulActionHomClass.{max (max u2 u3) u1, u4, max u2 u3, u1} (AlgHom.{u4, max u3 u2, u1} S (Unitization.{u2, u3} R A) B _inst_1 (Unitization.semiring.{u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5) _inst_7 (Unitization.algebra.{u4, u2, u3} S R A _inst_1 _inst_2 _inst_3 _inst_4 _inst_6 _inst_5 _inst_9 _inst_10 _inst_11) _inst_8) S (Unitization.{u2, u3} R A) B (MonoidWithZero.toMonoid.{u4} S (Semiring.toMonoidWithZero.{u4} S (CommSemiring.toSemiring.{u4} S _inst_1))) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{max u2 u3} (Unitization.{u2, u3} R A) (Semiring.toNonAssocSemiring.{max u2 u3} (Unitization.{u2, u3} R A) (Unitization.semiring.{u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5))) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} B (Semiring.toNonAssocSemiring.{u1} B _inst_7)) (Module.toDistribMulAction.{u4, max u2 u3} S (Unitization.{u2, u3} R A) (CommSemiring.toSemiring.{u4} S _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{max u2 u3} (Unitization.{u2, u3} R A) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{max u2 u3} (Unitization.{u2, u3} R A) (Semiring.toNonAssocSemiring.{max u2 u3} (Unitization.{u2, u3} R A) (Unitization.semiring.{u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5)))) (Algebra.toModule.{u4, max u2 u3} S (Unitization.{u2, u3} R A) _inst_1 (Unitization.semiring.{u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5) (Unitization.algebra.{u4, u2, u3} S R A _inst_1 _inst_2 _inst_3 _inst_4 _inst_6 _inst_5 _inst_9 _inst_10 _inst_11))) (Module.toDistribMulAction.{u4, u1} S B (CommSemiring.toSemiring.{u4} S _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} B (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} B (Semiring.toNonAssocSemiring.{u1} B _inst_7))) (Algebra.toModule.{u4, u1} S B _inst_1 _inst_7 _inst_8)) (AlgHom.instNonUnitalAlgHomClassToMonoidToMonoidWithZeroToSemiringToNonUnitalNonAssocSemiringToNonAssocSemiringToNonUnitalNonAssocSemiringToNonAssocSemiringToDistribMulActionToAddCommMonoidToModuleToDistribMulActionToAddCommMonoidToModule.{u4, max u2 u3, u1, max (max u2 u3) u1} S (Unitization.{u2, u3} R A) B _inst_1 (Unitization.semiring.{u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5) _inst_7 (Unitization.algebra.{u4, u2, u3} S R A _inst_1 _inst_2 _inst_3 _inst_4 _inst_6 _inst_5 _inst_9 _inst_10 _inst_11) _inst_8 (AlgHom.{u4, max u3 u2, u1} S (Unitization.{u2, u3} R A) B _inst_1 (Unitization.semiring.{u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5) _inst_7 (Unitization.algebra.{u4, u2, u3} S R A _inst_1 _inst_2 _inst_3 _inst_4 _inst_6 _inst_5 _inst_9 _inst_10 _inst_11) _inst_8) (AlgHom.algHomClass.{u4, max u2 u3, u1} S (Unitization.{u2, u3} R A) B _inst_1 (Unitization.semiring.{u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5) _inst_7 (Unitization.algebra.{u4, u2, u3} S R A _inst_1 _inst_2 _inst_3 _inst_4 _inst_6 _inst_5 _inst_9 _inst_10 _inst_11) _inst_8))))) ψ (Unitization.inr.{u2, u3} R A (CommMonoidWithZero.toZero.{u2} R (CommSemiring.toCommMonoidWithZero.{u2} R _inst_2)) a))) -> (forall (r : R), Eq.{succ u1} ((fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : Unitization.{u2, u3} R A) => B) (FunLike.coe.{max (succ u2) (succ u3), succ u2, max (succ u2) (succ u3)} (RingHom.{u2, max u3 u2} R (Unitization.{u2, u3} R A) (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_2)) (Semiring.toNonAssocSemiring.{max u3 u2} (Unitization.{u2, u3} R A) (Unitization.semiring.{u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5))) R (fun (a : R) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : R) => Unitization.{u2, u3} R A) a) (MulHomClass.toFunLike.{max u2 u3, u2, max u2 u3} (RingHom.{u2, max u3 u2} R (Unitization.{u2, u3} R A) (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_2)) (Semiring.toNonAssocSemiring.{max u3 u2} (Unitization.{u2, u3} R A) (Unitization.semiring.{u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5))) R (Unitization.{u2, u3} R A) (NonUnitalNonAssocSemiring.toMul.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_2)))) (NonUnitalNonAssocSemiring.toMul.{max u2 u3} (Unitization.{u2, u3} R A) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{max u2 u3} (Unitization.{u2, u3} R A) (Semiring.toNonAssocSemiring.{max u3 u2} (Unitization.{u2, u3} R A) (Unitization.semiring.{u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5)))) (NonUnitalRingHomClass.toMulHomClass.{max u2 u3, u2, max u2 u3} (RingHom.{u2, max u3 u2} R (Unitization.{u2, u3} R A) (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_2)) (Semiring.toNonAssocSemiring.{max u3 u2} (Unitization.{u2, u3} R A) (Unitization.semiring.{u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5))) R (Unitization.{u2, u3} R A) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_2))) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{max u2 u3} (Unitization.{u2, u3} R A) (Semiring.toNonAssocSemiring.{max u3 u2} (Unitization.{u2, u3} R A) (Unitization.semiring.{u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5))) (RingHomClass.toNonUnitalRingHomClass.{max u2 u3, u2, max u2 u3} (RingHom.{u2, max u3 u2} R (Unitization.{u2, u3} R A) (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_2)) (Semiring.toNonAssocSemiring.{max u3 u2} (Unitization.{u2, u3} R A) (Unitization.semiring.{u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5))) R (Unitization.{u2, u3} R A) (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_2)) (Semiring.toNonAssocSemiring.{max u3 u2} (Unitization.{u2, u3} R A) (Unitization.semiring.{u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5)) (RingHom.instRingHomClassRingHom.{u2, max u2 u3} R (Unitization.{u2, u3} R A) (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_2)) (Semiring.toNonAssocSemiring.{max u3 u2} (Unitization.{u2, u3} R A) (Unitization.semiring.{u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5)))))) (algebraMap.{u2, max u3 u2} R (Unitization.{u2, u3} R A) _inst_2 (Unitization.semiring.{u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5) (Unitization.algebra.{u2, u2, u3} R R A _inst_2 _inst_2 _inst_3 _inst_4 _inst_6 _inst_5 (Algebra.id.{u2} R _inst_2) (Module.toDistribMulAction.{u2, u3} R A (CommSemiring.toSemiring.{u2} R _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u3} A _inst_3)) _inst_4) (IsScalarTower.left.{u2, u3} R A (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R _inst_2))) (MulActionWithZero.toMulAction.{u2, u3} R A (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R _inst_2)) (SemigroupWithZero.toZero.{u3} A (NonUnitalSemiring.toSemigroupWithZero.{u3} A _inst_3)) (Module.toMulActionWithZero.{u2, u3} R A (CommSemiring.toSemiring.{u2} R _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u3} A _inst_3)) _inst_4))))) r)) (FunLike.coe.{max (max (succ u2) (succ u3)) (succ u1), max (succ u2) (succ u3), succ u1} (AlgHom.{u4, max u3 u2, u1} S (Unitization.{u2, u3} R A) B _inst_1 (Unitization.semiring.{u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5) _inst_7 (Unitization.algebra.{u4, u2, u3} S R A _inst_1 _inst_2 _inst_3 _inst_4 _inst_6 _inst_5 _inst_9 _inst_10 _inst_11) _inst_8) (Unitization.{u2, u3} R A) (fun (_x : Unitization.{u2, u3} R A) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : Unitization.{u2, u3} R A) => B) _x) (SMulHomClass.toFunLike.{max (max u2 u3) u1, u4, max u2 u3, u1} (AlgHom.{u4, max u3 u2, u1} S (Unitization.{u2, u3} R A) B _inst_1 (Unitization.semiring.{u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5) _inst_7 (Unitization.algebra.{u4, u2, u3} S R A _inst_1 _inst_2 _inst_3 _inst_4 _inst_6 _inst_5 _inst_9 _inst_10 _inst_11) _inst_8) S (Unitization.{u2, u3} R A) B (SMulZeroClass.toSMul.{u4, max u2 u3} S (Unitization.{u2, u3} R A) (AddMonoid.toZero.{max u2 u3} (Unitization.{u2, u3} R A) (AddCommMonoid.toAddMonoid.{max u2 u3} (Unitization.{u2, u3} R A) (NonUnitalNonAssocSemiring.toAddCommMonoid.{max u2 u3} (Unitization.{u2, u3} R A) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{max u2 u3} (Unitization.{u2, u3} R A) (Semiring.toNonAssocSemiring.{max u2 u3} (Unitization.{u2, u3} R A) (Unitization.semiring.{u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5)))))) (DistribSMul.toSMulZeroClass.{u4, max u2 u3} S (Unitization.{u2, u3} R A) (AddMonoid.toAddZeroClass.{max u2 u3} (Unitization.{u2, u3} R A) (AddCommMonoid.toAddMonoid.{max u2 u3} (Unitization.{u2, u3} R A) (NonUnitalNonAssocSemiring.toAddCommMonoid.{max u2 u3} (Unitization.{u2, u3} R A) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{max u2 u3} (Unitization.{u2, u3} R A) (Semiring.toNonAssocSemiring.{max u2 u3} (Unitization.{u2, u3} R A) (Unitization.semiring.{u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5)))))) (DistribMulAction.toDistribSMul.{u4, max u2 u3} S (Unitization.{u2, u3} R A) (MonoidWithZero.toMonoid.{u4} S (Semiring.toMonoidWithZero.{u4} S (CommSemiring.toSemiring.{u4} S _inst_1))) (AddCommMonoid.toAddMonoid.{max u2 u3} (Unitization.{u2, u3} R A) (NonUnitalNonAssocSemiring.toAddCommMonoid.{max u2 u3} (Unitization.{u2, u3} R A) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{max u2 u3} (Unitization.{u2, u3} R A) (Semiring.toNonAssocSemiring.{max u2 u3} (Unitization.{u2, u3} R A) (Unitization.semiring.{u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5))))) (Module.toDistribMulAction.{u4, max u2 u3} S (Unitization.{u2, u3} R A) (CommSemiring.toSemiring.{u4} S _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{max u2 u3} (Unitization.{u2, u3} R A) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{max u2 u3} (Unitization.{u2, u3} R A) (Semiring.toNonAssocSemiring.{max u2 u3} (Unitization.{u2, u3} R A) (Unitization.semiring.{u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5)))) (Algebra.toModule.{u4, max u2 u3} S (Unitization.{u2, u3} R A) _inst_1 (Unitization.semiring.{u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5) (Unitization.algebra.{u4, u2, u3} S R A _inst_1 _inst_2 _inst_3 _inst_4 _inst_6 _inst_5 _inst_9 _inst_10 _inst_11)))))) (SMulZeroClass.toSMul.{u4, u1} S B (AddMonoid.toZero.{u1} B (AddCommMonoid.toAddMonoid.{u1} B (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} B (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} B (Semiring.toNonAssocSemiring.{u1} B _inst_7))))) (DistribSMul.toSMulZeroClass.{u4, u1} S B (AddMonoid.toAddZeroClass.{u1} B (AddCommMonoid.toAddMonoid.{u1} B (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} B (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} B (Semiring.toNonAssocSemiring.{u1} B _inst_7))))) (DistribMulAction.toDistribSMul.{u4, u1} S B (MonoidWithZero.toMonoid.{u4} S (Semiring.toMonoidWithZero.{u4} S (CommSemiring.toSemiring.{u4} S _inst_1))) (AddCommMonoid.toAddMonoid.{u1} B (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} B (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} B (Semiring.toNonAssocSemiring.{u1} B _inst_7)))) (Module.toDistribMulAction.{u4, u1} S B (CommSemiring.toSemiring.{u4} S _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} B (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} B (Semiring.toNonAssocSemiring.{u1} B _inst_7))) (Algebra.toModule.{u4, u1} S B _inst_1 _inst_7 _inst_8))))) (DistribMulActionHomClass.toSMulHomClass.{max (max u2 u3) u1, u4, max u2 u3, u1} (AlgHom.{u4, max u3 u2, u1} S (Unitization.{u2, u3} R A) B _inst_1 (Unitization.semiring.{u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5) _inst_7 (Unitization.algebra.{u4, u2, u3} S R A _inst_1 _inst_2 _inst_3 _inst_4 _inst_6 _inst_5 _inst_9 _inst_10 _inst_11) _inst_8) S (Unitization.{u2, u3} R A) B (MonoidWithZero.toMonoid.{u4} S (Semiring.toMonoidWithZero.{u4} S (CommSemiring.toSemiring.{u4} S _inst_1))) (AddCommMonoid.toAddMonoid.{max u2 u3} (Unitization.{u2, u3} R A) (NonUnitalNonAssocSemiring.toAddCommMonoid.{max u2 u3} (Unitization.{u2, u3} R A) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{max u2 u3} (Unitization.{u2, u3} R A) (Semiring.toNonAssocSemiring.{max u2 u3} (Unitization.{u2, u3} R A) (Unitization.semiring.{u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5))))) (AddCommMonoid.toAddMonoid.{u1} B (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} B (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} B (Semiring.toNonAssocSemiring.{u1} B _inst_7)))) (Module.toDistribMulAction.{u4, max u2 u3} S (Unitization.{u2, u3} R A) (CommSemiring.toSemiring.{u4} S _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{max u2 u3} (Unitization.{u2, u3} R A) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{max u2 u3} (Unitization.{u2, u3} R A) (Semiring.toNonAssocSemiring.{max u2 u3} (Unitization.{u2, u3} R A) (Unitization.semiring.{u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5)))) (Algebra.toModule.{u4, max u2 u3} S (Unitization.{u2, u3} R A) _inst_1 (Unitization.semiring.{u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5) (Unitization.algebra.{u4, u2, u3} S R A _inst_1 _inst_2 _inst_3 _inst_4 _inst_6 _inst_5 _inst_9 _inst_10 _inst_11))) (Module.toDistribMulAction.{u4, u1} S B (CommSemiring.toSemiring.{u4} S _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} B (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} B (Semiring.toNonAssocSemiring.{u1} B _inst_7))) (Algebra.toModule.{u4, u1} S B _inst_1 _inst_7 _inst_8)) (NonUnitalAlgHomClass.toDistribMulActionHomClass.{max (max u2 u3) u1, u4, max u2 u3, u1} (AlgHom.{u4, max u3 u2, u1} S (Unitization.{u2, u3} R A) B _inst_1 (Unitization.semiring.{u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5) _inst_7 (Unitization.algebra.{u4, u2, u3} S R A _inst_1 _inst_2 _inst_3 _inst_4 _inst_6 _inst_5 _inst_9 _inst_10 _inst_11) _inst_8) S (Unitization.{u2, u3} R A) B (MonoidWithZero.toMonoid.{u4} S (Semiring.toMonoidWithZero.{u4} S (CommSemiring.toSemiring.{u4} S _inst_1))) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{max u2 u3} (Unitization.{u2, u3} R A) (Semiring.toNonAssocSemiring.{max u2 u3} (Unitization.{u2, u3} R A) (Unitization.semiring.{u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5))) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} B (Semiring.toNonAssocSemiring.{u1} B _inst_7)) (Module.toDistribMulAction.{u4, max u2 u3} S (Unitization.{u2, u3} R A) (CommSemiring.toSemiring.{u4} S _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{max u2 u3} (Unitization.{u2, u3} R A) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{max u2 u3} (Unitization.{u2, u3} R A) (Semiring.toNonAssocSemiring.{max u2 u3} (Unitization.{u2, u3} R A) (Unitization.semiring.{u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5)))) (Algebra.toModule.{u4, max u2 u3} S (Unitization.{u2, u3} R A) _inst_1 (Unitization.semiring.{u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5) (Unitization.algebra.{u4, u2, u3} S R A _inst_1 _inst_2 _inst_3 _inst_4 _inst_6 _inst_5 _inst_9 _inst_10 _inst_11))) (Module.toDistribMulAction.{u4, u1} S B (CommSemiring.toSemiring.{u4} S _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} B (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} B (Semiring.toNonAssocSemiring.{u1} B _inst_7))) (Algebra.toModule.{u4, u1} S B _inst_1 _inst_7 _inst_8)) (AlgHom.instNonUnitalAlgHomClassToMonoidToMonoidWithZeroToSemiringToNonUnitalNonAssocSemiringToNonAssocSemiringToNonUnitalNonAssocSemiringToNonAssocSemiringToDistribMulActionToAddCommMonoidToModuleToDistribMulActionToAddCommMonoidToModule.{u4, max u2 u3, u1, max (max u2 u3) u1} S (Unitization.{u2, u3} R A) B _inst_1 (Unitization.semiring.{u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5) _inst_7 (Unitization.algebra.{u4, u2, u3} S R A _inst_1 _inst_2 _inst_3 _inst_4 _inst_6 _inst_5 _inst_9 _inst_10 _inst_11) _inst_8 (AlgHom.{u4, max u3 u2, u1} S (Unitization.{u2, u3} R A) B _inst_1 (Unitization.semiring.{u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5) _inst_7 (Unitization.algebra.{u4, u2, u3} S R A _inst_1 _inst_2 _inst_3 _inst_4 _inst_6 _inst_5 _inst_9 _inst_10 _inst_11) _inst_8) (AlgHom.algHomClass.{u4, max u2 u3, u1} S (Unitization.{u2, u3} R A) B _inst_1 (Unitization.semiring.{u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5) _inst_7 (Unitization.algebra.{u4, u2, u3} S R A _inst_1 _inst_2 _inst_3 _inst_4 _inst_6 _inst_5 _inst_9 _inst_10 _inst_11) _inst_8))))) φ (FunLike.coe.{max (succ u2) (succ u3), succ u2, max (succ u2) (succ u3)} (RingHom.{u2, max u3 u2} R (Unitization.{u2, u3} R A) (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_2)) (Semiring.toNonAssocSemiring.{max u3 u2} (Unitization.{u2, u3} R A) (Unitization.semiring.{u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5))) R (fun (_x : R) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : R) => Unitization.{u2, u3} R A) _x) (MulHomClass.toFunLike.{max u2 u3, u2, max u2 u3} (RingHom.{u2, max u3 u2} R (Unitization.{u2, u3} R A) (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_2)) (Semiring.toNonAssocSemiring.{max u3 u2} (Unitization.{u2, u3} R A) (Unitization.semiring.{u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5))) R (Unitization.{u2, u3} R A) (NonUnitalNonAssocSemiring.toMul.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_2)))) (NonUnitalNonAssocSemiring.toMul.{max u2 u3} (Unitization.{u2, u3} R A) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{max u2 u3} (Unitization.{u2, u3} R A) (Semiring.toNonAssocSemiring.{max u3 u2} (Unitization.{u2, u3} R A) (Unitization.semiring.{u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5)))) (NonUnitalRingHomClass.toMulHomClass.{max u2 u3, u2, max u2 u3} (RingHom.{u2, max u3 u2} R (Unitization.{u2, u3} R A) (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_2)) (Semiring.toNonAssocSemiring.{max u3 u2} (Unitization.{u2, u3} R A) (Unitization.semiring.{u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5))) R (Unitization.{u2, u3} R A) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_2))) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{max u2 u3} (Unitization.{u2, u3} R A) (Semiring.toNonAssocSemiring.{max u3 u2} (Unitization.{u2, u3} R A) (Unitization.semiring.{u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5))) (RingHomClass.toNonUnitalRingHomClass.{max u2 u3, u2, max u2 u3} (RingHom.{u2, max u3 u2} R (Unitization.{u2, u3} R A) (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_2)) (Semiring.toNonAssocSemiring.{max u3 u2} (Unitization.{u2, u3} R A) (Unitization.semiring.{u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5))) R (Unitization.{u2, u3} R A) (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_2)) (Semiring.toNonAssocSemiring.{max u3 u2} (Unitization.{u2, u3} R A) (Unitization.semiring.{u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5)) (RingHom.instRingHomClassRingHom.{u2, max u2 u3} R (Unitization.{u2, u3} R A) (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_2)) (Semiring.toNonAssocSemiring.{max u3 u2} (Unitization.{u2, u3} R A) (Unitization.semiring.{u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5)))))) (algebraMap.{u2, max u3 u2} R (Unitization.{u2, u3} R A) _inst_2 (Unitization.semiring.{u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5) (Unitization.algebra.{u2, u2, u3} R R A _inst_2 _inst_2 _inst_3 _inst_4 _inst_6 _inst_5 (Algebra.id.{u2} R _inst_2) (Module.toDistribMulAction.{u2, u3} R A (CommSemiring.toSemiring.{u2} R _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u3} A _inst_3)) _inst_4) (IsScalarTower.left.{u2, u3} R A (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R _inst_2))) (MulActionWithZero.toMulAction.{u2, u3} R A (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R _inst_2)) (SemigroupWithZero.toZero.{u3} A (NonUnitalSemiring.toSemigroupWithZero.{u3} A _inst_3)) (Module.toMulActionWithZero.{u2, u3} R A (CommSemiring.toSemiring.{u2} R _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u3} A _inst_3)) _inst_4))))) r)) (FunLike.coe.{max (max (succ u2) (succ u3)) (succ u1), max (succ u2) (succ u3), succ u1} (AlgHom.{u4, max u3 u2, u1} S (Unitization.{u2, u3} R A) B _inst_1 (Unitization.semiring.{u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5) _inst_7 (Unitization.algebra.{u4, u2, u3} S R A _inst_1 _inst_2 _inst_3 _inst_4 _inst_6 _inst_5 _inst_9 _inst_10 _inst_11) _inst_8) (Unitization.{u2, u3} R A) (fun (_x : Unitization.{u2, u3} R A) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : Unitization.{u2, u3} R A) => B) _x) (SMulHomClass.toFunLike.{max (max u2 u3) u1, u4, max u2 u3, u1} (AlgHom.{u4, max u3 u2, u1} S (Unitization.{u2, u3} R A) B _inst_1 (Unitization.semiring.{u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5) _inst_7 (Unitization.algebra.{u4, u2, u3} S R A _inst_1 _inst_2 _inst_3 _inst_4 _inst_6 _inst_5 _inst_9 _inst_10 _inst_11) _inst_8) S (Unitization.{u2, u3} R A) B (SMulZeroClass.toSMul.{u4, max u2 u3} S (Unitization.{u2, u3} R A) (AddMonoid.toZero.{max u2 u3} (Unitization.{u2, u3} R A) (AddCommMonoid.toAddMonoid.{max u2 u3} (Unitization.{u2, u3} R A) (NonUnitalNonAssocSemiring.toAddCommMonoid.{max u2 u3} (Unitization.{u2, u3} R A) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{max u2 u3} (Unitization.{u2, u3} R A) (Semiring.toNonAssocSemiring.{max u2 u3} (Unitization.{u2, u3} R A) (Unitization.semiring.{u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5)))))) (DistribSMul.toSMulZeroClass.{u4, max u2 u3} S (Unitization.{u2, u3} R A) (AddMonoid.toAddZeroClass.{max u2 u3} (Unitization.{u2, u3} R A) (AddCommMonoid.toAddMonoid.{max u2 u3} (Unitization.{u2, u3} R A) (NonUnitalNonAssocSemiring.toAddCommMonoid.{max u2 u3} (Unitization.{u2, u3} R A) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{max u2 u3} (Unitization.{u2, u3} R A) (Semiring.toNonAssocSemiring.{max u2 u3} (Unitization.{u2, u3} R A) (Unitization.semiring.{u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5)))))) (DistribMulAction.toDistribSMul.{u4, max u2 u3} S (Unitization.{u2, u3} R A) (MonoidWithZero.toMonoid.{u4} S (Semiring.toMonoidWithZero.{u4} S (CommSemiring.toSemiring.{u4} S _inst_1))) (AddCommMonoid.toAddMonoid.{max u2 u3} (Unitization.{u2, u3} R A) (NonUnitalNonAssocSemiring.toAddCommMonoid.{max u2 u3} (Unitization.{u2, u3} R A) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{max u2 u3} (Unitization.{u2, u3} R A) (Semiring.toNonAssocSemiring.{max u2 u3} (Unitization.{u2, u3} R A) (Unitization.semiring.{u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5))))) (Module.toDistribMulAction.{u4, max u2 u3} S (Unitization.{u2, u3} R A) (CommSemiring.toSemiring.{u4} S _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{max u2 u3} (Unitization.{u2, u3} R A) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{max u2 u3} (Unitization.{u2, u3} R A) (Semiring.toNonAssocSemiring.{max u2 u3} (Unitization.{u2, u3} R A) (Unitization.semiring.{u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5)))) (Algebra.toModule.{u4, max u2 u3} S (Unitization.{u2, u3} R A) _inst_1 (Unitization.semiring.{u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5) (Unitization.algebra.{u4, u2, u3} S R A _inst_1 _inst_2 _inst_3 _inst_4 _inst_6 _inst_5 _inst_9 _inst_10 _inst_11)))))) (SMulZeroClass.toSMul.{u4, u1} S B (AddMonoid.toZero.{u1} B (AddCommMonoid.toAddMonoid.{u1} B (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} B (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} B (Semiring.toNonAssocSemiring.{u1} B _inst_7))))) (DistribSMul.toSMulZeroClass.{u4, u1} S B (AddMonoid.toAddZeroClass.{u1} B (AddCommMonoid.toAddMonoid.{u1} B (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} B (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} B (Semiring.toNonAssocSemiring.{u1} B _inst_7))))) (DistribMulAction.toDistribSMul.{u4, u1} S B (MonoidWithZero.toMonoid.{u4} S (Semiring.toMonoidWithZero.{u4} S (CommSemiring.toSemiring.{u4} S _inst_1))) (AddCommMonoid.toAddMonoid.{u1} B (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} B (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} B (Semiring.toNonAssocSemiring.{u1} B _inst_7)))) (Module.toDistribMulAction.{u4, u1} S B (CommSemiring.toSemiring.{u4} S _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} B (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} B (Semiring.toNonAssocSemiring.{u1} B _inst_7))) (Algebra.toModule.{u4, u1} S B _inst_1 _inst_7 _inst_8))))) (DistribMulActionHomClass.toSMulHomClass.{max (max u2 u3) u1, u4, max u2 u3, u1} (AlgHom.{u4, max u3 u2, u1} S (Unitization.{u2, u3} R A) B _inst_1 (Unitization.semiring.{u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5) _inst_7 (Unitization.algebra.{u4, u2, u3} S R A _inst_1 _inst_2 _inst_3 _inst_4 _inst_6 _inst_5 _inst_9 _inst_10 _inst_11) _inst_8) S (Unitization.{u2, u3} R A) B (MonoidWithZero.toMonoid.{u4} S (Semiring.toMonoidWithZero.{u4} S (CommSemiring.toSemiring.{u4} S _inst_1))) (AddCommMonoid.toAddMonoid.{max u2 u3} (Unitization.{u2, u3} R A) (NonUnitalNonAssocSemiring.toAddCommMonoid.{max u2 u3} (Unitization.{u2, u3} R A) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{max u2 u3} (Unitization.{u2, u3} R A) (Semiring.toNonAssocSemiring.{max u2 u3} (Unitization.{u2, u3} R A) (Unitization.semiring.{u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5))))) (AddCommMonoid.toAddMonoid.{u1} B (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} B (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} B (Semiring.toNonAssocSemiring.{u1} B _inst_7)))) (Module.toDistribMulAction.{u4, max u2 u3} S (Unitization.{u2, u3} R A) (CommSemiring.toSemiring.{u4} S _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{max u2 u3} (Unitization.{u2, u3} R A) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{max u2 u3} (Unitization.{u2, u3} R A) (Semiring.toNonAssocSemiring.{max u2 u3} (Unitization.{u2, u3} R A) (Unitization.semiring.{u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5)))) (Algebra.toModule.{u4, max u2 u3} S (Unitization.{u2, u3} R A) _inst_1 (Unitization.semiring.{u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5) (Unitization.algebra.{u4, u2, u3} S R A _inst_1 _inst_2 _inst_3 _inst_4 _inst_6 _inst_5 _inst_9 _inst_10 _inst_11))) (Module.toDistribMulAction.{u4, u1} S B (CommSemiring.toSemiring.{u4} S _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} B (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} B (Semiring.toNonAssocSemiring.{u1} B _inst_7))) (Algebra.toModule.{u4, u1} S B _inst_1 _inst_7 _inst_8)) (NonUnitalAlgHomClass.toDistribMulActionHomClass.{max (max u2 u3) u1, u4, max u2 u3, u1} (AlgHom.{u4, max u3 u2, u1} S (Unitization.{u2, u3} R A) B _inst_1 (Unitization.semiring.{u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5) _inst_7 (Unitization.algebra.{u4, u2, u3} S R A _inst_1 _inst_2 _inst_3 _inst_4 _inst_6 _inst_5 _inst_9 _inst_10 _inst_11) _inst_8) S (Unitization.{u2, u3} R A) B (MonoidWithZero.toMonoid.{u4} S (Semiring.toMonoidWithZero.{u4} S (CommSemiring.toSemiring.{u4} S _inst_1))) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{max u2 u3} (Unitization.{u2, u3} R A) (Semiring.toNonAssocSemiring.{max u2 u3} (Unitization.{u2, u3} R A) (Unitization.semiring.{u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5))) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} B (Semiring.toNonAssocSemiring.{u1} B _inst_7)) (Module.toDistribMulAction.{u4, max u2 u3} S (Unitization.{u2, u3} R A) (CommSemiring.toSemiring.{u4} S _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{max u2 u3} (Unitization.{u2, u3} R A) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{max u2 u3} (Unitization.{u2, u3} R A) (Semiring.toNonAssocSemiring.{max u2 u3} (Unitization.{u2, u3} R A) (Unitization.semiring.{u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5)))) (Algebra.toModule.{u4, max u2 u3} S (Unitization.{u2, u3} R A) _inst_1 (Unitization.semiring.{u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5) (Unitization.algebra.{u4, u2, u3} S R A _inst_1 _inst_2 _inst_3 _inst_4 _inst_6 _inst_5 _inst_9 _inst_10 _inst_11))) (Module.toDistribMulAction.{u4, u1} S B (CommSemiring.toSemiring.{u4} S _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} B (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} B (Semiring.toNonAssocSemiring.{u1} B _inst_7))) (Algebra.toModule.{u4, u1} S B _inst_1 _inst_7 _inst_8)) (AlgHom.instNonUnitalAlgHomClassToMonoidToMonoidWithZeroToSemiringToNonUnitalNonAssocSemiringToNonAssocSemiringToNonUnitalNonAssocSemiringToNonAssocSemiringToDistribMulActionToAddCommMonoidToModuleToDistribMulActionToAddCommMonoidToModule.{u4, max u2 u3, u1, max (max u2 u3) u1} S (Unitization.{u2, u3} R A) B _inst_1 (Unitization.semiring.{u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5) _inst_7 (Unitization.algebra.{u4, u2, u3} S R A _inst_1 _inst_2 _inst_3 _inst_4 _inst_6 _inst_5 _inst_9 _inst_10 _inst_11) _inst_8 (AlgHom.{u4, max u3 u2, u1} S (Unitization.{u2, u3} R A) B _inst_1 (Unitization.semiring.{u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5) _inst_7 (Unitization.algebra.{u4, u2, u3} S R A _inst_1 _inst_2 _inst_3 _inst_4 _inst_6 _inst_5 _inst_9 _inst_10 _inst_11) _inst_8) (AlgHom.algHomClass.{u4, max u2 u3, u1} S (Unitization.{u2, u3} R A) B _inst_1 (Unitization.semiring.{u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5) _inst_7 (Unitization.algebra.{u4, u2, u3} S R A _inst_1 _inst_2 _inst_3 _inst_4 _inst_6 _inst_5 _inst_9 _inst_10 _inst_11) _inst_8))))) ψ (FunLike.coe.{max (succ u2) (succ u3), succ u2, max (succ u2) (succ u3)} (RingHom.{u2, max u3 u2} R (Unitization.{u2, u3} R A) (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_2)) (Semiring.toNonAssocSemiring.{max u3 u2} (Unitization.{u2, u3} R A) (Unitization.semiring.{u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5))) R (fun (_x : R) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : R) => Unitization.{u2, u3} R A) _x) (MulHomClass.toFunLike.{max u2 u3, u2, max u2 u3} (RingHom.{u2, max u3 u2} R (Unitization.{u2, u3} R A) (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_2)) (Semiring.toNonAssocSemiring.{max u3 u2} (Unitization.{u2, u3} R A) (Unitization.semiring.{u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5))) R (Unitization.{u2, u3} R A) (NonUnitalNonAssocSemiring.toMul.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_2)))) (NonUnitalNonAssocSemiring.toMul.{max u2 u3} (Unitization.{u2, u3} R A) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{max u2 u3} (Unitization.{u2, u3} R A) (Semiring.toNonAssocSemiring.{max u3 u2} (Unitization.{u2, u3} R A) (Unitization.semiring.{u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5)))) (NonUnitalRingHomClass.toMulHomClass.{max u2 u3, u2, max u2 u3} (RingHom.{u2, max u3 u2} R (Unitization.{u2, u3} R A) (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_2)) (Semiring.toNonAssocSemiring.{max u3 u2} (Unitization.{u2, u3} R A) (Unitization.semiring.{u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5))) R (Unitization.{u2, u3} R A) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_2))) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{max u2 u3} (Unitization.{u2, u3} R A) (Semiring.toNonAssocSemiring.{max u3 u2} (Unitization.{u2, u3} R A) (Unitization.semiring.{u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5))) (RingHomClass.toNonUnitalRingHomClass.{max u2 u3, u2, max u2 u3} (RingHom.{u2, max u3 u2} R (Unitization.{u2, u3} R A) (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_2)) (Semiring.toNonAssocSemiring.{max u3 u2} (Unitization.{u2, u3} R A) (Unitization.semiring.{u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5))) R (Unitization.{u2, u3} R A) (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_2)) (Semiring.toNonAssocSemiring.{max u3 u2} (Unitization.{u2, u3} R A) (Unitization.semiring.{u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5)) (RingHom.instRingHomClassRingHom.{u2, max u2 u3} R (Unitization.{u2, u3} R A) (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_2)) (Semiring.toNonAssocSemiring.{max u3 u2} (Unitization.{u2, u3} R A) (Unitization.semiring.{u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5)))))) (algebraMap.{u2, max u3 u2} R (Unitization.{u2, u3} R A) _inst_2 (Unitization.semiring.{u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5) (Unitization.algebra.{u2, u2, u3} R R A _inst_2 _inst_2 _inst_3 _inst_4 _inst_6 _inst_5 (Algebra.id.{u2} R _inst_2) (Module.toDistribMulAction.{u2, u3} R A (CommSemiring.toSemiring.{u2} R _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u3} A _inst_3)) _inst_4) (IsScalarTower.left.{u2, u3} R A (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R _inst_2))) (MulActionWithZero.toMulAction.{u2, u3} R A (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R _inst_2)) (SemigroupWithZero.toZero.{u3} A (NonUnitalSemiring.toSemigroupWithZero.{u3} A _inst_3)) (Module.toMulActionWithZero.{u2, u3} R A (CommSemiring.toSemiring.{u2} R _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u3} A _inst_3)) _inst_4))))) r))) -> (Eq.{max (max (succ u2) (succ u3)) (succ u1)} (AlgHom.{u4, max u3 u2, u1} S (Unitization.{u2, u3} R A) B _inst_1 (Unitization.semiring.{u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5) _inst_7 (Unitization.algebra.{u4, u2, u3} S R A _inst_1 _inst_2 _inst_3 _inst_4 _inst_6 _inst_5 _inst_9 _inst_10 _inst_11) _inst_8) φ ψ)
+  forall {S : Type.{u4}} {R : Type.{u2}} {A : Type.{u3}} [_inst_1 : CommSemiring.{u4} S] [_inst_2 : CommSemiring.{u2} R] [_inst_3 : NonUnitalSemiring.{u3} A] [_inst_4 : Module.{u2, u3} R A (CommSemiring.toSemiring.{u2} R _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u3} A _inst_3))] [_inst_5 : SMulCommClass.{u2, u3, u3} R A A (SMulZeroClass.toSMul.{u2, u3} R A (SemigroupWithZero.toZero.{u3} A (NonUnitalSemiring.toSemigroupWithZero.{u3} A _inst_3)) (SMulWithZero.toSMulZeroClass.{u2, u3} R A (CommMonoidWithZero.toZero.{u2} R (CommSemiring.toCommMonoidWithZero.{u2} R _inst_2)) (SemigroupWithZero.toZero.{u3} A (NonUnitalSemiring.toSemigroupWithZero.{u3} A _inst_3)) (MulActionWithZero.toSMulWithZero.{u2, u3} R A (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R _inst_2)) (SemigroupWithZero.toZero.{u3} A (NonUnitalSemiring.toSemigroupWithZero.{u3} A _inst_3)) (Module.toMulActionWithZero.{u2, u3} R A (CommSemiring.toSemiring.{u2} R _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u3} A _inst_3)) _inst_4)))) (SMulZeroClass.toSMul.{u3, u3} A A (SemigroupWithZero.toZero.{u3} A (NonUnitalSemiring.toSemigroupWithZero.{u3} A _inst_3)) (SMulWithZero.toSMulZeroClass.{u3, u3} A A (SemigroupWithZero.toZero.{u3} A (NonUnitalSemiring.toSemigroupWithZero.{u3} A _inst_3)) (SemigroupWithZero.toZero.{u3} A (NonUnitalSemiring.toSemigroupWithZero.{u3} A _inst_3)) (MulZeroClass.toSMulWithZero.{u3} A (NonUnitalNonAssocSemiring.toMulZeroClass.{u3} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u3} A _inst_3)))))] [_inst_6 : IsScalarTower.{u2, u3, u3} R A A (SMulZeroClass.toSMul.{u2, u3} R A (SemigroupWithZero.toZero.{u3} A (NonUnitalSemiring.toSemigroupWithZero.{u3} A _inst_3)) (SMulWithZero.toSMulZeroClass.{u2, u3} R A (CommMonoidWithZero.toZero.{u2} R (CommSemiring.toCommMonoidWithZero.{u2} R _inst_2)) (SemigroupWithZero.toZero.{u3} A (NonUnitalSemiring.toSemigroupWithZero.{u3} A _inst_3)) (MulActionWithZero.toSMulWithZero.{u2, u3} R A (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R _inst_2)) (SemigroupWithZero.toZero.{u3} A (NonUnitalSemiring.toSemigroupWithZero.{u3} A _inst_3)) (Module.toMulActionWithZero.{u2, u3} R A (CommSemiring.toSemiring.{u2} R _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u3} A _inst_3)) _inst_4)))) (SMulZeroClass.toSMul.{u3, u3} A A (SemigroupWithZero.toZero.{u3} A (NonUnitalSemiring.toSemigroupWithZero.{u3} A _inst_3)) (SMulWithZero.toSMulZeroClass.{u3, u3} A A (SemigroupWithZero.toZero.{u3} A (NonUnitalSemiring.toSemigroupWithZero.{u3} A _inst_3)) (SemigroupWithZero.toZero.{u3} A (NonUnitalSemiring.toSemigroupWithZero.{u3} A _inst_3)) (MulZeroClass.toSMulWithZero.{u3} A (NonUnitalNonAssocSemiring.toMulZeroClass.{u3} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u3} A _inst_3))))) (SMulZeroClass.toSMul.{u2, u3} R A (SemigroupWithZero.toZero.{u3} A (NonUnitalSemiring.toSemigroupWithZero.{u3} A _inst_3)) (SMulWithZero.toSMulZeroClass.{u2, u3} R A (CommMonoidWithZero.toZero.{u2} R (CommSemiring.toCommMonoidWithZero.{u2} R _inst_2)) (SemigroupWithZero.toZero.{u3} A (NonUnitalSemiring.toSemigroupWithZero.{u3} A _inst_3)) (MulActionWithZero.toSMulWithZero.{u2, u3} R A (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R _inst_2)) (SemigroupWithZero.toZero.{u3} A (NonUnitalSemiring.toSemigroupWithZero.{u3} A _inst_3)) (Module.toMulActionWithZero.{u2, u3} R A (CommSemiring.toSemiring.{u2} R _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u3} A _inst_3)) _inst_4))))] {B : Type.{u1}} [_inst_7 : Semiring.{u1} B] [_inst_8 : Algebra.{u4, u1} S B _inst_1 _inst_7] [_inst_9 : Algebra.{u4, u2} S R _inst_1 (CommSemiring.toSemiring.{u2} R _inst_2)] [_inst_10 : DistribMulAction.{u4, u3} S A (MonoidWithZero.toMonoid.{u4} S (Semiring.toMonoidWithZero.{u4} S (CommSemiring.toSemiring.{u4} S _inst_1))) (AddCommMonoid.toAddMonoid.{u3} A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u3} A _inst_3)))] [_inst_11 : IsScalarTower.{u4, u2, u3} S R A (Algebra.toSMul.{u4, u2} S R _inst_1 (CommSemiring.toSemiring.{u2} R _inst_2) _inst_9) (SMulZeroClass.toSMul.{u2, u3} R A (SemigroupWithZero.toZero.{u3} A (NonUnitalSemiring.toSemigroupWithZero.{u3} A _inst_3)) (SMulWithZero.toSMulZeroClass.{u2, u3} R A (CommMonoidWithZero.toZero.{u2} R (CommSemiring.toCommMonoidWithZero.{u2} R _inst_2)) (SemigroupWithZero.toZero.{u3} A (NonUnitalSemiring.toSemigroupWithZero.{u3} A _inst_3)) (MulActionWithZero.toSMulWithZero.{u2, u3} R A (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R _inst_2)) (SemigroupWithZero.toZero.{u3} A (NonUnitalSemiring.toSemigroupWithZero.{u3} A _inst_3)) (Module.toMulActionWithZero.{u2, u3} R A (CommSemiring.toSemiring.{u2} R _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u3} A _inst_3)) _inst_4)))) (SMulZeroClass.toSMul.{u4, u3} S A (SemigroupWithZero.toZero.{u3} A (NonUnitalSemiring.toSemigroupWithZero.{u3} A _inst_3)) (DistribSMul.toSMulZeroClass.{u4, u3} S A (AddMonoid.toAddZeroClass.{u3} A (AddCommMonoid.toAddMonoid.{u3} A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u3} A _inst_3)))) (DistribMulAction.toDistribSMul.{u4, u3} S A (MonoidWithZero.toMonoid.{u4} S (Semiring.toMonoidWithZero.{u4} S (CommSemiring.toSemiring.{u4} S _inst_1))) (AddCommMonoid.toAddMonoid.{u3} A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u3} A _inst_3))) _inst_10)))] {φ : AlgHom.{u4, max u3 u2, u1} S (Unitization.{u2, u3} R A) B _inst_1 (Unitization.semiring.{u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5) _inst_7 (Unitization.algebra.{u4, u2, u3} S R A _inst_1 _inst_2 _inst_3 _inst_4 _inst_6 _inst_5 _inst_9 _inst_10 _inst_11) _inst_8} {ψ : AlgHom.{u4, max u3 u2, u1} S (Unitization.{u2, u3} R A) B _inst_1 (Unitization.semiring.{u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5) _inst_7 (Unitization.algebra.{u4, u2, u3} S R A _inst_1 _inst_2 _inst_3 _inst_4 _inst_6 _inst_5 _inst_9 _inst_10 _inst_11) _inst_8}, (forall (a : A), Eq.{succ u1} ((fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : Unitization.{u2, u3} R A) => B) (Unitization.inr.{u2, u3} R A (CommMonoidWithZero.toZero.{u2} R (CommSemiring.toCommMonoidWithZero.{u2} R _inst_2)) a)) (FunLike.coe.{max (max (succ u2) (succ u3)) (succ u1), max (succ u2) (succ u3), succ u1} (AlgHom.{u4, max u3 u2, u1} S (Unitization.{u2, u3} R A) B _inst_1 (Unitization.semiring.{u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5) _inst_7 (Unitization.algebra.{u4, u2, u3} S R A _inst_1 _inst_2 _inst_3 _inst_4 _inst_6 _inst_5 _inst_9 _inst_10 _inst_11) _inst_8) (Unitization.{u2, u3} R A) (fun (_x : Unitization.{u2, u3} R A) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : Unitization.{u2, u3} R A) => B) _x) (SMulHomClass.toFunLike.{max (max u2 u3) u1, u4, max u2 u3, u1} (AlgHom.{u4, max u3 u2, u1} S (Unitization.{u2, u3} R A) B _inst_1 (Unitization.semiring.{u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5) _inst_7 (Unitization.algebra.{u4, u2, u3} S R A _inst_1 _inst_2 _inst_3 _inst_4 _inst_6 _inst_5 _inst_9 _inst_10 _inst_11) _inst_8) S (Unitization.{u2, u3} R A) B (SMulZeroClass.toSMul.{u4, max u2 u3} S (Unitization.{u2, u3} R A) (AddMonoid.toZero.{max u2 u3} (Unitization.{u2, u3} R A) (AddCommMonoid.toAddMonoid.{max u2 u3} (Unitization.{u2, u3} R A) (NonUnitalNonAssocSemiring.toAddCommMonoid.{max u2 u3} (Unitization.{u2, u3} R A) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{max u2 u3} (Unitization.{u2, u3} R A) (Semiring.toNonAssocSemiring.{max u2 u3} (Unitization.{u2, u3} R A) (Unitization.semiring.{u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5)))))) (DistribSMul.toSMulZeroClass.{u4, max u2 u3} S (Unitization.{u2, u3} R A) (AddMonoid.toAddZeroClass.{max u2 u3} (Unitization.{u2, u3} R A) (AddCommMonoid.toAddMonoid.{max u2 u3} (Unitization.{u2, u3} R A) (NonUnitalNonAssocSemiring.toAddCommMonoid.{max u2 u3} (Unitization.{u2, u3} R A) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{max u2 u3} (Unitization.{u2, u3} R A) (Semiring.toNonAssocSemiring.{max u2 u3} (Unitization.{u2, u3} R A) (Unitization.semiring.{u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5)))))) (DistribMulAction.toDistribSMul.{u4, max u2 u3} S (Unitization.{u2, u3} R A) (MonoidWithZero.toMonoid.{u4} S (Semiring.toMonoidWithZero.{u4} S (CommSemiring.toSemiring.{u4} S _inst_1))) (AddCommMonoid.toAddMonoid.{max u2 u3} (Unitization.{u2, u3} R A) (NonUnitalNonAssocSemiring.toAddCommMonoid.{max u2 u3} (Unitization.{u2, u3} R A) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{max u2 u3} (Unitization.{u2, u3} R A) (Semiring.toNonAssocSemiring.{max u2 u3} (Unitization.{u2, u3} R A) (Unitization.semiring.{u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5))))) (Module.toDistribMulAction.{u4, max u2 u3} S (Unitization.{u2, u3} R A) (CommSemiring.toSemiring.{u4} S _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{max u2 u3} (Unitization.{u2, u3} R A) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{max u2 u3} (Unitization.{u2, u3} R A) (Semiring.toNonAssocSemiring.{max u2 u3} (Unitization.{u2, u3} R A) (Unitization.semiring.{u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5)))) (Algebra.toModule.{u4, max u2 u3} S (Unitization.{u2, u3} R A) _inst_1 (Unitization.semiring.{u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5) (Unitization.algebra.{u4, u2, u3} S R A _inst_1 _inst_2 _inst_3 _inst_4 _inst_6 _inst_5 _inst_9 _inst_10 _inst_11)))))) (SMulZeroClass.toSMul.{u4, u1} S B (AddMonoid.toZero.{u1} B (AddCommMonoid.toAddMonoid.{u1} B (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} B (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} B (Semiring.toNonAssocSemiring.{u1} B _inst_7))))) (DistribSMul.toSMulZeroClass.{u4, u1} S B (AddMonoid.toAddZeroClass.{u1} B (AddCommMonoid.toAddMonoid.{u1} B (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} B (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} B (Semiring.toNonAssocSemiring.{u1} B _inst_7))))) (DistribMulAction.toDistribSMul.{u4, u1} S B (MonoidWithZero.toMonoid.{u4} S (Semiring.toMonoidWithZero.{u4} S (CommSemiring.toSemiring.{u4} S _inst_1))) (AddCommMonoid.toAddMonoid.{u1} B (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} B (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} B (Semiring.toNonAssocSemiring.{u1} B _inst_7)))) (Module.toDistribMulAction.{u4, u1} S B (CommSemiring.toSemiring.{u4} S _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} B (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} B (Semiring.toNonAssocSemiring.{u1} B _inst_7))) (Algebra.toModule.{u4, u1} S B _inst_1 _inst_7 _inst_8))))) (DistribMulActionHomClass.toSMulHomClass.{max (max u2 u3) u1, u4, max u2 u3, u1} (AlgHom.{u4, max u3 u2, u1} S (Unitization.{u2, u3} R A) B _inst_1 (Unitization.semiring.{u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5) _inst_7 (Unitization.algebra.{u4, u2, u3} S R A _inst_1 _inst_2 _inst_3 _inst_4 _inst_6 _inst_5 _inst_9 _inst_10 _inst_11) _inst_8) S (Unitization.{u2, u3} R A) B (MonoidWithZero.toMonoid.{u4} S (Semiring.toMonoidWithZero.{u4} S (CommSemiring.toSemiring.{u4} S _inst_1))) (AddCommMonoid.toAddMonoid.{max u2 u3} (Unitization.{u2, u3} R A) (NonUnitalNonAssocSemiring.toAddCommMonoid.{max u2 u3} (Unitization.{u2, u3} R A) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{max u2 u3} (Unitization.{u2, u3} R A) (Semiring.toNonAssocSemiring.{max u2 u3} (Unitization.{u2, u3} R A) (Unitization.semiring.{u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5))))) (AddCommMonoid.toAddMonoid.{u1} B (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} B (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} B (Semiring.toNonAssocSemiring.{u1} B _inst_7)))) (Module.toDistribMulAction.{u4, max u2 u3} S (Unitization.{u2, u3} R A) (CommSemiring.toSemiring.{u4} S _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{max u2 u3} (Unitization.{u2, u3} R A) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{max u2 u3} (Unitization.{u2, u3} R A) (Semiring.toNonAssocSemiring.{max u2 u3} (Unitization.{u2, u3} R A) (Unitization.semiring.{u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5)))) (Algebra.toModule.{u4, max u2 u3} S (Unitization.{u2, u3} R A) _inst_1 (Unitization.semiring.{u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5) (Unitization.algebra.{u4, u2, u3} S R A _inst_1 _inst_2 _inst_3 _inst_4 _inst_6 _inst_5 _inst_9 _inst_10 _inst_11))) (Module.toDistribMulAction.{u4, u1} S B (CommSemiring.toSemiring.{u4} S _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} B (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} B (Semiring.toNonAssocSemiring.{u1} B _inst_7))) (Algebra.toModule.{u4, u1} S B _inst_1 _inst_7 _inst_8)) (NonUnitalAlgHomClass.toDistribMulActionHomClass.{max (max u2 u3) u1, u4, max u2 u3, u1} (AlgHom.{u4, max u3 u2, u1} S (Unitization.{u2, u3} R A) B _inst_1 (Unitization.semiring.{u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5) _inst_7 (Unitization.algebra.{u4, u2, u3} S R A _inst_1 _inst_2 _inst_3 _inst_4 _inst_6 _inst_5 _inst_9 _inst_10 _inst_11) _inst_8) S (Unitization.{u2, u3} R A) B (MonoidWithZero.toMonoid.{u4} S (Semiring.toMonoidWithZero.{u4} S (CommSemiring.toSemiring.{u4} S _inst_1))) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{max u2 u3} (Unitization.{u2, u3} R A) (Semiring.toNonAssocSemiring.{max u2 u3} (Unitization.{u2, u3} R A) (Unitization.semiring.{u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5))) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} B (Semiring.toNonAssocSemiring.{u1} B _inst_7)) (Module.toDistribMulAction.{u4, max u2 u3} S (Unitization.{u2, u3} R A) (CommSemiring.toSemiring.{u4} S _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{max u2 u3} (Unitization.{u2, u3} R A) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{max u2 u3} (Unitization.{u2, u3} R A) (Semiring.toNonAssocSemiring.{max u2 u3} (Unitization.{u2, u3} R A) (Unitization.semiring.{u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5)))) (Algebra.toModule.{u4, max u2 u3} S (Unitization.{u2, u3} R A) _inst_1 (Unitization.semiring.{u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5) (Unitization.algebra.{u4, u2, u3} S R A _inst_1 _inst_2 _inst_3 _inst_4 _inst_6 _inst_5 _inst_9 _inst_10 _inst_11))) (Module.toDistribMulAction.{u4, u1} S B (CommSemiring.toSemiring.{u4} S _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} B (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} B (Semiring.toNonAssocSemiring.{u1} B _inst_7))) (Algebra.toModule.{u4, u1} S B _inst_1 _inst_7 _inst_8)) (AlgHom.instNonUnitalAlgHomClassToMonoidToMonoidWithZeroToSemiringToNonUnitalNonAssocSemiringToNonAssocSemiringToNonUnitalNonAssocSemiringToNonAssocSemiringToDistribMulActionToAddCommMonoidToModuleToDistribMulActionToAddCommMonoidToModule.{u4, max u2 u3, u1, max (max u2 u3) u1} S (Unitization.{u2, u3} R A) B _inst_1 (Unitization.semiring.{u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5) _inst_7 (Unitization.algebra.{u4, u2, u3} S R A _inst_1 _inst_2 _inst_3 _inst_4 _inst_6 _inst_5 _inst_9 _inst_10 _inst_11) _inst_8 (AlgHom.{u4, max u3 u2, u1} S (Unitization.{u2, u3} R A) B _inst_1 (Unitization.semiring.{u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5) _inst_7 (Unitization.algebra.{u4, u2, u3} S R A _inst_1 _inst_2 _inst_3 _inst_4 _inst_6 _inst_5 _inst_9 _inst_10 _inst_11) _inst_8) (AlgHom.algHomClass.{u4, max u2 u3, u1} S (Unitization.{u2, u3} R A) B _inst_1 (Unitization.semiring.{u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5) _inst_7 (Unitization.algebra.{u4, u2, u3} S R A _inst_1 _inst_2 _inst_3 _inst_4 _inst_6 _inst_5 _inst_9 _inst_10 _inst_11) _inst_8))))) φ (Unitization.inr.{u2, u3} R A (CommMonoidWithZero.toZero.{u2} R (CommSemiring.toCommMonoidWithZero.{u2} R _inst_2)) a)) (FunLike.coe.{max (max (succ u2) (succ u3)) (succ u1), max (succ u2) (succ u3), succ u1} (AlgHom.{u4, max u3 u2, u1} S (Unitization.{u2, u3} R A) B _inst_1 (Unitization.semiring.{u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5) _inst_7 (Unitization.algebra.{u4, u2, u3} S R A _inst_1 _inst_2 _inst_3 _inst_4 _inst_6 _inst_5 _inst_9 _inst_10 _inst_11) _inst_8) (Unitization.{u2, u3} R A) (fun (_x : Unitization.{u2, u3} R A) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : Unitization.{u2, u3} R A) => B) _x) (SMulHomClass.toFunLike.{max (max u2 u3) u1, u4, max u2 u3, u1} (AlgHom.{u4, max u3 u2, u1} S (Unitization.{u2, u3} R A) B _inst_1 (Unitization.semiring.{u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5) _inst_7 (Unitization.algebra.{u4, u2, u3} S R A _inst_1 _inst_2 _inst_3 _inst_4 _inst_6 _inst_5 _inst_9 _inst_10 _inst_11) _inst_8) S (Unitization.{u2, u3} R A) B (SMulZeroClass.toSMul.{u4, max u2 u3} S (Unitization.{u2, u3} R A) (AddMonoid.toZero.{max u2 u3} (Unitization.{u2, u3} R A) (AddCommMonoid.toAddMonoid.{max u2 u3} (Unitization.{u2, u3} R A) (NonUnitalNonAssocSemiring.toAddCommMonoid.{max u2 u3} (Unitization.{u2, u3} R A) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{max u2 u3} (Unitization.{u2, u3} R A) (Semiring.toNonAssocSemiring.{max u2 u3} (Unitization.{u2, u3} R A) (Unitization.semiring.{u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5)))))) (DistribSMul.toSMulZeroClass.{u4, max u2 u3} S (Unitization.{u2, u3} R A) (AddMonoid.toAddZeroClass.{max u2 u3} (Unitization.{u2, u3} R A) (AddCommMonoid.toAddMonoid.{max u2 u3} (Unitization.{u2, u3} R A) (NonUnitalNonAssocSemiring.toAddCommMonoid.{max u2 u3} (Unitization.{u2, u3} R A) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{max u2 u3} (Unitization.{u2, u3} R A) (Semiring.toNonAssocSemiring.{max u2 u3} (Unitization.{u2, u3} R A) (Unitization.semiring.{u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5)))))) (DistribMulAction.toDistribSMul.{u4, max u2 u3} S (Unitization.{u2, u3} R A) (MonoidWithZero.toMonoid.{u4} S (Semiring.toMonoidWithZero.{u4} S (CommSemiring.toSemiring.{u4} S _inst_1))) (AddCommMonoid.toAddMonoid.{max u2 u3} (Unitization.{u2, u3} R A) (NonUnitalNonAssocSemiring.toAddCommMonoid.{max u2 u3} (Unitization.{u2, u3} R A) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{max u2 u3} (Unitization.{u2, u3} R A) (Semiring.toNonAssocSemiring.{max u2 u3} (Unitization.{u2, u3} R A) (Unitization.semiring.{u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5))))) (Module.toDistribMulAction.{u4, max u2 u3} S (Unitization.{u2, u3} R A) (CommSemiring.toSemiring.{u4} S _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{max u2 u3} (Unitization.{u2, u3} R A) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{max u2 u3} (Unitization.{u2, u3} R A) (Semiring.toNonAssocSemiring.{max u2 u3} (Unitization.{u2, u3} R A) (Unitization.semiring.{u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5)))) (Algebra.toModule.{u4, max u2 u3} S (Unitization.{u2, u3} R A) _inst_1 (Unitization.semiring.{u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5) (Unitization.algebra.{u4, u2, u3} S R A _inst_1 _inst_2 _inst_3 _inst_4 _inst_6 _inst_5 _inst_9 _inst_10 _inst_11)))))) (SMulZeroClass.toSMul.{u4, u1} S B (AddMonoid.toZero.{u1} B (AddCommMonoid.toAddMonoid.{u1} B (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} B (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} B (Semiring.toNonAssocSemiring.{u1} B _inst_7))))) (DistribSMul.toSMulZeroClass.{u4, u1} S B (AddMonoid.toAddZeroClass.{u1} B (AddCommMonoid.toAddMonoid.{u1} B (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} B (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} B (Semiring.toNonAssocSemiring.{u1} B _inst_7))))) (DistribMulAction.toDistribSMul.{u4, u1} S B (MonoidWithZero.toMonoid.{u4} S (Semiring.toMonoidWithZero.{u4} S (CommSemiring.toSemiring.{u4} S _inst_1))) (AddCommMonoid.toAddMonoid.{u1} B (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} B (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} B (Semiring.toNonAssocSemiring.{u1} B _inst_7)))) (Module.toDistribMulAction.{u4, u1} S B (CommSemiring.toSemiring.{u4} S _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} B (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} B (Semiring.toNonAssocSemiring.{u1} B _inst_7))) (Algebra.toModule.{u4, u1} S B _inst_1 _inst_7 _inst_8))))) (DistribMulActionHomClass.toSMulHomClass.{max (max u2 u3) u1, u4, max u2 u3, u1} (AlgHom.{u4, max u3 u2, u1} S (Unitization.{u2, u3} R A) B _inst_1 (Unitization.semiring.{u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5) _inst_7 (Unitization.algebra.{u4, u2, u3} S R A _inst_1 _inst_2 _inst_3 _inst_4 _inst_6 _inst_5 _inst_9 _inst_10 _inst_11) _inst_8) S (Unitization.{u2, u3} R A) B (MonoidWithZero.toMonoid.{u4} S (Semiring.toMonoidWithZero.{u4} S (CommSemiring.toSemiring.{u4} S _inst_1))) (AddCommMonoid.toAddMonoid.{max u2 u3} (Unitization.{u2, u3} R A) (NonUnitalNonAssocSemiring.toAddCommMonoid.{max u2 u3} (Unitization.{u2, u3} R A) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{max u2 u3} (Unitization.{u2, u3} R A) (Semiring.toNonAssocSemiring.{max u2 u3} (Unitization.{u2, u3} R A) (Unitization.semiring.{u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5))))) (AddCommMonoid.toAddMonoid.{u1} B (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} B (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} B (Semiring.toNonAssocSemiring.{u1} B _inst_7)))) (Module.toDistribMulAction.{u4, max u2 u3} S (Unitization.{u2, u3} R A) (CommSemiring.toSemiring.{u4} S _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{max u2 u3} (Unitization.{u2, u3} R A) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{max u2 u3} (Unitization.{u2, u3} R A) (Semiring.toNonAssocSemiring.{max u2 u3} (Unitization.{u2, u3} R A) (Unitization.semiring.{u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5)))) (Algebra.toModule.{u4, max u2 u3} S (Unitization.{u2, u3} R A) _inst_1 (Unitization.semiring.{u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5) (Unitization.algebra.{u4, u2, u3} S R A _inst_1 _inst_2 _inst_3 _inst_4 _inst_6 _inst_5 _inst_9 _inst_10 _inst_11))) (Module.toDistribMulAction.{u4, u1} S B (CommSemiring.toSemiring.{u4} S _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} B (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} B (Semiring.toNonAssocSemiring.{u1} B _inst_7))) (Algebra.toModule.{u4, u1} S B _inst_1 _inst_7 _inst_8)) (NonUnitalAlgHomClass.toDistribMulActionHomClass.{max (max u2 u3) u1, u4, max u2 u3, u1} (AlgHom.{u4, max u3 u2, u1} S (Unitization.{u2, u3} R A) B _inst_1 (Unitization.semiring.{u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5) _inst_7 (Unitization.algebra.{u4, u2, u3} S R A _inst_1 _inst_2 _inst_3 _inst_4 _inst_6 _inst_5 _inst_9 _inst_10 _inst_11) _inst_8) S (Unitization.{u2, u3} R A) B (MonoidWithZero.toMonoid.{u4} S (Semiring.toMonoidWithZero.{u4} S (CommSemiring.toSemiring.{u4} S _inst_1))) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{max u2 u3} (Unitization.{u2, u3} R A) (Semiring.toNonAssocSemiring.{max u2 u3} (Unitization.{u2, u3} R A) (Unitization.semiring.{u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5))) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} B (Semiring.toNonAssocSemiring.{u1} B _inst_7)) (Module.toDistribMulAction.{u4, max u2 u3} S (Unitization.{u2, u3} R A) (CommSemiring.toSemiring.{u4} S _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{max u2 u3} (Unitization.{u2, u3} R A) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{max u2 u3} (Unitization.{u2, u3} R A) (Semiring.toNonAssocSemiring.{max u2 u3} (Unitization.{u2, u3} R A) (Unitization.semiring.{u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5)))) (Algebra.toModule.{u4, max u2 u3} S (Unitization.{u2, u3} R A) _inst_1 (Unitization.semiring.{u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5) (Unitization.algebra.{u4, u2, u3} S R A _inst_1 _inst_2 _inst_3 _inst_4 _inst_6 _inst_5 _inst_9 _inst_10 _inst_11))) (Module.toDistribMulAction.{u4, u1} S B (CommSemiring.toSemiring.{u4} S _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} B (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} B (Semiring.toNonAssocSemiring.{u1} B _inst_7))) (Algebra.toModule.{u4, u1} S B _inst_1 _inst_7 _inst_8)) (AlgHom.instNonUnitalAlgHomClassToMonoidToMonoidWithZeroToSemiringToNonUnitalNonAssocSemiringToNonAssocSemiringToNonUnitalNonAssocSemiringToNonAssocSemiringToDistribMulActionToAddCommMonoidToModuleToDistribMulActionToAddCommMonoidToModule.{u4, max u2 u3, u1, max (max u2 u3) u1} S (Unitization.{u2, u3} R A) B _inst_1 (Unitization.semiring.{u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5) _inst_7 (Unitization.algebra.{u4, u2, u3} S R A _inst_1 _inst_2 _inst_3 _inst_4 _inst_6 _inst_5 _inst_9 _inst_10 _inst_11) _inst_8 (AlgHom.{u4, max u3 u2, u1} S (Unitization.{u2, u3} R A) B _inst_1 (Unitization.semiring.{u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5) _inst_7 (Unitization.algebra.{u4, u2, u3} S R A _inst_1 _inst_2 _inst_3 _inst_4 _inst_6 _inst_5 _inst_9 _inst_10 _inst_11) _inst_8) (AlgHom.algHomClass.{u4, max u2 u3, u1} S (Unitization.{u2, u3} R A) B _inst_1 (Unitization.semiring.{u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5) _inst_7 (Unitization.algebra.{u4, u2, u3} S R A _inst_1 _inst_2 _inst_3 _inst_4 _inst_6 _inst_5 _inst_9 _inst_10 _inst_11) _inst_8))))) ψ (Unitization.inr.{u2, u3} R A (CommMonoidWithZero.toZero.{u2} R (CommSemiring.toCommMonoidWithZero.{u2} R _inst_2)) a))) -> (forall (r : R), Eq.{succ u1} ((fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : Unitization.{u2, u3} R A) => B) (FunLike.coe.{max (succ u2) (succ u3), succ u2, max (succ u2) (succ u3)} (RingHom.{u2, max u3 u2} R (Unitization.{u2, u3} R A) (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_2)) (Semiring.toNonAssocSemiring.{max u3 u2} (Unitization.{u2, u3} R A) (Unitization.semiring.{u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5))) R (fun (a : R) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : R) => Unitization.{u2, u3} R A) a) (MulHomClass.toFunLike.{max u2 u3, u2, max u2 u3} (RingHom.{u2, max u3 u2} R (Unitization.{u2, u3} R A) (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_2)) (Semiring.toNonAssocSemiring.{max u3 u2} (Unitization.{u2, u3} R A) (Unitization.semiring.{u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5))) R (Unitization.{u2, u3} R A) (NonUnitalNonAssocSemiring.toMul.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_2)))) (NonUnitalNonAssocSemiring.toMul.{max u2 u3} (Unitization.{u2, u3} R A) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{max u2 u3} (Unitization.{u2, u3} R A) (Semiring.toNonAssocSemiring.{max u3 u2} (Unitization.{u2, u3} R A) (Unitization.semiring.{u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5)))) (NonUnitalRingHomClass.toMulHomClass.{max u2 u3, u2, max u2 u3} (RingHom.{u2, max u3 u2} R (Unitization.{u2, u3} R A) (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_2)) (Semiring.toNonAssocSemiring.{max u3 u2} (Unitization.{u2, u3} R A) (Unitization.semiring.{u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5))) R (Unitization.{u2, u3} R A) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_2))) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{max u2 u3} (Unitization.{u2, u3} R A) (Semiring.toNonAssocSemiring.{max u3 u2} (Unitization.{u2, u3} R A) (Unitization.semiring.{u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5))) (RingHomClass.toNonUnitalRingHomClass.{max u2 u3, u2, max u2 u3} (RingHom.{u2, max u3 u2} R (Unitization.{u2, u3} R A) (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_2)) (Semiring.toNonAssocSemiring.{max u3 u2} (Unitization.{u2, u3} R A) (Unitization.semiring.{u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5))) R (Unitization.{u2, u3} R A) (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_2)) (Semiring.toNonAssocSemiring.{max u3 u2} (Unitization.{u2, u3} R A) (Unitization.semiring.{u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5)) (RingHom.instRingHomClassRingHom.{u2, max u2 u3} R (Unitization.{u2, u3} R A) (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_2)) (Semiring.toNonAssocSemiring.{max u3 u2} (Unitization.{u2, u3} R A) (Unitization.semiring.{u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5)))))) (algebraMap.{u2, max u3 u2} R (Unitization.{u2, u3} R A) _inst_2 (Unitization.semiring.{u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5) (Unitization.algebra.{u2, u2, u3} R R A _inst_2 _inst_2 _inst_3 _inst_4 _inst_6 _inst_5 (Algebra.id.{u2} R _inst_2) (Module.toDistribMulAction.{u2, u3} R A (CommSemiring.toSemiring.{u2} R _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u3} A _inst_3)) _inst_4) (IsScalarTower.left.{u2, u3} R A (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R _inst_2))) (MulActionWithZero.toMulAction.{u2, u3} R A (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R _inst_2)) (SemigroupWithZero.toZero.{u3} A (NonUnitalSemiring.toSemigroupWithZero.{u3} A _inst_3)) (Module.toMulActionWithZero.{u2, u3} R A (CommSemiring.toSemiring.{u2} R _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u3} A _inst_3)) _inst_4))))) r)) (FunLike.coe.{max (max (succ u2) (succ u3)) (succ u1), max (succ u2) (succ u3), succ u1} (AlgHom.{u4, max u3 u2, u1} S (Unitization.{u2, u3} R A) B _inst_1 (Unitization.semiring.{u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5) _inst_7 (Unitization.algebra.{u4, u2, u3} S R A _inst_1 _inst_2 _inst_3 _inst_4 _inst_6 _inst_5 _inst_9 _inst_10 _inst_11) _inst_8) (Unitization.{u2, u3} R A) (fun (_x : Unitization.{u2, u3} R A) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : Unitization.{u2, u3} R A) => B) _x) (SMulHomClass.toFunLike.{max (max u2 u3) u1, u4, max u2 u3, u1} (AlgHom.{u4, max u3 u2, u1} S (Unitization.{u2, u3} R A) B _inst_1 (Unitization.semiring.{u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5) _inst_7 (Unitization.algebra.{u4, u2, u3} S R A _inst_1 _inst_2 _inst_3 _inst_4 _inst_6 _inst_5 _inst_9 _inst_10 _inst_11) _inst_8) S (Unitization.{u2, u3} R A) B (SMulZeroClass.toSMul.{u4, max u2 u3} S (Unitization.{u2, u3} R A) (AddMonoid.toZero.{max u2 u3} (Unitization.{u2, u3} R A) (AddCommMonoid.toAddMonoid.{max u2 u3} (Unitization.{u2, u3} R A) (NonUnitalNonAssocSemiring.toAddCommMonoid.{max u2 u3} (Unitization.{u2, u3} R A) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{max u2 u3} (Unitization.{u2, u3} R A) (Semiring.toNonAssocSemiring.{max u2 u3} (Unitization.{u2, u3} R A) (Unitization.semiring.{u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5)))))) (DistribSMul.toSMulZeroClass.{u4, max u2 u3} S (Unitization.{u2, u3} R A) (AddMonoid.toAddZeroClass.{max u2 u3} (Unitization.{u2, u3} R A) (AddCommMonoid.toAddMonoid.{max u2 u3} (Unitization.{u2, u3} R A) (NonUnitalNonAssocSemiring.toAddCommMonoid.{max u2 u3} (Unitization.{u2, u3} R A) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{max u2 u3} (Unitization.{u2, u3} R A) (Semiring.toNonAssocSemiring.{max u2 u3} (Unitization.{u2, u3} R A) (Unitization.semiring.{u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5)))))) (DistribMulAction.toDistribSMul.{u4, max u2 u3} S (Unitization.{u2, u3} R A) (MonoidWithZero.toMonoid.{u4} S (Semiring.toMonoidWithZero.{u4} S (CommSemiring.toSemiring.{u4} S _inst_1))) (AddCommMonoid.toAddMonoid.{max u2 u3} (Unitization.{u2, u3} R A) (NonUnitalNonAssocSemiring.toAddCommMonoid.{max u2 u3} (Unitization.{u2, u3} R A) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{max u2 u3} (Unitization.{u2, u3} R A) (Semiring.toNonAssocSemiring.{max u2 u3} (Unitization.{u2, u3} R A) (Unitization.semiring.{u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5))))) (Module.toDistribMulAction.{u4, max u2 u3} S (Unitization.{u2, u3} R A) (CommSemiring.toSemiring.{u4} S _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{max u2 u3} (Unitization.{u2, u3} R A) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{max u2 u3} (Unitization.{u2, u3} R A) (Semiring.toNonAssocSemiring.{max u2 u3} (Unitization.{u2, u3} R A) (Unitization.semiring.{u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5)))) (Algebra.toModule.{u4, max u2 u3} S (Unitization.{u2, u3} R A) _inst_1 (Unitization.semiring.{u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5) (Unitization.algebra.{u4, u2, u3} S R A _inst_1 _inst_2 _inst_3 _inst_4 _inst_6 _inst_5 _inst_9 _inst_10 _inst_11)))))) (SMulZeroClass.toSMul.{u4, u1} S B (AddMonoid.toZero.{u1} B (AddCommMonoid.toAddMonoid.{u1} B (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} B (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} B (Semiring.toNonAssocSemiring.{u1} B _inst_7))))) (DistribSMul.toSMulZeroClass.{u4, u1} S B (AddMonoid.toAddZeroClass.{u1} B (AddCommMonoid.toAddMonoid.{u1} B (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} B (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} B (Semiring.toNonAssocSemiring.{u1} B _inst_7))))) (DistribMulAction.toDistribSMul.{u4, u1} S B (MonoidWithZero.toMonoid.{u4} S (Semiring.toMonoidWithZero.{u4} S (CommSemiring.toSemiring.{u4} S _inst_1))) (AddCommMonoid.toAddMonoid.{u1} B (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} B (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} B (Semiring.toNonAssocSemiring.{u1} B _inst_7)))) (Module.toDistribMulAction.{u4, u1} S B (CommSemiring.toSemiring.{u4} S _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} B (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} B (Semiring.toNonAssocSemiring.{u1} B _inst_7))) (Algebra.toModule.{u4, u1} S B _inst_1 _inst_7 _inst_8))))) (DistribMulActionHomClass.toSMulHomClass.{max (max u2 u3) u1, u4, max u2 u3, u1} (AlgHom.{u4, max u3 u2, u1} S (Unitization.{u2, u3} R A) B _inst_1 (Unitization.semiring.{u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5) _inst_7 (Unitization.algebra.{u4, u2, u3} S R A _inst_1 _inst_2 _inst_3 _inst_4 _inst_6 _inst_5 _inst_9 _inst_10 _inst_11) _inst_8) S (Unitization.{u2, u3} R A) B (MonoidWithZero.toMonoid.{u4} S (Semiring.toMonoidWithZero.{u4} S (CommSemiring.toSemiring.{u4} S _inst_1))) (AddCommMonoid.toAddMonoid.{max u2 u3} (Unitization.{u2, u3} R A) (NonUnitalNonAssocSemiring.toAddCommMonoid.{max u2 u3} (Unitization.{u2, u3} R A) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{max u2 u3} (Unitization.{u2, u3} R A) (Semiring.toNonAssocSemiring.{max u2 u3} (Unitization.{u2, u3} R A) (Unitization.semiring.{u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5))))) (AddCommMonoid.toAddMonoid.{u1} B (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} B (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} B (Semiring.toNonAssocSemiring.{u1} B _inst_7)))) (Module.toDistribMulAction.{u4, max u2 u3} S (Unitization.{u2, u3} R A) (CommSemiring.toSemiring.{u4} S _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{max u2 u3} (Unitization.{u2, u3} R A) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{max u2 u3} (Unitization.{u2, u3} R A) (Semiring.toNonAssocSemiring.{max u2 u3} (Unitization.{u2, u3} R A) (Unitization.semiring.{u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5)))) (Algebra.toModule.{u4, max u2 u3} S (Unitization.{u2, u3} R A) _inst_1 (Unitization.semiring.{u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5) (Unitization.algebra.{u4, u2, u3} S R A _inst_1 _inst_2 _inst_3 _inst_4 _inst_6 _inst_5 _inst_9 _inst_10 _inst_11))) (Module.toDistribMulAction.{u4, u1} S B (CommSemiring.toSemiring.{u4} S _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} B (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} B (Semiring.toNonAssocSemiring.{u1} B _inst_7))) (Algebra.toModule.{u4, u1} S B _inst_1 _inst_7 _inst_8)) (NonUnitalAlgHomClass.toDistribMulActionHomClass.{max (max u2 u3) u1, u4, max u2 u3, u1} (AlgHom.{u4, max u3 u2, u1} S (Unitization.{u2, u3} R A) B _inst_1 (Unitization.semiring.{u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5) _inst_7 (Unitization.algebra.{u4, u2, u3} S R A _inst_1 _inst_2 _inst_3 _inst_4 _inst_6 _inst_5 _inst_9 _inst_10 _inst_11) _inst_8) S (Unitization.{u2, u3} R A) B (MonoidWithZero.toMonoid.{u4} S (Semiring.toMonoidWithZero.{u4} S (CommSemiring.toSemiring.{u4} S _inst_1))) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{max u2 u3} (Unitization.{u2, u3} R A) (Semiring.toNonAssocSemiring.{max u2 u3} (Unitization.{u2, u3} R A) (Unitization.semiring.{u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5))) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} B (Semiring.toNonAssocSemiring.{u1} B _inst_7)) (Module.toDistribMulAction.{u4, max u2 u3} S (Unitization.{u2, u3} R A) (CommSemiring.toSemiring.{u4} S _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{max u2 u3} (Unitization.{u2, u3} R A) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{max u2 u3} (Unitization.{u2, u3} R A) (Semiring.toNonAssocSemiring.{max u2 u3} (Unitization.{u2, u3} R A) (Unitization.semiring.{u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5)))) (Algebra.toModule.{u4, max u2 u3} S (Unitization.{u2, u3} R A) _inst_1 (Unitization.semiring.{u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5) (Unitization.algebra.{u4, u2, u3} S R A _inst_1 _inst_2 _inst_3 _inst_4 _inst_6 _inst_5 _inst_9 _inst_10 _inst_11))) (Module.toDistribMulAction.{u4, u1} S B (CommSemiring.toSemiring.{u4} S _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} B (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} B (Semiring.toNonAssocSemiring.{u1} B _inst_7))) (Algebra.toModule.{u4, u1} S B _inst_1 _inst_7 _inst_8)) (AlgHom.instNonUnitalAlgHomClassToMonoidToMonoidWithZeroToSemiringToNonUnitalNonAssocSemiringToNonAssocSemiringToNonUnitalNonAssocSemiringToNonAssocSemiringToDistribMulActionToAddCommMonoidToModuleToDistribMulActionToAddCommMonoidToModule.{u4, max u2 u3, u1, max (max u2 u3) u1} S (Unitization.{u2, u3} R A) B _inst_1 (Unitization.semiring.{u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5) _inst_7 (Unitization.algebra.{u4, u2, u3} S R A _inst_1 _inst_2 _inst_3 _inst_4 _inst_6 _inst_5 _inst_9 _inst_10 _inst_11) _inst_8 (AlgHom.{u4, max u3 u2, u1} S (Unitization.{u2, u3} R A) B _inst_1 (Unitization.semiring.{u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5) _inst_7 (Unitization.algebra.{u4, u2, u3} S R A _inst_1 _inst_2 _inst_3 _inst_4 _inst_6 _inst_5 _inst_9 _inst_10 _inst_11) _inst_8) (AlgHom.algHomClass.{u4, max u2 u3, u1} S (Unitization.{u2, u3} R A) B _inst_1 (Unitization.semiring.{u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5) _inst_7 (Unitization.algebra.{u4, u2, u3} S R A _inst_1 _inst_2 _inst_3 _inst_4 _inst_6 _inst_5 _inst_9 _inst_10 _inst_11) _inst_8))))) φ (FunLike.coe.{max (succ u2) (succ u3), succ u2, max (succ u2) (succ u3)} (RingHom.{u2, max u3 u2} R (Unitization.{u2, u3} R A) (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_2)) (Semiring.toNonAssocSemiring.{max u3 u2} (Unitization.{u2, u3} R A) (Unitization.semiring.{u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5))) R (fun (_x : R) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : R) => Unitization.{u2, u3} R A) _x) (MulHomClass.toFunLike.{max u2 u3, u2, max u2 u3} (RingHom.{u2, max u3 u2} R (Unitization.{u2, u3} R A) (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_2)) (Semiring.toNonAssocSemiring.{max u3 u2} (Unitization.{u2, u3} R A) (Unitization.semiring.{u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5))) R (Unitization.{u2, u3} R A) (NonUnitalNonAssocSemiring.toMul.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_2)))) (NonUnitalNonAssocSemiring.toMul.{max u2 u3} (Unitization.{u2, u3} R A) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{max u2 u3} (Unitization.{u2, u3} R A) (Semiring.toNonAssocSemiring.{max u3 u2} (Unitization.{u2, u3} R A) (Unitization.semiring.{u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5)))) (NonUnitalRingHomClass.toMulHomClass.{max u2 u3, u2, max u2 u3} (RingHom.{u2, max u3 u2} R (Unitization.{u2, u3} R A) (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_2)) (Semiring.toNonAssocSemiring.{max u3 u2} (Unitization.{u2, u3} R A) (Unitization.semiring.{u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5))) R (Unitization.{u2, u3} R A) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_2))) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{max u2 u3} (Unitization.{u2, u3} R A) (Semiring.toNonAssocSemiring.{max u3 u2} (Unitization.{u2, u3} R A) (Unitization.semiring.{u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5))) (RingHomClass.toNonUnitalRingHomClass.{max u2 u3, u2, max u2 u3} (RingHom.{u2, max u3 u2} R (Unitization.{u2, u3} R A) (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_2)) (Semiring.toNonAssocSemiring.{max u3 u2} (Unitization.{u2, u3} R A) (Unitization.semiring.{u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5))) R (Unitization.{u2, u3} R A) (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_2)) (Semiring.toNonAssocSemiring.{max u3 u2} (Unitization.{u2, u3} R A) (Unitization.semiring.{u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5)) (RingHom.instRingHomClassRingHom.{u2, max u2 u3} R (Unitization.{u2, u3} R A) (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_2)) (Semiring.toNonAssocSemiring.{max u3 u2} (Unitization.{u2, u3} R A) (Unitization.semiring.{u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5)))))) (algebraMap.{u2, max u3 u2} R (Unitization.{u2, u3} R A) _inst_2 (Unitization.semiring.{u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5) (Unitization.algebra.{u2, u2, u3} R R A _inst_2 _inst_2 _inst_3 _inst_4 _inst_6 _inst_5 (Algebra.id.{u2} R _inst_2) (Module.toDistribMulAction.{u2, u3} R A (CommSemiring.toSemiring.{u2} R _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u3} A _inst_3)) _inst_4) (IsScalarTower.left.{u2, u3} R A (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R _inst_2))) (MulActionWithZero.toMulAction.{u2, u3} R A (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R _inst_2)) (SemigroupWithZero.toZero.{u3} A (NonUnitalSemiring.toSemigroupWithZero.{u3} A _inst_3)) (Module.toMulActionWithZero.{u2, u3} R A (CommSemiring.toSemiring.{u2} R _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u3} A _inst_3)) _inst_4))))) r)) (FunLike.coe.{max (max (succ u2) (succ u3)) (succ u1), max (succ u2) (succ u3), succ u1} (AlgHom.{u4, max u3 u2, u1} S (Unitization.{u2, u3} R A) B _inst_1 (Unitization.semiring.{u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5) _inst_7 (Unitization.algebra.{u4, u2, u3} S R A _inst_1 _inst_2 _inst_3 _inst_4 _inst_6 _inst_5 _inst_9 _inst_10 _inst_11) _inst_8) (Unitization.{u2, u3} R A) (fun (_x : Unitization.{u2, u3} R A) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : Unitization.{u2, u3} R A) => B) _x) (SMulHomClass.toFunLike.{max (max u2 u3) u1, u4, max u2 u3, u1} (AlgHom.{u4, max u3 u2, u1} S (Unitization.{u2, u3} R A) B _inst_1 (Unitization.semiring.{u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5) _inst_7 (Unitization.algebra.{u4, u2, u3} S R A _inst_1 _inst_2 _inst_3 _inst_4 _inst_6 _inst_5 _inst_9 _inst_10 _inst_11) _inst_8) S (Unitization.{u2, u3} R A) B (SMulZeroClass.toSMul.{u4, max u2 u3} S (Unitization.{u2, u3} R A) (AddMonoid.toZero.{max u2 u3} (Unitization.{u2, u3} R A) (AddCommMonoid.toAddMonoid.{max u2 u3} (Unitization.{u2, u3} R A) (NonUnitalNonAssocSemiring.toAddCommMonoid.{max u2 u3} (Unitization.{u2, u3} R A) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{max u2 u3} (Unitization.{u2, u3} R A) (Semiring.toNonAssocSemiring.{max u2 u3} (Unitization.{u2, u3} R A) (Unitization.semiring.{u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5)))))) (DistribSMul.toSMulZeroClass.{u4, max u2 u3} S (Unitization.{u2, u3} R A) (AddMonoid.toAddZeroClass.{max u2 u3} (Unitization.{u2, u3} R A) (AddCommMonoid.toAddMonoid.{max u2 u3} (Unitization.{u2, u3} R A) (NonUnitalNonAssocSemiring.toAddCommMonoid.{max u2 u3} (Unitization.{u2, u3} R A) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{max u2 u3} (Unitization.{u2, u3} R A) (Semiring.toNonAssocSemiring.{max u2 u3} (Unitization.{u2, u3} R A) (Unitization.semiring.{u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5)))))) (DistribMulAction.toDistribSMul.{u4, max u2 u3} S (Unitization.{u2, u3} R A) (MonoidWithZero.toMonoid.{u4} S (Semiring.toMonoidWithZero.{u4} S (CommSemiring.toSemiring.{u4} S _inst_1))) (AddCommMonoid.toAddMonoid.{max u2 u3} (Unitization.{u2, u3} R A) (NonUnitalNonAssocSemiring.toAddCommMonoid.{max u2 u3} (Unitization.{u2, u3} R A) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{max u2 u3} (Unitization.{u2, u3} R A) (Semiring.toNonAssocSemiring.{max u2 u3} (Unitization.{u2, u3} R A) (Unitization.semiring.{u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5))))) (Module.toDistribMulAction.{u4, max u2 u3} S (Unitization.{u2, u3} R A) (CommSemiring.toSemiring.{u4} S _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{max u2 u3} (Unitization.{u2, u3} R A) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{max u2 u3} (Unitization.{u2, u3} R A) (Semiring.toNonAssocSemiring.{max u2 u3} (Unitization.{u2, u3} R A) (Unitization.semiring.{u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5)))) (Algebra.toModule.{u4, max u2 u3} S (Unitization.{u2, u3} R A) _inst_1 (Unitization.semiring.{u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5) (Unitization.algebra.{u4, u2, u3} S R A _inst_1 _inst_2 _inst_3 _inst_4 _inst_6 _inst_5 _inst_9 _inst_10 _inst_11)))))) (SMulZeroClass.toSMul.{u4, u1} S B (AddMonoid.toZero.{u1} B (AddCommMonoid.toAddMonoid.{u1} B (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} B (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} B (Semiring.toNonAssocSemiring.{u1} B _inst_7))))) (DistribSMul.toSMulZeroClass.{u4, u1} S B (AddMonoid.toAddZeroClass.{u1} B (AddCommMonoid.toAddMonoid.{u1} B (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} B (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} B (Semiring.toNonAssocSemiring.{u1} B _inst_7))))) (DistribMulAction.toDistribSMul.{u4, u1} S B (MonoidWithZero.toMonoid.{u4} S (Semiring.toMonoidWithZero.{u4} S (CommSemiring.toSemiring.{u4} S _inst_1))) (AddCommMonoid.toAddMonoid.{u1} B (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} B (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} B (Semiring.toNonAssocSemiring.{u1} B _inst_7)))) (Module.toDistribMulAction.{u4, u1} S B (CommSemiring.toSemiring.{u4} S _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} B (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} B (Semiring.toNonAssocSemiring.{u1} B _inst_7))) (Algebra.toModule.{u4, u1} S B _inst_1 _inst_7 _inst_8))))) (DistribMulActionHomClass.toSMulHomClass.{max (max u2 u3) u1, u4, max u2 u3, u1} (AlgHom.{u4, max u3 u2, u1} S (Unitization.{u2, u3} R A) B _inst_1 (Unitization.semiring.{u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5) _inst_7 (Unitization.algebra.{u4, u2, u3} S R A _inst_1 _inst_2 _inst_3 _inst_4 _inst_6 _inst_5 _inst_9 _inst_10 _inst_11) _inst_8) S (Unitization.{u2, u3} R A) B (MonoidWithZero.toMonoid.{u4} S (Semiring.toMonoidWithZero.{u4} S (CommSemiring.toSemiring.{u4} S _inst_1))) (AddCommMonoid.toAddMonoid.{max u2 u3} (Unitization.{u2, u3} R A) (NonUnitalNonAssocSemiring.toAddCommMonoid.{max u2 u3} (Unitization.{u2, u3} R A) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{max u2 u3} (Unitization.{u2, u3} R A) (Semiring.toNonAssocSemiring.{max u2 u3} (Unitization.{u2, u3} R A) (Unitization.semiring.{u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5))))) (AddCommMonoid.toAddMonoid.{u1} B (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} B (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} B (Semiring.toNonAssocSemiring.{u1} B _inst_7)))) (Module.toDistribMulAction.{u4, max u2 u3} S (Unitization.{u2, u3} R A) (CommSemiring.toSemiring.{u4} S _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{max u2 u3} (Unitization.{u2, u3} R A) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{max u2 u3} (Unitization.{u2, u3} R A) (Semiring.toNonAssocSemiring.{max u2 u3} (Unitization.{u2, u3} R A) (Unitization.semiring.{u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5)))) (Algebra.toModule.{u4, max u2 u3} S (Unitization.{u2, u3} R A) _inst_1 (Unitization.semiring.{u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5) (Unitization.algebra.{u4, u2, u3} S R A _inst_1 _inst_2 _inst_3 _inst_4 _inst_6 _inst_5 _inst_9 _inst_10 _inst_11))) (Module.toDistribMulAction.{u4, u1} S B (CommSemiring.toSemiring.{u4} S _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} B (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} B (Semiring.toNonAssocSemiring.{u1} B _inst_7))) (Algebra.toModule.{u4, u1} S B _inst_1 _inst_7 _inst_8)) (NonUnitalAlgHomClass.toDistribMulActionHomClass.{max (max u2 u3) u1, u4, max u2 u3, u1} (AlgHom.{u4, max u3 u2, u1} S (Unitization.{u2, u3} R A) B _inst_1 (Unitization.semiring.{u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5) _inst_7 (Unitization.algebra.{u4, u2, u3} S R A _inst_1 _inst_2 _inst_3 _inst_4 _inst_6 _inst_5 _inst_9 _inst_10 _inst_11) _inst_8) S (Unitization.{u2, u3} R A) B (MonoidWithZero.toMonoid.{u4} S (Semiring.toMonoidWithZero.{u4} S (CommSemiring.toSemiring.{u4} S _inst_1))) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{max u2 u3} (Unitization.{u2, u3} R A) (Semiring.toNonAssocSemiring.{max u2 u3} (Unitization.{u2, u3} R A) (Unitization.semiring.{u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5))) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} B (Semiring.toNonAssocSemiring.{u1} B _inst_7)) (Module.toDistribMulAction.{u4, max u2 u3} S (Unitization.{u2, u3} R A) (CommSemiring.toSemiring.{u4} S _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{max u2 u3} (Unitization.{u2, u3} R A) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{max u2 u3} (Unitization.{u2, u3} R A) (Semiring.toNonAssocSemiring.{max u2 u3} (Unitization.{u2, u3} R A) (Unitization.semiring.{u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5)))) (Algebra.toModule.{u4, max u2 u3} S (Unitization.{u2, u3} R A) _inst_1 (Unitization.semiring.{u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5) (Unitization.algebra.{u4, u2, u3} S R A _inst_1 _inst_2 _inst_3 _inst_4 _inst_6 _inst_5 _inst_9 _inst_10 _inst_11))) (Module.toDistribMulAction.{u4, u1} S B (CommSemiring.toSemiring.{u4} S _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} B (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} B (Semiring.toNonAssocSemiring.{u1} B _inst_7))) (Algebra.toModule.{u4, u1} S B _inst_1 _inst_7 _inst_8)) (AlgHom.instNonUnitalAlgHomClassToMonoidToMonoidWithZeroToSemiringToNonUnitalNonAssocSemiringToNonAssocSemiringToNonUnitalNonAssocSemiringToNonAssocSemiringToDistribMulActionToAddCommMonoidToModuleToDistribMulActionToAddCommMonoidToModule.{u4, max u2 u3, u1, max (max u2 u3) u1} S (Unitization.{u2, u3} R A) B _inst_1 (Unitization.semiring.{u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5) _inst_7 (Unitization.algebra.{u4, u2, u3} S R A _inst_1 _inst_2 _inst_3 _inst_4 _inst_6 _inst_5 _inst_9 _inst_10 _inst_11) _inst_8 (AlgHom.{u4, max u3 u2, u1} S (Unitization.{u2, u3} R A) B _inst_1 (Unitization.semiring.{u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5) _inst_7 (Unitization.algebra.{u4, u2, u3} S R A _inst_1 _inst_2 _inst_3 _inst_4 _inst_6 _inst_5 _inst_9 _inst_10 _inst_11) _inst_8) (AlgHom.algHomClass.{u4, max u2 u3, u1} S (Unitization.{u2, u3} R A) B _inst_1 (Unitization.semiring.{u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5) _inst_7 (Unitization.algebra.{u4, u2, u3} S R A _inst_1 _inst_2 _inst_3 _inst_4 _inst_6 _inst_5 _inst_9 _inst_10 _inst_11) _inst_8))))) ψ (FunLike.coe.{max (succ u2) (succ u3), succ u2, max (succ u2) (succ u3)} (RingHom.{u2, max u3 u2} R (Unitization.{u2, u3} R A) (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_2)) (Semiring.toNonAssocSemiring.{max u3 u2} (Unitization.{u2, u3} R A) (Unitization.semiring.{u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5))) R (fun (_x : R) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2397 : R) => Unitization.{u2, u3} R A) _x) (MulHomClass.toFunLike.{max u2 u3, u2, max u2 u3} (RingHom.{u2, max u3 u2} R (Unitization.{u2, u3} R A) (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_2)) (Semiring.toNonAssocSemiring.{max u3 u2} (Unitization.{u2, u3} R A) (Unitization.semiring.{u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5))) R (Unitization.{u2, u3} R A) (NonUnitalNonAssocSemiring.toMul.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_2)))) (NonUnitalNonAssocSemiring.toMul.{max u2 u3} (Unitization.{u2, u3} R A) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{max u2 u3} (Unitization.{u2, u3} R A) (Semiring.toNonAssocSemiring.{max u3 u2} (Unitization.{u2, u3} R A) (Unitization.semiring.{u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5)))) (NonUnitalRingHomClass.toMulHomClass.{max u2 u3, u2, max u2 u3} (RingHom.{u2, max u3 u2} R (Unitization.{u2, u3} R A) (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_2)) (Semiring.toNonAssocSemiring.{max u3 u2} (Unitization.{u2, u3} R A) (Unitization.semiring.{u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5))) R (Unitization.{u2, u3} R A) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_2))) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{max u2 u3} (Unitization.{u2, u3} R A) (Semiring.toNonAssocSemiring.{max u3 u2} (Unitization.{u2, u3} R A) (Unitization.semiring.{u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5))) (RingHomClass.toNonUnitalRingHomClass.{max u2 u3, u2, max u2 u3} (RingHom.{u2, max u3 u2} R (Unitization.{u2, u3} R A) (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_2)) (Semiring.toNonAssocSemiring.{max u3 u2} (Unitization.{u2, u3} R A) (Unitization.semiring.{u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5))) R (Unitization.{u2, u3} R A) (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_2)) (Semiring.toNonAssocSemiring.{max u3 u2} (Unitization.{u2, u3} R A) (Unitization.semiring.{u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5)) (RingHom.instRingHomClassRingHom.{u2, max u2 u3} R (Unitization.{u2, u3} R A) (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_2)) (Semiring.toNonAssocSemiring.{max u3 u2} (Unitization.{u2, u3} R A) (Unitization.semiring.{u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5)))))) (algebraMap.{u2, max u3 u2} R (Unitization.{u2, u3} R A) _inst_2 (Unitization.semiring.{u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5) (Unitization.algebra.{u2, u2, u3} R R A _inst_2 _inst_2 _inst_3 _inst_4 _inst_6 _inst_5 (Algebra.id.{u2} R _inst_2) (Module.toDistribMulAction.{u2, u3} R A (CommSemiring.toSemiring.{u2} R _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u3} A _inst_3)) _inst_4) (IsScalarTower.left.{u2, u3} R A (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R _inst_2))) (MulActionWithZero.toMulAction.{u2, u3} R A (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R _inst_2)) (SemigroupWithZero.toZero.{u3} A (NonUnitalSemiring.toSemigroupWithZero.{u3} A _inst_3)) (Module.toMulActionWithZero.{u2, u3} R A (CommSemiring.toSemiring.{u2} R _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u3} A _inst_3)) _inst_4))))) r))) -> (Eq.{max (max (succ u2) (succ u3)) (succ u1)} (AlgHom.{u4, max u3 u2, u1} S (Unitization.{u2, u3} R A) B _inst_1 (Unitization.semiring.{u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5) _inst_7 (Unitization.algebra.{u4, u2, u3} S R A _inst_1 _inst_2 _inst_3 _inst_4 _inst_6 _inst_5 _inst_9 _inst_10 _inst_11) _inst_8) φ ψ)
 Case conversion may be inaccurate. Consider using '#align unitization.alg_hom_ext Unitization.algHom_extₓ'. -/
 theorem algHom_ext {φ ψ : Unitization R A →ₐ[S] B} (h : ∀ a : A, φ a = ψ a)
     (h' : ∀ r, φ (algebraMap R (Unitization R A) r) = ψ (algebraMap R (Unitization R A) r)) :
@@ -997,7 +997,7 @@ def lift : (A →ₙₐ[R] C) ≃ (Unitization R A →ₐ[R] C)
 lean 3 declaration is
   forall {R : Type.{u1}} {A : Type.{u2}} [_inst_2 : CommSemiring.{u1} R] [_inst_3 : NonUnitalSemiring.{u2} A] [_inst_4 : Module.{u1, u2} R A (CommSemiring.toSemiring.{u1} R _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u2} A _inst_3))] [_inst_5 : SMulCommClass.{u1, u2, u2} R A A (SMulZeroClass.toHasSmul.{u1, u2} R A (AddZeroClass.toHasZero.{u2} A (AddMonoid.toAddZeroClass.{u2} A (AddCommMonoid.toAddMonoid.{u2} A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u2} A _inst_3))))) (SMulWithZero.toSmulZeroClass.{u1, u2} R A (MulZeroClass.toHasZero.{u1} R (MulZeroOneClass.toMulZeroClass.{u1} R (MonoidWithZero.toMulZeroOneClass.{u1} R (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R _inst_2))))) (AddZeroClass.toHasZero.{u2} A (AddMonoid.toAddZeroClass.{u2} A (AddCommMonoid.toAddMonoid.{u2} A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u2} A _inst_3))))) (MulActionWithZero.toSMulWithZero.{u1, u2} R A (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R _inst_2)) (AddZeroClass.toHasZero.{u2} A (AddMonoid.toAddZeroClass.{u2} A (AddCommMonoid.toAddMonoid.{u2} A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u2} A _inst_3))))) (Module.toMulActionWithZero.{u1, u2} R A (CommSemiring.toSemiring.{u1} R _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u2} A _inst_3)) _inst_4)))) (Mul.toSMul.{u2} A (Distrib.toHasMul.{u2} A (NonUnitalNonAssocSemiring.toDistrib.{u2} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u2} A _inst_3))))] [_inst_6 : IsScalarTower.{u1, u2, u2} R A A (SMulZeroClass.toHasSmul.{u1, u2} R A (AddZeroClass.toHasZero.{u2} A (AddMonoid.toAddZeroClass.{u2} A (AddCommMonoid.toAddMonoid.{u2} A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u2} A _inst_3))))) (SMulWithZero.toSmulZeroClass.{u1, u2} R A (MulZeroClass.toHasZero.{u1} R (MulZeroOneClass.toMulZeroClass.{u1} R (MonoidWithZero.toMulZeroOneClass.{u1} R (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R _inst_2))))) (AddZeroClass.toHasZero.{u2} A (AddMonoid.toAddZeroClass.{u2} A (AddCommMonoid.toAddMonoid.{u2} A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u2} A _inst_3))))) (MulActionWithZero.toSMulWithZero.{u1, u2} R A (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R _inst_2)) (AddZeroClass.toHasZero.{u2} A (AddMonoid.toAddZeroClass.{u2} A (AddCommMonoid.toAddMonoid.{u2} A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u2} A _inst_3))))) (Module.toMulActionWithZero.{u1, u2} R A (CommSemiring.toSemiring.{u1} R _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u2} A _inst_3)) _inst_4)))) (Mul.toSMul.{u2} A (Distrib.toHasMul.{u2} A (NonUnitalNonAssocSemiring.toDistrib.{u2} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u2} A _inst_3)))) (SMulZeroClass.toHasSmul.{u1, u2} R A (AddZeroClass.toHasZero.{u2} A (AddMonoid.toAddZeroClass.{u2} A (AddCommMonoid.toAddMonoid.{u2} A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u2} A _inst_3))))) (SMulWithZero.toSmulZeroClass.{u1, u2} R A (MulZeroClass.toHasZero.{u1} R (MulZeroOneClass.toMulZeroClass.{u1} R (MonoidWithZero.toMulZeroOneClass.{u1} R (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R _inst_2))))) (AddZeroClass.toHasZero.{u2} A (AddMonoid.toAddZeroClass.{u2} A (AddCommMonoid.toAddMonoid.{u2} A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u2} A _inst_3))))) (MulActionWithZero.toSMulWithZero.{u1, u2} R A (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R _inst_2)) (AddZeroClass.toHasZero.{u2} A (AddMonoid.toAddZeroClass.{u2} A (AddCommMonoid.toAddMonoid.{u2} A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u2} A _inst_3))))) (Module.toMulActionWithZero.{u1, u2} R A (CommSemiring.toSemiring.{u1} R _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u2} A _inst_3)) _inst_4))))] {C : Type.{u3}} [_inst_12 : Ring.{u3} C] [_inst_13 : Algebra.{u1, u3} R C _inst_2 (Ring.toSemiring.{u3} C _inst_12)] (φ : AlgHom.{u1, max u1 u2, u3} R (Unitization.{u1, u2} R A) C _inst_2 (Unitization.semiring.{u1, u2} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5) (Ring.toSemiring.{u3} C _inst_12) (Unitization.algebra.{u1, u1, u2} R R A _inst_2 _inst_2 _inst_3 _inst_4 _inst_6 _inst_5 (Algebra.id.{u1} R _inst_2) (Module.toDistribMulAction.{u1, u2} R A (CommSemiring.toSemiring.{u1} R _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u2} A _inst_3)) _inst_4) (IsScalarTower.left.{u1, u2} R A (MonoidWithZero.toMonoid.{u1} R (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R _inst_2))) (MulActionWithZero.toMulAction.{u1, u2} R A (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R _inst_2)) (AddZeroClass.toHasZero.{u2} A (AddMonoid.toAddZeroClass.{u2} A (AddCommMonoid.toAddMonoid.{u2} A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u2} A _inst_3))))) (Module.toMulActionWithZero.{u1, u2} R A (CommSemiring.toSemiring.{u1} R _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u2} A _inst_3)) _inst_4)))) _inst_13) (a : A), Eq.{succ u3} C (coeFn.{max (succ u2) (succ u3), max (succ u2) (succ u3)} (NonUnitalAlgHom.{u1, u2, u3} R A C (MonoidWithZero.toMonoid.{u1} R (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R _inst_2))) (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u2} A _inst_3) (Module.toDistribMulAction.{u1, u2} R A (CommSemiring.toSemiring.{u1} R _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u2} A _inst_3)) _inst_4) (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u3} C (NonAssocRing.toNonUnitalNonAssocRing.{u3} C (Ring.toNonAssocRing.{u3} C _inst_12))) (Module.toDistribMulAction.{u1, u3} R C (CommSemiring.toSemiring.{u1} R _inst_2) (AddCommGroup.toAddCommMonoid.{u3} C (NonUnitalNonAssocRing.toAddCommGroup.{u3} C (NonAssocRing.toNonUnitalNonAssocRing.{u3} C (Ring.toNonAssocRing.{u3} C _inst_12)))) (Algebra.toModule.{u1, u3} R C _inst_2 (Ring.toSemiring.{u3} C _inst_12) _inst_13))) (fun (_x : NonUnitalAlgHom.{u1, u2, u3} R A C (MonoidWithZero.toMonoid.{u1} R (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R _inst_2))) (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u2} A _inst_3) (Module.toDistribMulAction.{u1, u2} R A (CommSemiring.toSemiring.{u1} R _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u2} A _inst_3)) _inst_4) (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u3} C (NonAssocRing.toNonUnitalNonAssocRing.{u3} C (Ring.toNonAssocRing.{u3} C _inst_12))) (Module.toDistribMulAction.{u1, u3} R C (CommSemiring.toSemiring.{u1} R _inst_2) (AddCommGroup.toAddCommMonoid.{u3} C (NonUnitalNonAssocRing.toAddCommGroup.{u3} C (NonAssocRing.toNonUnitalNonAssocRing.{u3} C (Ring.toNonAssocRing.{u3} C _inst_12)))) (Algebra.toModule.{u1, u3} R C _inst_2 (Ring.toSemiring.{u3} C _inst_12) _inst_13))) => A -> C) (NonUnitalAlgHom.hasCoeToFun.{u1, u2, u3} R A C (MonoidWithZero.toMonoid.{u1} R (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R _inst_2))) (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u2} A _inst_3) (Module.toDistribMulAction.{u1, u2} R A (CommSemiring.toSemiring.{u1} R _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u2} A _inst_3)) _inst_4) (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u3} C (NonAssocRing.toNonUnitalNonAssocRing.{u3} C (Ring.toNonAssocRing.{u3} C _inst_12))) (Module.toDistribMulAction.{u1, u3} R C (CommSemiring.toSemiring.{u1} R _inst_2) (AddCommGroup.toAddCommMonoid.{u3} C (NonUnitalNonAssocRing.toAddCommGroup.{u3} C (NonAssocRing.toNonUnitalNonAssocRing.{u3} C (Ring.toNonAssocRing.{u3} C _inst_12)))) (Algebra.toModule.{u1, u3} R C _inst_2 (Ring.toSemiring.{u3} C _inst_12) _inst_13))) (coeFn.{max 1 (max (max (succ (max u1 u2)) (succ u3)) (succ u2) (succ u3)) (max (succ u2) (succ u3)) (succ (max u1 u2)) (succ u3), max (max (succ (max u1 u2)) (succ u3)) (succ u2) (succ u3)} (Equiv.{max (succ (max u1 u2)) (succ u3), max (succ u2) (succ u3)} (AlgHom.{u1, max u1 u2, u3} R (Unitization.{u1, u2} R A) C _inst_2 (Unitization.semiring.{u1, u2} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5) (Ring.toSemiring.{u3} C _inst_12) (Unitization.algebra.{u1, u1, u2} R R A _inst_2 _inst_2 _inst_3 _inst_4 _inst_6 _inst_5 (Algebra.id.{u1} R _inst_2) (Module.toDistribMulAction.{u1, u2} R A (CommSemiring.toSemiring.{u1} R _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u2} A _inst_3)) _inst_4) (Unitization.lift._proof_1.{u1, u2} R A _inst_2 _inst_3 _inst_4)) _inst_13) (NonUnitalAlgHom.{u1, u2, u3} R A C (MonoidWithZero.toMonoid.{u1} R (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R _inst_2))) (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u2} A _inst_3) (Module.toDistribMulAction.{u1, u2} R A (CommSemiring.toSemiring.{u1} R _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u2} A _inst_3)) _inst_4) (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u3} C (NonAssocRing.toNonUnitalNonAssocRing.{u3} C (Ring.toNonAssocRing.{u3} C _inst_12))) (Module.toDistribMulAction.{u1, u3} R C (CommSemiring.toSemiring.{u1} R _inst_2) (AddCommGroup.toAddCommMonoid.{u3} C (NonUnitalNonAssocRing.toAddCommGroup.{u3} C (NonAssocRing.toNonUnitalNonAssocRing.{u3} C (Ring.toNonAssocRing.{u3} C _inst_12)))) (Algebra.toModule.{u1, u3} R C _inst_2 (Ring.toSemiring.{u3} C _inst_12) _inst_13)))) (fun (_x : Equiv.{max (succ (max u1 u2)) (succ u3), max (succ u2) (succ u3)} (AlgHom.{u1, max u1 u2, u3} R (Unitization.{u1, u2} R A) C _inst_2 (Unitization.semiring.{u1, u2} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5) (Ring.toSemiring.{u3} C _inst_12) (Unitization.algebra.{u1, u1, u2} R R A _inst_2 _inst_2 _inst_3 _inst_4 _inst_6 _inst_5 (Algebra.id.{u1} R _inst_2) (Module.toDistribMulAction.{u1, u2} R A (CommSemiring.toSemiring.{u1} R _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u2} A _inst_3)) _inst_4) (Unitization.lift._proof_1.{u1, u2} R A _inst_2 _inst_3 _inst_4)) _inst_13) (NonUnitalAlgHom.{u1, u2, u3} R A C (MonoidWithZero.toMonoid.{u1} R (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R _inst_2))) (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u2} A _inst_3) (Module.toDistribMulAction.{u1, u2} R A (CommSemiring.toSemiring.{u1} R _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u2} A _inst_3)) _inst_4) (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u3} C (NonAssocRing.toNonUnitalNonAssocRing.{u3} C (Ring.toNonAssocRing.{u3} C _inst_12))) (Module.toDistribMulAction.{u1, u3} R C (CommSemiring.toSemiring.{u1} R _inst_2) (AddCommGroup.toAddCommMonoid.{u3} C (NonUnitalNonAssocRing.toAddCommGroup.{u3} C (NonAssocRing.toNonUnitalNonAssocRing.{u3} C (Ring.toNonAssocRing.{u3} C _inst_12)))) (Algebra.toModule.{u1, u3} R C _inst_2 (Ring.toSemiring.{u3} C _inst_12) _inst_13)))) => (AlgHom.{u1, max u1 u2, u3} R (Unitization.{u1, u2} R A) C _inst_2 (Unitization.semiring.{u1, u2} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5) (Ring.toSemiring.{u3} C _inst_12) (Unitization.algebra.{u1, u1, u2} R R A _inst_2 _inst_2 _inst_3 _inst_4 _inst_6 _inst_5 (Algebra.id.{u1} R _inst_2) (Module.toDistribMulAction.{u1, u2} R A (CommSemiring.toSemiring.{u1} R _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u2} A _inst_3)) _inst_4) (Unitization.lift._proof_1.{u1, u2} R A _inst_2 _inst_3 _inst_4)) _inst_13) -> (NonUnitalAlgHom.{u1, u2, u3} R A C (MonoidWithZero.toMonoid.{u1} R (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R _inst_2))) (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u2} A _inst_3) (Module.toDistribMulAction.{u1, u2} R A (CommSemiring.toSemiring.{u1} R _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u2} A _inst_3)) _inst_4) (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u3} C (NonAssocRing.toNonUnitalNonAssocRing.{u3} C (Ring.toNonAssocRing.{u3} C _inst_12))) (Module.toDistribMulAction.{u1, u3} R C (CommSemiring.toSemiring.{u1} R _inst_2) (AddCommGroup.toAddCommMonoid.{u3} C (NonUnitalNonAssocRing.toAddCommGroup.{u3} C (NonAssocRing.toNonUnitalNonAssocRing.{u3} C (Ring.toNonAssocRing.{u3} C _inst_12)))) (Algebra.toModule.{u1, u3} R C _inst_2 (Ring.toSemiring.{u3} C _inst_12) _inst_13)))) (Equiv.hasCoeToFun.{max (succ (max u1 u2)) (succ u3), max (succ u2) (succ u3)} (AlgHom.{u1, max u1 u2, u3} R (Unitization.{u1, u2} R A) C _inst_2 (Unitization.semiring.{u1, u2} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5) (Ring.toSemiring.{u3} C _inst_12) (Unitization.algebra.{u1, u1, u2} R R A _inst_2 _inst_2 _inst_3 _inst_4 _inst_6 _inst_5 (Algebra.id.{u1} R _inst_2) (Module.toDistribMulAction.{u1, u2} R A (CommSemiring.toSemiring.{u1} R _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u2} A _inst_3)) _inst_4) (Unitization.lift._proof_1.{u1, u2} R A _inst_2 _inst_3 _inst_4)) _inst_13) (NonUnitalAlgHom.{u1, u2, u3} R A C (MonoidWithZero.toMonoid.{u1} R (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R _inst_2))) (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u2} A _inst_3) (Module.toDistribMulAction.{u1, u2} R A (CommSemiring.toSemiring.{u1} R _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u2} A _inst_3)) _inst_4) (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u3} C (NonAssocRing.toNonUnitalNonAssocRing.{u3} C (Ring.toNonAssocRing.{u3} C _inst_12))) (Module.toDistribMulAction.{u1, u3} R C (CommSemiring.toSemiring.{u1} R _inst_2) (AddCommGroup.toAddCommMonoid.{u3} C (NonUnitalNonAssocRing.toAddCommGroup.{u3} C (NonAssocRing.toNonUnitalNonAssocRing.{u3} C (Ring.toNonAssocRing.{u3} C _inst_12)))) (Algebra.toModule.{u1, u3} R C _inst_2 (Ring.toSemiring.{u3} C _inst_12) _inst_13)))) (Equiv.symm.{max (succ u2) (succ u3), max (succ (max u1 u2)) (succ u3)} (NonUnitalAlgHom.{u1, u2, u3} R A C (MonoidWithZero.toMonoid.{u1} R (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R _inst_2))) (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u2} A _inst_3) (Module.toDistribMulAction.{u1, u2} R A (CommSemiring.toSemiring.{u1} R _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u2} A _inst_3)) _inst_4) (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u3} C (NonAssocRing.toNonUnitalNonAssocRing.{u3} C (Ring.toNonAssocRing.{u3} C _inst_12))) (Module.toDistribMulAction.{u1, u3} R C (CommSemiring.toSemiring.{u1} R _inst_2) (AddCommGroup.toAddCommMonoid.{u3} C (NonUnitalNonAssocRing.toAddCommGroup.{u3} C (NonAssocRing.toNonUnitalNonAssocRing.{u3} C (Ring.toNonAssocRing.{u3} C _inst_12)))) (Algebra.toModule.{u1, u3} R C _inst_2 (Ring.toSemiring.{u3} C _inst_12) _inst_13))) (AlgHom.{u1, max u1 u2, u3} R (Unitization.{u1, u2} R A) C _inst_2 (Unitization.semiring.{u1, u2} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5) (Ring.toSemiring.{u3} C _inst_12) (Unitization.algebra.{u1, u1, u2} R R A _inst_2 _inst_2 _inst_3 _inst_4 _inst_6 _inst_5 (Algebra.id.{u1} R _inst_2) (Module.toDistribMulAction.{u1, u2} R A (CommSemiring.toSemiring.{u1} R _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u2} A _inst_3)) _inst_4) (Unitization.lift._proof_1.{u1, u2} R A _inst_2 _inst_3 _inst_4)) _inst_13) (Unitization.lift.{u1, u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_5 _inst_6 C _inst_12 _inst_13)) φ) a) (coeFn.{max (succ (max u1 u2)) (succ u3), max (succ (max u1 u2)) (succ u3)} (AlgHom.{u1, max u1 u2, u3} R (Unitization.{u1, u2} R A) C _inst_2 (Unitization.semiring.{u1, u2} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5) (Ring.toSemiring.{u3} C _inst_12) (Unitization.algebra.{u1, u1, u2} R R A _inst_2 _inst_2 _inst_3 _inst_4 _inst_6 _inst_5 (Algebra.id.{u1} R _inst_2) (Module.toDistribMulAction.{u1, u2} R A (CommSemiring.toSemiring.{u1} R _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u2} A _inst_3)) _inst_4) (IsScalarTower.left.{u1, u2} R A (MonoidWithZero.toMonoid.{u1} R (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R _inst_2))) (MulActionWithZero.toMulAction.{u1, u2} R A (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R _inst_2)) (AddZeroClass.toHasZero.{u2} A (AddMonoid.toAddZeroClass.{u2} A (AddCommMonoid.toAddMonoid.{u2} A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u2} A _inst_3))))) (Module.toMulActionWithZero.{u1, u2} R A (CommSemiring.toSemiring.{u1} R _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u2} A _inst_3)) _inst_4)))) _inst_13) (fun (_x : AlgHom.{u1, max u1 u2, u3} R (Unitization.{u1, u2} R A) C _inst_2 (Unitization.semiring.{u1, u2} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5) (Ring.toSemiring.{u3} C _inst_12) (Unitization.algebra.{u1, u1, u2} R R A _inst_2 _inst_2 _inst_3 _inst_4 _inst_6 _inst_5 (Algebra.id.{u1} R _inst_2) (Module.toDistribMulAction.{u1, u2} R A (CommSemiring.toSemiring.{u1} R _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u2} A _inst_3)) _inst_4) (IsScalarTower.left.{u1, u2} R A (MonoidWithZero.toMonoid.{u1} R (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R _inst_2))) (MulActionWithZero.toMulAction.{u1, u2} R A (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R _inst_2)) (AddZeroClass.toHasZero.{u2} A (AddMonoid.toAddZeroClass.{u2} A (AddCommMonoid.toAddMonoid.{u2} A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u2} A _inst_3))))) (Module.toMulActionWithZero.{u1, u2} R A (CommSemiring.toSemiring.{u1} R _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u2} A _inst_3)) _inst_4)))) _inst_13) => (Unitization.{u1, u2} R A) -> C) ([anonymous].{u1, max u1 u2, u3} R (Unitization.{u1, u2} R A) C _inst_2 (Unitization.semiring.{u1, u2} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5) (Ring.toSemiring.{u3} C _inst_12) (Unitization.algebra.{u1, u1, u2} R R A _inst_2 _inst_2 _inst_3 _inst_4 _inst_6 _inst_5 (Algebra.id.{u1} R _inst_2) (Module.toDistribMulAction.{u1, u2} R A (CommSemiring.toSemiring.{u1} R _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u2} A _inst_3)) _inst_4) (IsScalarTower.left.{u1, u2} R A (MonoidWithZero.toMonoid.{u1} R (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R _inst_2))) (MulActionWithZero.toMulAction.{u1, u2} R A (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R _inst_2)) (AddZeroClass.toHasZero.{u2} A (AddMonoid.toAddZeroClass.{u2} A (AddCommMonoid.toAddMonoid.{u2} A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u2} A _inst_3))))) (Module.toMulActionWithZero.{u1, u2} R A (CommSemiring.toSemiring.{u1} R _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u2} A _inst_3)) _inst_4)))) _inst_13) φ ((fun (a : Type.{u2}) (b : Sort.{max (succ u1) (succ u2)}) [self : HasLiftT.{succ u2, max (succ u1) (succ u2)} a b] => self.0) A (Unitization.{u1, u2} R A) (HasLiftT.mk.{succ u2, max (succ u1) (succ u2)} A (Unitization.{u1, u2} R A) (CoeTCₓ.coe.{succ u2, max (succ u1) (succ u2)} A (Unitization.{u1, u2} R A) (Unitization.hasCoeT.{u1, u2} R A (MulZeroClass.toHasZero.{u1} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R _inst_2)))))))) a))
 but is expected to have type
-  forall {R : Type.{u1}} {A : Type.{u2}} [_inst_2 : CommSemiring.{u1} R] [_inst_3 : NonUnitalSemiring.{u2} A] [_inst_4 : Module.{u1, u2} R A (CommSemiring.toSemiring.{u1} R _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u2} A _inst_3))] [_inst_5 : SMulCommClass.{u1, u2, u2} R A A (SMulZeroClass.toSMul.{u1, u2} R A (SemigroupWithZero.toZero.{u2} A (NonUnitalSemiring.toSemigroupWithZero.{u2} A _inst_3)) (SMulWithZero.toSMulZeroClass.{u1, u2} R A (CommMonoidWithZero.toZero.{u1} R (CommSemiring.toCommMonoidWithZero.{u1} R _inst_2)) (SemigroupWithZero.toZero.{u2} A (NonUnitalSemiring.toSemigroupWithZero.{u2} A _inst_3)) (MulActionWithZero.toSMulWithZero.{u1, u2} R A (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R _inst_2)) (SemigroupWithZero.toZero.{u2} A (NonUnitalSemiring.toSemigroupWithZero.{u2} A _inst_3)) (Module.toMulActionWithZero.{u1, u2} R A (CommSemiring.toSemiring.{u1} R _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u2} A _inst_3)) _inst_4)))) (SMulZeroClass.toSMul.{u2, u2} A A (SemigroupWithZero.toZero.{u2} A (NonUnitalSemiring.toSemigroupWithZero.{u2} A _inst_3)) (SMulWithZero.toSMulZeroClass.{u2, u2} A A (SemigroupWithZero.toZero.{u2} A (NonUnitalSemiring.toSemigroupWithZero.{u2} A _inst_3)) (SemigroupWithZero.toZero.{u2} A (NonUnitalSemiring.toSemigroupWithZero.{u2} A _inst_3)) (MulZeroClass.toSMulWithZero.{u2} A (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u2} A _inst_3)))))] [_inst_6 : IsScalarTower.{u1, u2, u2} R A A (SMulZeroClass.toSMul.{u1, u2} R A (SemigroupWithZero.toZero.{u2} A (NonUnitalSemiring.toSemigroupWithZero.{u2} A _inst_3)) (SMulWithZero.toSMulZeroClass.{u1, u2} R A (CommMonoidWithZero.toZero.{u1} R (CommSemiring.toCommMonoidWithZero.{u1} R _inst_2)) (SemigroupWithZero.toZero.{u2} A (NonUnitalSemiring.toSemigroupWithZero.{u2} A _inst_3)) (MulActionWithZero.toSMulWithZero.{u1, u2} R A (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R _inst_2)) (SemigroupWithZero.toZero.{u2} A (NonUnitalSemiring.toSemigroupWithZero.{u2} A _inst_3)) (Module.toMulActionWithZero.{u1, u2} R A (CommSemiring.toSemiring.{u1} R _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u2} A _inst_3)) _inst_4)))) (SMulZeroClass.toSMul.{u2, u2} A A (SemigroupWithZero.toZero.{u2} A (NonUnitalSemiring.toSemigroupWithZero.{u2} A _inst_3)) (SMulWithZero.toSMulZeroClass.{u2, u2} A A (SemigroupWithZero.toZero.{u2} A (NonUnitalSemiring.toSemigroupWithZero.{u2} A _inst_3)) (SemigroupWithZero.toZero.{u2} A (NonUnitalSemiring.toSemigroupWithZero.{u2} A _inst_3)) (MulZeroClass.toSMulWithZero.{u2} A (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u2} A _inst_3))))) (SMulZeroClass.toSMul.{u1, u2} R A (SemigroupWithZero.toZero.{u2} A (NonUnitalSemiring.toSemigroupWithZero.{u2} A _inst_3)) (SMulWithZero.toSMulZeroClass.{u1, u2} R A (CommMonoidWithZero.toZero.{u1} R (CommSemiring.toCommMonoidWithZero.{u1} R _inst_2)) (SemigroupWithZero.toZero.{u2} A (NonUnitalSemiring.toSemigroupWithZero.{u2} A _inst_3)) (MulActionWithZero.toSMulWithZero.{u1, u2} R A (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R _inst_2)) (SemigroupWithZero.toZero.{u2} A (NonUnitalSemiring.toSemigroupWithZero.{u2} A _inst_3)) (Module.toMulActionWithZero.{u1, u2} R A (CommSemiring.toSemiring.{u1} R _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u2} A _inst_3)) _inst_4))))] {C : Type.{u3}} [_inst_12 : Semiring.{u3} C] [_inst_13 : Algebra.{u1, u3} R C _inst_2 _inst_12] (φ : AlgHom.{u1, max u2 u1, u3} R (Unitization.{u1, u2} R A) C _inst_2 (Unitization.semiring.{u1, u2} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5) _inst_12 (Unitization.algebra.{u1, u1, u2} R R A _inst_2 _inst_2 _inst_3 _inst_4 _inst_6 _inst_5 (Algebra.id.{u1} R _inst_2) (Module.toDistribMulAction.{u1, u2} R A (CommSemiring.toSemiring.{u1} R _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u2} A _inst_3)) _inst_4) (Unitization.lift.proof_1.{u1, u2} R A _inst_2 _inst_3 _inst_4)) _inst_13), Eq.{max (succ u2) (succ u3)} (NonUnitalAlgHom.{u1, u2, u3} R A C (MonoidWithZero.toMonoid.{u1} R (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R _inst_2))) (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u2} A _inst_3) (Module.toDistribMulAction.{u1, u2} R A (CommSemiring.toSemiring.{u1} R _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u2} A _inst_3)) _inst_4) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} C (Semiring.toNonAssocSemiring.{u3} C _inst_12)) (Module.toDistribMulAction.{u1, u3} R C (CommSemiring.toSemiring.{u1} R _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} C (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} C (Semiring.toNonAssocSemiring.{u3} C _inst_12))) (Algebra.toModule.{u1, u3} R C _inst_2 _inst_12 _inst_13))) (FunLike.coe.{max (max 1 (succ u3) (succ u2)) (succ u3) (succ (max u2 u1)), max (succ u3) (succ (max u2 u1)), max (succ u3) (succ u2)} (Equiv.{max (succ u3) (succ (max u2 u1)), max (succ u3) (succ u2)} (AlgHom.{u1, max u2 u1, u3} R (Unitization.{u1, u2} R A) C _inst_2 (Unitization.semiring.{u1, u2} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5) _inst_12 (Unitization.algebra.{u1, u1, u2} R R A _inst_2 _inst_2 _inst_3 _inst_4 _inst_6 _inst_5 (Algebra.id.{u1} R _inst_2) (Module.toDistribMulAction.{u1, u2} R A (CommSemiring.toSemiring.{u1} R _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u2} A _inst_3)) _inst_4) (IsScalarTower.left.{u1, u2} R A (MonoidWithZero.toMonoid.{u1} R (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R _inst_2))) (MulActionWithZero.toMulAction.{u1, u2} R A (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R _inst_2)) (SemigroupWithZero.toZero.{u2} A (NonUnitalSemiring.toSemigroupWithZero.{u2} A _inst_3)) (Module.toMulActionWithZero.{u1, u2} R A (CommSemiring.toSemiring.{u1} R _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u2} A _inst_3)) _inst_4)))) _inst_13) (NonUnitalAlgHom.{u1, u2, u3} R A C (MonoidWithZero.toMonoid.{u1} R (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R _inst_2))) (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u2} A _inst_3) (Module.toDistribMulAction.{u1, u2} R A (CommSemiring.toSemiring.{u1} R _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u2} A _inst_3)) _inst_4) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} C (Semiring.toNonAssocSemiring.{u3} C _inst_12)) (Module.toDistribMulAction.{u1, u3} R C (CommSemiring.toSemiring.{u1} R _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} C (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} C (Semiring.toNonAssocSemiring.{u3} C _inst_12))) (Algebra.toModule.{u1, u3} R C _inst_2 _inst_12 _inst_13)))) (AlgHom.{u1, max u2 u1, u3} R (Unitization.{u1, u2} R A) C _inst_2 (Unitization.semiring.{u1, u2} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5) _inst_12 (Unitization.algebra.{u1, u1, u2} R R A _inst_2 _inst_2 _inst_3 _inst_4 _inst_6 _inst_5 (Algebra.id.{u1} R _inst_2) (Module.toDistribMulAction.{u1, u2} R A (CommSemiring.toSemiring.{u1} R _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u2} A _inst_3)) _inst_4) (IsScalarTower.left.{u1, u2} R A (MonoidWithZero.toMonoid.{u1} R (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R _inst_2))) (MulActionWithZero.toMulAction.{u1, u2} R A (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R _inst_2)) (SemigroupWithZero.toZero.{u2} A (NonUnitalSemiring.toSemigroupWithZero.{u2} A _inst_3)) (Module.toMulActionWithZero.{u1, u2} R A (CommSemiring.toSemiring.{u1} R _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u2} A _inst_3)) _inst_4)))) _inst_13) (fun (a : AlgHom.{u1, max u2 u1, u3} R (Unitization.{u1, u2} R A) C _inst_2 (Unitization.semiring.{u1, u2} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5) _inst_12 (Unitization.algebra.{u1, u1, u2} R R A _inst_2 _inst_2 _inst_3 _inst_4 _inst_6 _inst_5 (Algebra.id.{u1} R _inst_2) (Module.toDistribMulAction.{u1, u2} R A (CommSemiring.toSemiring.{u1} R _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u2} A _inst_3)) _inst_4) (IsScalarTower.left.{u1, u2} R A (MonoidWithZero.toMonoid.{u1} R (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R _inst_2))) (MulActionWithZero.toMulAction.{u1, u2} R A (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R _inst_2)) (SemigroupWithZero.toZero.{u2} A (NonUnitalSemiring.toSemigroupWithZero.{u2} A _inst_3)) (Module.toMulActionWithZero.{u1, u2} R A (CommSemiring.toSemiring.{u1} R _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u2} A _inst_3)) _inst_4)))) _inst_13) => (fun (x._@.Mathlib.Logic.Equiv.Defs._hyg.808 : AlgHom.{u1, max u2 u1, u3} R (Unitization.{u1, u2} R A) C _inst_2 (Unitization.semiring.{u1, u2} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5) _inst_12 (Unitization.algebra.{u1, u1, u2} R R A _inst_2 _inst_2 _inst_3 _inst_4 _inst_6 _inst_5 (Algebra.id.{u1} R _inst_2) (Module.toDistribMulAction.{u1, u2} R A (CommSemiring.toSemiring.{u1} R _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u2} A _inst_3)) _inst_4) (IsScalarTower.left.{u1, u2} R A (MonoidWithZero.toMonoid.{u1} R (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R _inst_2))) (MulActionWithZero.toMulAction.{u1, u2} R A (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R _inst_2)) (SemigroupWithZero.toZero.{u2} A (NonUnitalSemiring.toSemigroupWithZero.{u2} A _inst_3)) (Module.toMulActionWithZero.{u1, u2} R A (CommSemiring.toSemiring.{u1} R _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u2} A _inst_3)) _inst_4)))) _inst_13) => NonUnitalAlgHom.{u1, u2, u3} R A C (MonoidWithZero.toMonoid.{u1} R (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R _inst_2))) (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u2} A _inst_3) (Module.toDistribMulAction.{u1, u2} R A (CommSemiring.toSemiring.{u1} R _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u2} A _inst_3)) _inst_4) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} C (Semiring.toNonAssocSemiring.{u3} C _inst_12)) (Module.toDistribMulAction.{u1, u3} R C (CommSemiring.toSemiring.{u1} R _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} C (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} C (Semiring.toNonAssocSemiring.{u3} C _inst_12))) (Algebra.toModule.{u1, u3} R C _inst_2 _inst_12 _inst_13))) a) (Equiv.instFunLikeEquiv.{max (succ u3) (succ (max u2 u1)), max (succ u3) (succ u2)} (AlgHom.{u1, max u2 u1, u3} R (Unitization.{u1, u2} R A) C _inst_2 (Unitization.semiring.{u1, u2} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5) _inst_12 (Unitization.algebra.{u1, u1, u2} R R A _inst_2 _inst_2 _inst_3 _inst_4 _inst_6 _inst_5 (Algebra.id.{u1} R _inst_2) (Module.toDistribMulAction.{u1, u2} R A (CommSemiring.toSemiring.{u1} R _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u2} A _inst_3)) _inst_4) (IsScalarTower.left.{u1, u2} R A (MonoidWithZero.toMonoid.{u1} R (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R _inst_2))) (MulActionWithZero.toMulAction.{u1, u2} R A (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R _inst_2)) (SemigroupWithZero.toZero.{u2} A (NonUnitalSemiring.toSemigroupWithZero.{u2} A _inst_3)) (Module.toMulActionWithZero.{u1, u2} R A (CommSemiring.toSemiring.{u1} R _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u2} A _inst_3)) _inst_4)))) _inst_13) (NonUnitalAlgHom.{u1, u2, u3} R A C (MonoidWithZero.toMonoid.{u1} R (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R _inst_2))) (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u2} A _inst_3) (Module.toDistribMulAction.{u1, u2} R A (CommSemiring.toSemiring.{u1} R _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u2} A _inst_3)) _inst_4) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} C (Semiring.toNonAssocSemiring.{u3} C _inst_12)) (Module.toDistribMulAction.{u1, u3} R C (CommSemiring.toSemiring.{u1} R _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} C (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} C (Semiring.toNonAssocSemiring.{u3} C _inst_12))) (Algebra.toModule.{u1, u3} R C _inst_2 _inst_12 _inst_13)))) (Equiv.symm.{max (succ u3) (succ u2), max (succ u3) (succ (max u2 u1))} (NonUnitalAlgHom.{u1, u2, u3} R A C (MonoidWithZero.toMonoid.{u1} R (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R _inst_2))) (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u2} A _inst_3) (Module.toDistribMulAction.{u1, u2} R A (CommSemiring.toSemiring.{u1} R _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u2} A _inst_3)) _inst_4) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} C (Semiring.toNonAssocSemiring.{u3} C _inst_12)) (Module.toDistribMulAction.{u1, u3} R C (CommSemiring.toSemiring.{u1} R _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} C (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} C (Semiring.toNonAssocSemiring.{u3} C _inst_12))) (Algebra.toModule.{u1, u3} R C _inst_2 _inst_12 _inst_13))) (AlgHom.{u1, max u2 u1, u3} R (Unitization.{u1, u2} R A) C _inst_2 (Unitization.semiring.{u1, u2} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5) _inst_12 (Unitization.algebra.{u1, u1, u2} R R A _inst_2 _inst_2 _inst_3 _inst_4 _inst_6 _inst_5 (Algebra.id.{u1} R _inst_2) (Module.toDistribMulAction.{u1, u2} R A (CommSemiring.toSemiring.{u1} R _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u2} A _inst_3)) _inst_4) (IsScalarTower.left.{u1, u2} R A (MonoidWithZero.toMonoid.{u1} R (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R _inst_2))) (MulActionWithZero.toMulAction.{u1, u2} R A (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R _inst_2)) (SemigroupWithZero.toZero.{u2} A (NonUnitalSemiring.toSemigroupWithZero.{u2} A _inst_3)) (Module.toMulActionWithZero.{u1, u2} R A (CommSemiring.toSemiring.{u1} R _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u2} A _inst_3)) _inst_4)))) _inst_13) (Unitization.lift.{u1, u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_5 _inst_6 C _inst_12 _inst_13)) φ) (NonUnitalAlgHom.comp.{u1, u2, max u1 u2, u3} R A (Unitization.{u1, u2} R A) C (MonoidWithZero.toMonoid.{u1} R (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R _inst_2))) (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u2} A _inst_3) (Module.toDistribMulAction.{u1, u2} R A (CommSemiring.toSemiring.{u1} R _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u2} A _inst_3)) _inst_4) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{max u1 u2} (Unitization.{u1, u2} R A) (Semiring.toNonAssocSemiring.{max u1 u2} (Unitization.{u1, u2} R A) (Unitization.semiring.{u1, u2} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5))) (Module.toDistribMulAction.{u1, max u1 u2} R (Unitization.{u1, u2} R A) (CommSemiring.toSemiring.{u1} R _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{max u1 u2} (Unitization.{u1, u2} R A) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{max u1 u2} (Unitization.{u1, u2} R A) (Semiring.toNonAssocSemiring.{max u1 u2} (Unitization.{u1, u2} R A) (Unitization.semiring.{u1, u2} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5)))) (Algebra.toModule.{u1, max u1 u2} R (Unitization.{u1, u2} R A) _inst_2 (Unitization.semiring.{u1, u2} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5) (Unitization.algebra.{u1, u1, u2} R R A _inst_2 _inst_2 _inst_3 _inst_4 _inst_6 _inst_5 (Algebra.id.{u1} R _inst_2) (Module.toDistribMulAction.{u1, u2} R A (CommSemiring.toSemiring.{u1} R _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u2} A _inst_3)) _inst_4) (Unitization.lift.proof_1.{u1, u2} R A _inst_2 _inst_3 _inst_4)))) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} C (Semiring.toNonAssocSemiring.{u3} C _inst_12)) (Module.toDistribMulAction.{u1, u3} R C (CommSemiring.toSemiring.{u1} R _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} C (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} C (Semiring.toNonAssocSemiring.{u3} C _inst_12))) (Algebra.toModule.{u1, u3} R C _inst_2 _inst_12 _inst_13)) (AlgHom.toNonUnitalAlgHom.{u1, max u1 u2, u3} R (Unitization.{u1, u2} R A) C _inst_2 (Unitization.semiring.{u1, u2} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5) _inst_12 (Unitization.algebra.{u1, u1, u2} R R A _inst_2 _inst_2 _inst_3 _inst_4 _inst_6 _inst_5 (Algebra.id.{u1} R _inst_2) (Module.toDistribMulAction.{u1, u2} R A (CommSemiring.toSemiring.{u1} R _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u2} A _inst_3)) _inst_4) (Unitization.lift.proof_1.{u1, u2} R A _inst_2 _inst_3 _inst_4)) _inst_13 φ) (Unitization.inrNonUnitalAlgHom.{u1, u2} R A _inst_2 _inst_3 _inst_4))
+  forall {R : Type.{u1}} {A : Type.{u2}} [_inst_2 : CommSemiring.{u1} R] [_inst_3 : NonUnitalSemiring.{u2} A] [_inst_4 : Module.{u1, u2} R A (CommSemiring.toSemiring.{u1} R _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u2} A _inst_3))] [_inst_5 : SMulCommClass.{u1, u2, u2} R A A (SMulZeroClass.toSMul.{u1, u2} R A (SemigroupWithZero.toZero.{u2} A (NonUnitalSemiring.toSemigroupWithZero.{u2} A _inst_3)) (SMulWithZero.toSMulZeroClass.{u1, u2} R A (CommMonoidWithZero.toZero.{u1} R (CommSemiring.toCommMonoidWithZero.{u1} R _inst_2)) (SemigroupWithZero.toZero.{u2} A (NonUnitalSemiring.toSemigroupWithZero.{u2} A _inst_3)) (MulActionWithZero.toSMulWithZero.{u1, u2} R A (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R _inst_2)) (SemigroupWithZero.toZero.{u2} A (NonUnitalSemiring.toSemigroupWithZero.{u2} A _inst_3)) (Module.toMulActionWithZero.{u1, u2} R A (CommSemiring.toSemiring.{u1} R _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u2} A _inst_3)) _inst_4)))) (SMulZeroClass.toSMul.{u2, u2} A A (SemigroupWithZero.toZero.{u2} A (NonUnitalSemiring.toSemigroupWithZero.{u2} A _inst_3)) (SMulWithZero.toSMulZeroClass.{u2, u2} A A (SemigroupWithZero.toZero.{u2} A (NonUnitalSemiring.toSemigroupWithZero.{u2} A _inst_3)) (SemigroupWithZero.toZero.{u2} A (NonUnitalSemiring.toSemigroupWithZero.{u2} A _inst_3)) (MulZeroClass.toSMulWithZero.{u2} A (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u2} A _inst_3)))))] [_inst_6 : IsScalarTower.{u1, u2, u2} R A A (SMulZeroClass.toSMul.{u1, u2} R A (SemigroupWithZero.toZero.{u2} A (NonUnitalSemiring.toSemigroupWithZero.{u2} A _inst_3)) (SMulWithZero.toSMulZeroClass.{u1, u2} R A (CommMonoidWithZero.toZero.{u1} R (CommSemiring.toCommMonoidWithZero.{u1} R _inst_2)) (SemigroupWithZero.toZero.{u2} A (NonUnitalSemiring.toSemigroupWithZero.{u2} A _inst_3)) (MulActionWithZero.toSMulWithZero.{u1, u2} R A (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R _inst_2)) (SemigroupWithZero.toZero.{u2} A (NonUnitalSemiring.toSemigroupWithZero.{u2} A _inst_3)) (Module.toMulActionWithZero.{u1, u2} R A (CommSemiring.toSemiring.{u1} R _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u2} A _inst_3)) _inst_4)))) (SMulZeroClass.toSMul.{u2, u2} A A (SemigroupWithZero.toZero.{u2} A (NonUnitalSemiring.toSemigroupWithZero.{u2} A _inst_3)) (SMulWithZero.toSMulZeroClass.{u2, u2} A A (SemigroupWithZero.toZero.{u2} A (NonUnitalSemiring.toSemigroupWithZero.{u2} A _inst_3)) (SemigroupWithZero.toZero.{u2} A (NonUnitalSemiring.toSemigroupWithZero.{u2} A _inst_3)) (MulZeroClass.toSMulWithZero.{u2} A (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u2} A _inst_3))))) (SMulZeroClass.toSMul.{u1, u2} R A (SemigroupWithZero.toZero.{u2} A (NonUnitalSemiring.toSemigroupWithZero.{u2} A _inst_3)) (SMulWithZero.toSMulZeroClass.{u1, u2} R A (CommMonoidWithZero.toZero.{u1} R (CommSemiring.toCommMonoidWithZero.{u1} R _inst_2)) (SemigroupWithZero.toZero.{u2} A (NonUnitalSemiring.toSemigroupWithZero.{u2} A _inst_3)) (MulActionWithZero.toSMulWithZero.{u1, u2} R A (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R _inst_2)) (SemigroupWithZero.toZero.{u2} A (NonUnitalSemiring.toSemigroupWithZero.{u2} A _inst_3)) (Module.toMulActionWithZero.{u1, u2} R A (CommSemiring.toSemiring.{u1} R _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u2} A _inst_3)) _inst_4))))] {C : Type.{u3}} [_inst_12 : Semiring.{u3} C] [_inst_13 : Algebra.{u1, u3} R C _inst_2 _inst_12] (φ : AlgHom.{u1, max u2 u1, u3} R (Unitization.{u1, u2} R A) C _inst_2 (Unitization.semiring.{u1, u2} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5) _inst_12 (Unitization.algebra.{u1, u1, u2} R R A _inst_2 _inst_2 _inst_3 _inst_4 _inst_6 _inst_5 (Algebra.id.{u1} R _inst_2) (Module.toDistribMulAction.{u1, u2} R A (CommSemiring.toSemiring.{u1} R _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u2} A _inst_3)) _inst_4) (Unitization.lift.proof_1.{u1, u2} R A _inst_2 _inst_3 _inst_4)) _inst_13), Eq.{max (succ u2) (succ u3)} (NonUnitalAlgHom.{u1, u2, u3} R A C (MonoidWithZero.toMonoid.{u1} R (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R _inst_2))) (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u2} A _inst_3) (Module.toDistribMulAction.{u1, u2} R A (CommSemiring.toSemiring.{u1} R _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u2} A _inst_3)) _inst_4) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} C (Semiring.toNonAssocSemiring.{u3} C _inst_12)) (Module.toDistribMulAction.{u1, u3} R C (CommSemiring.toSemiring.{u1} R _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} C (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} C (Semiring.toNonAssocSemiring.{u3} C _inst_12))) (Algebra.toModule.{u1, u3} R C _inst_2 _inst_12 _inst_13))) (FunLike.coe.{max (max 1 (succ u3) (succ u2)) (succ u3) (succ (max u2 u1)), max (succ u3) (succ (max u2 u1)), max (succ u3) (succ u2)} (Equiv.{max (succ u3) (succ (max u2 u1)), max (succ u3) (succ u2)} (AlgHom.{u1, max u2 u1, u3} R (Unitization.{u1, u2} R A) C _inst_2 (Unitization.semiring.{u1, u2} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5) _inst_12 (Unitization.algebra.{u1, u1, u2} R R A _inst_2 _inst_2 _inst_3 _inst_4 _inst_6 _inst_5 (Algebra.id.{u1} R _inst_2) (Module.toDistribMulAction.{u1, u2} R A (CommSemiring.toSemiring.{u1} R _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u2} A _inst_3)) _inst_4) (IsScalarTower.left.{u1, u2} R A (MonoidWithZero.toMonoid.{u1} R (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R _inst_2))) (MulActionWithZero.toMulAction.{u1, u2} R A (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R _inst_2)) (SemigroupWithZero.toZero.{u2} A (NonUnitalSemiring.toSemigroupWithZero.{u2} A _inst_3)) (Module.toMulActionWithZero.{u1, u2} R A (CommSemiring.toSemiring.{u1} R _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u2} A _inst_3)) _inst_4)))) _inst_13) (NonUnitalAlgHom.{u1, u2, u3} R A C (MonoidWithZero.toMonoid.{u1} R (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R _inst_2))) (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u2} A _inst_3) (Module.toDistribMulAction.{u1, u2} R A (CommSemiring.toSemiring.{u1} R _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u2} A _inst_3)) _inst_4) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} C (Semiring.toNonAssocSemiring.{u3} C _inst_12)) (Module.toDistribMulAction.{u1, u3} R C (CommSemiring.toSemiring.{u1} R _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} C (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} C (Semiring.toNonAssocSemiring.{u3} C _inst_12))) (Algebra.toModule.{u1, u3} R C _inst_2 _inst_12 _inst_13)))) (AlgHom.{u1, max u2 u1, u3} R (Unitization.{u1, u2} R A) C _inst_2 (Unitization.semiring.{u1, u2} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5) _inst_12 (Unitization.algebra.{u1, u1, u2} R R A _inst_2 _inst_2 _inst_3 _inst_4 _inst_6 _inst_5 (Algebra.id.{u1} R _inst_2) (Module.toDistribMulAction.{u1, u2} R A (CommSemiring.toSemiring.{u1} R _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u2} A _inst_3)) _inst_4) (IsScalarTower.left.{u1, u2} R A (MonoidWithZero.toMonoid.{u1} R (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R _inst_2))) (MulActionWithZero.toMulAction.{u1, u2} R A (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R _inst_2)) (SemigroupWithZero.toZero.{u2} A (NonUnitalSemiring.toSemigroupWithZero.{u2} A _inst_3)) (Module.toMulActionWithZero.{u1, u2} R A (CommSemiring.toSemiring.{u1} R _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u2} A _inst_3)) _inst_4)))) _inst_13) (fun (a : AlgHom.{u1, max u2 u1, u3} R (Unitization.{u1, u2} R A) C _inst_2 (Unitization.semiring.{u1, u2} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5) _inst_12 (Unitization.algebra.{u1, u1, u2} R R A _inst_2 _inst_2 _inst_3 _inst_4 _inst_6 _inst_5 (Algebra.id.{u1} R _inst_2) (Module.toDistribMulAction.{u1, u2} R A (CommSemiring.toSemiring.{u1} R _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u2} A _inst_3)) _inst_4) (IsScalarTower.left.{u1, u2} R A (MonoidWithZero.toMonoid.{u1} R (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R _inst_2))) (MulActionWithZero.toMulAction.{u1, u2} R A (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R _inst_2)) (SemigroupWithZero.toZero.{u2} A (NonUnitalSemiring.toSemigroupWithZero.{u2} A _inst_3)) (Module.toMulActionWithZero.{u1, u2} R A (CommSemiring.toSemiring.{u1} R _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u2} A _inst_3)) _inst_4)))) _inst_13) => (fun (x._@.Mathlib.Logic.Equiv.Defs._hyg.812 : AlgHom.{u1, max u2 u1, u3} R (Unitization.{u1, u2} R A) C _inst_2 (Unitization.semiring.{u1, u2} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5) _inst_12 (Unitization.algebra.{u1, u1, u2} R R A _inst_2 _inst_2 _inst_3 _inst_4 _inst_6 _inst_5 (Algebra.id.{u1} R _inst_2) (Module.toDistribMulAction.{u1, u2} R A (CommSemiring.toSemiring.{u1} R _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u2} A _inst_3)) _inst_4) (IsScalarTower.left.{u1, u2} R A (MonoidWithZero.toMonoid.{u1} R (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R _inst_2))) (MulActionWithZero.toMulAction.{u1, u2} R A (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R _inst_2)) (SemigroupWithZero.toZero.{u2} A (NonUnitalSemiring.toSemigroupWithZero.{u2} A _inst_3)) (Module.toMulActionWithZero.{u1, u2} R A (CommSemiring.toSemiring.{u1} R _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u2} A _inst_3)) _inst_4)))) _inst_13) => NonUnitalAlgHom.{u1, u2, u3} R A C (MonoidWithZero.toMonoid.{u1} R (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R _inst_2))) (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u2} A _inst_3) (Module.toDistribMulAction.{u1, u2} R A (CommSemiring.toSemiring.{u1} R _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u2} A _inst_3)) _inst_4) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} C (Semiring.toNonAssocSemiring.{u3} C _inst_12)) (Module.toDistribMulAction.{u1, u3} R C (CommSemiring.toSemiring.{u1} R _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} C (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} C (Semiring.toNonAssocSemiring.{u3} C _inst_12))) (Algebra.toModule.{u1, u3} R C _inst_2 _inst_12 _inst_13))) a) (Equiv.instFunLikeEquiv.{max (succ u3) (succ (max u2 u1)), max (succ u3) (succ u2)} (AlgHom.{u1, max u2 u1, u3} R (Unitization.{u1, u2} R A) C _inst_2 (Unitization.semiring.{u1, u2} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5) _inst_12 (Unitization.algebra.{u1, u1, u2} R R A _inst_2 _inst_2 _inst_3 _inst_4 _inst_6 _inst_5 (Algebra.id.{u1} R _inst_2) (Module.toDistribMulAction.{u1, u2} R A (CommSemiring.toSemiring.{u1} R _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u2} A _inst_3)) _inst_4) (IsScalarTower.left.{u1, u2} R A (MonoidWithZero.toMonoid.{u1} R (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R _inst_2))) (MulActionWithZero.toMulAction.{u1, u2} R A (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R _inst_2)) (SemigroupWithZero.toZero.{u2} A (NonUnitalSemiring.toSemigroupWithZero.{u2} A _inst_3)) (Module.toMulActionWithZero.{u1, u2} R A (CommSemiring.toSemiring.{u1} R _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u2} A _inst_3)) _inst_4)))) _inst_13) (NonUnitalAlgHom.{u1, u2, u3} R A C (MonoidWithZero.toMonoid.{u1} R (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R _inst_2))) (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u2} A _inst_3) (Module.toDistribMulAction.{u1, u2} R A (CommSemiring.toSemiring.{u1} R _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u2} A _inst_3)) _inst_4) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} C (Semiring.toNonAssocSemiring.{u3} C _inst_12)) (Module.toDistribMulAction.{u1, u3} R C (CommSemiring.toSemiring.{u1} R _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} C (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} C (Semiring.toNonAssocSemiring.{u3} C _inst_12))) (Algebra.toModule.{u1, u3} R C _inst_2 _inst_12 _inst_13)))) (Equiv.symm.{max (succ u3) (succ u2), max (succ u3) (succ (max u2 u1))} (NonUnitalAlgHom.{u1, u2, u3} R A C (MonoidWithZero.toMonoid.{u1} R (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R _inst_2))) (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u2} A _inst_3) (Module.toDistribMulAction.{u1, u2} R A (CommSemiring.toSemiring.{u1} R _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u2} A _inst_3)) _inst_4) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} C (Semiring.toNonAssocSemiring.{u3} C _inst_12)) (Module.toDistribMulAction.{u1, u3} R C (CommSemiring.toSemiring.{u1} R _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} C (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} C (Semiring.toNonAssocSemiring.{u3} C _inst_12))) (Algebra.toModule.{u1, u3} R C _inst_2 _inst_12 _inst_13))) (AlgHom.{u1, max u2 u1, u3} R (Unitization.{u1, u2} R A) C _inst_2 (Unitization.semiring.{u1, u2} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5) _inst_12 (Unitization.algebra.{u1, u1, u2} R R A _inst_2 _inst_2 _inst_3 _inst_4 _inst_6 _inst_5 (Algebra.id.{u1} R _inst_2) (Module.toDistribMulAction.{u1, u2} R A (CommSemiring.toSemiring.{u1} R _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u2} A _inst_3)) _inst_4) (IsScalarTower.left.{u1, u2} R A (MonoidWithZero.toMonoid.{u1} R (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R _inst_2))) (MulActionWithZero.toMulAction.{u1, u2} R A (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R _inst_2)) (SemigroupWithZero.toZero.{u2} A (NonUnitalSemiring.toSemigroupWithZero.{u2} A _inst_3)) (Module.toMulActionWithZero.{u1, u2} R A (CommSemiring.toSemiring.{u1} R _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u2} A _inst_3)) _inst_4)))) _inst_13) (Unitization.lift.{u1, u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_5 _inst_6 C _inst_12 _inst_13)) φ) (NonUnitalAlgHom.comp.{u1, u2, max u1 u2, u3} R A (Unitization.{u1, u2} R A) C (MonoidWithZero.toMonoid.{u1} R (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R _inst_2))) (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u2} A _inst_3) (Module.toDistribMulAction.{u1, u2} R A (CommSemiring.toSemiring.{u1} R _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u2} A _inst_3)) _inst_4) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{max u1 u2} (Unitization.{u1, u2} R A) (Semiring.toNonAssocSemiring.{max u1 u2} (Unitization.{u1, u2} R A) (Unitization.semiring.{u1, u2} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5))) (Module.toDistribMulAction.{u1, max u1 u2} R (Unitization.{u1, u2} R A) (CommSemiring.toSemiring.{u1} R _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{max u1 u2} (Unitization.{u1, u2} R A) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{max u1 u2} (Unitization.{u1, u2} R A) (Semiring.toNonAssocSemiring.{max u1 u2} (Unitization.{u1, u2} R A) (Unitization.semiring.{u1, u2} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5)))) (Algebra.toModule.{u1, max u1 u2} R (Unitization.{u1, u2} R A) _inst_2 (Unitization.semiring.{u1, u2} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5) (Unitization.algebra.{u1, u1, u2} R R A _inst_2 _inst_2 _inst_3 _inst_4 _inst_6 _inst_5 (Algebra.id.{u1} R _inst_2) (Module.toDistribMulAction.{u1, u2} R A (CommSemiring.toSemiring.{u1} R _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u2} A _inst_3)) _inst_4) (Unitization.lift.proof_1.{u1, u2} R A _inst_2 _inst_3 _inst_4)))) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} C (Semiring.toNonAssocSemiring.{u3} C _inst_12)) (Module.toDistribMulAction.{u1, u3} R C (CommSemiring.toSemiring.{u1} R _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} C (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} C (Semiring.toNonAssocSemiring.{u3} C _inst_12))) (Algebra.toModule.{u1, u3} R C _inst_2 _inst_12 _inst_13)) (AlgHom.toNonUnitalAlgHom.{u1, max u1 u2, u3} R (Unitization.{u1, u2} R A) C _inst_2 (Unitization.semiring.{u1, u2} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5) _inst_12 (Unitization.algebra.{u1, u1, u2} R R A _inst_2 _inst_2 _inst_3 _inst_4 _inst_6 _inst_5 (Algebra.id.{u1} R _inst_2) (Module.toDistribMulAction.{u1, u2} R A (CommSemiring.toSemiring.{u1} R _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u2} A _inst_3)) _inst_4) (Unitization.lift.proof_1.{u1, u2} R A _inst_2 _inst_3 _inst_4)) _inst_13 φ) (Unitization.inrNonUnitalAlgHom.{u1, u2} R A _inst_2 _inst_3 _inst_4))
 Case conversion may be inaccurate. Consider using '#align unitization.lift_symm_apply Unitization.lift_symm_applyₓ'. -/
 theorem lift_symm_apply (φ : Unitization R A →ₐ[R] C) (a : A) : Unitization.lift.symm φ a = φ a :=
   rfl
Diff
@@ -460,7 +460,7 @@ theorem ind {R A} [AddZeroClass R] [AddZeroClass A] {P : Unitization R A → Pro
 lean 3 declaration is
   forall {S : Type.{u1}} {R : Type.{u2}} {A : Type.{u3}} {N : Type.{u4}} [_inst_1 : Semiring.{u1} S] [_inst_2 : AddCommMonoid.{u2} R] [_inst_3 : AddCommMonoid.{u3} A] [_inst_4 : AddCommMonoid.{u4} N] [_inst_5 : Module.{u1, u2} S R _inst_1 _inst_2] [_inst_6 : Module.{u1, u3} S A _inst_1 _inst_3] [_inst_7 : Module.{u1, u4} S N _inst_1 _inst_4] {{f : LinearMap.{u1, u1, max u2 u3, u4} S S _inst_1 _inst_1 (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_1)) (Unitization.{u2, u3} R A) N (Unitization.addCommMonoid.{u2, u3} R A _inst_2 _inst_3) _inst_4 (Unitization.module.{u1, u2, u3} S R A _inst_1 _inst_2 _inst_3 _inst_5 _inst_6) _inst_7}} {{g : LinearMap.{u1, u1, max u2 u3, u4} S S _inst_1 _inst_1 (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_1)) (Unitization.{u2, u3} R A) N (Unitization.addCommMonoid.{u2, u3} R A _inst_2 _inst_3) _inst_4 (Unitization.module.{u1, u2, u3} S R A _inst_1 _inst_2 _inst_3 _inst_5 _inst_6) _inst_7}}, (forall (r : R), Eq.{succ u4} N (coeFn.{max (succ (max u2 u3)) (succ u4), max (succ (max u2 u3)) (succ u4)} (LinearMap.{u1, u1, max u2 u3, u4} S S _inst_1 _inst_1 (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_1)) (Unitization.{u2, u3} R A) N (Unitization.addCommMonoid.{u2, u3} R A _inst_2 _inst_3) _inst_4 (Unitization.module.{u1, u2, u3} S R A _inst_1 _inst_2 _inst_3 _inst_5 _inst_6) _inst_7) (fun (_x : LinearMap.{u1, u1, max u2 u3, u4} S S _inst_1 _inst_1 (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_1)) (Unitization.{u2, u3} R A) N (Unitization.addCommMonoid.{u2, u3} R A _inst_2 _inst_3) _inst_4 (Unitization.module.{u1, u2, u3} S R A _inst_1 _inst_2 _inst_3 _inst_5 _inst_6) _inst_7) => (Unitization.{u2, u3} R A) -> N) (LinearMap.hasCoeToFun.{u1, u1, max u2 u3, u4} S S (Unitization.{u2, u3} R A) N _inst_1 _inst_1 (Unitization.addCommMonoid.{u2, u3} R A _inst_2 _inst_3) _inst_4 (Unitization.module.{u1, u2, u3} S R A _inst_1 _inst_2 _inst_3 _inst_5 _inst_6) _inst_7 (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_1))) f (Unitization.inl.{u2, u3} R A (AddZeroClass.toHasZero.{u3} A (AddMonoid.toAddZeroClass.{u3} A (AddCommMonoid.toAddMonoid.{u3} A _inst_3))) r)) (coeFn.{max (succ (max u2 u3)) (succ u4), max (succ (max u2 u3)) (succ u4)} (LinearMap.{u1, u1, max u2 u3, u4} S S _inst_1 _inst_1 (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_1)) (Unitization.{u2, u3} R A) N (Unitization.addCommMonoid.{u2, u3} R A _inst_2 _inst_3) _inst_4 (Unitization.module.{u1, u2, u3} S R A _inst_1 _inst_2 _inst_3 _inst_5 _inst_6) _inst_7) (fun (_x : LinearMap.{u1, u1, max u2 u3, u4} S S _inst_1 _inst_1 (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_1)) (Unitization.{u2, u3} R A) N (Unitization.addCommMonoid.{u2, u3} R A _inst_2 _inst_3) _inst_4 (Unitization.module.{u1, u2, u3} S R A _inst_1 _inst_2 _inst_3 _inst_5 _inst_6) _inst_7) => (Unitization.{u2, u3} R A) -> N) (LinearMap.hasCoeToFun.{u1, u1, max u2 u3, u4} S S (Unitization.{u2, u3} R A) N _inst_1 _inst_1 (Unitization.addCommMonoid.{u2, u3} R A _inst_2 _inst_3) _inst_4 (Unitization.module.{u1, u2, u3} S R A _inst_1 _inst_2 _inst_3 _inst_5 _inst_6) _inst_7 (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_1))) g (Unitization.inl.{u2, u3} R A (AddZeroClass.toHasZero.{u3} A (AddMonoid.toAddZeroClass.{u3} A (AddCommMonoid.toAddMonoid.{u3} A _inst_3))) r))) -> (forall (a : A), Eq.{succ u4} N (coeFn.{max (succ (max u2 u3)) (succ u4), max (succ (max u2 u3)) (succ u4)} (LinearMap.{u1, u1, max u2 u3, u4} S S _inst_1 _inst_1 (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_1)) (Unitization.{u2, u3} R A) N (Unitization.addCommMonoid.{u2, u3} R A _inst_2 _inst_3) _inst_4 (Unitization.module.{u1, u2, u3} S R A _inst_1 _inst_2 _inst_3 _inst_5 _inst_6) _inst_7) (fun (_x : LinearMap.{u1, u1, max u2 u3, u4} S S _inst_1 _inst_1 (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_1)) (Unitization.{u2, u3} R A) N (Unitization.addCommMonoid.{u2, u3} R A _inst_2 _inst_3) _inst_4 (Unitization.module.{u1, u2, u3} S R A _inst_1 _inst_2 _inst_3 _inst_5 _inst_6) _inst_7) => (Unitization.{u2, u3} R A) -> N) (LinearMap.hasCoeToFun.{u1, u1, max u2 u3, u4} S S (Unitization.{u2, u3} R A) N _inst_1 _inst_1 (Unitization.addCommMonoid.{u2, u3} R A _inst_2 _inst_3) _inst_4 (Unitization.module.{u1, u2, u3} S R A _inst_1 _inst_2 _inst_3 _inst_5 _inst_6) _inst_7 (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_1))) f ((fun (a : Type.{u3}) (b : Sort.{max (succ u2) (succ u3)}) [self : HasLiftT.{succ u3, max (succ u2) (succ u3)} a b] => self.0) A (Unitization.{u2, u3} R A) (HasLiftT.mk.{succ u3, max (succ u2) (succ u3)} A (Unitization.{u2, u3} R A) (CoeTCₓ.coe.{succ u3, max (succ u2) (succ u3)} A (Unitization.{u2, u3} R A) (Unitization.hasCoeT.{u2, u3} R A (AddZeroClass.toHasZero.{u2} R (AddMonoid.toAddZeroClass.{u2} R (AddCommMonoid.toAddMonoid.{u2} R _inst_2)))))) a)) (coeFn.{max (succ (max u2 u3)) (succ u4), max (succ (max u2 u3)) (succ u4)} (LinearMap.{u1, u1, max u2 u3, u4} S S _inst_1 _inst_1 (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_1)) (Unitization.{u2, u3} R A) N (Unitization.addCommMonoid.{u2, u3} R A _inst_2 _inst_3) _inst_4 (Unitization.module.{u1, u2, u3} S R A _inst_1 _inst_2 _inst_3 _inst_5 _inst_6) _inst_7) (fun (_x : LinearMap.{u1, u1, max u2 u3, u4} S S _inst_1 _inst_1 (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_1)) (Unitization.{u2, u3} R A) N (Unitization.addCommMonoid.{u2, u3} R A _inst_2 _inst_3) _inst_4 (Unitization.module.{u1, u2, u3} S R A _inst_1 _inst_2 _inst_3 _inst_5 _inst_6) _inst_7) => (Unitization.{u2, u3} R A) -> N) (LinearMap.hasCoeToFun.{u1, u1, max u2 u3, u4} S S (Unitization.{u2, u3} R A) N _inst_1 _inst_1 (Unitization.addCommMonoid.{u2, u3} R A _inst_2 _inst_3) _inst_4 (Unitization.module.{u1, u2, u3} S R A _inst_1 _inst_2 _inst_3 _inst_5 _inst_6) _inst_7 (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_1))) g ((fun (a : Type.{u3}) (b : Sort.{max (succ u2) (succ u3)}) [self : HasLiftT.{succ u3, max (succ u2) (succ u3)} a b] => self.0) A (Unitization.{u2, u3} R A) (HasLiftT.mk.{succ u3, max (succ u2) (succ u3)} A (Unitization.{u2, u3} R A) (CoeTCₓ.coe.{succ u3, max (succ u2) (succ u3)} A (Unitization.{u2, u3} R A) (Unitization.hasCoeT.{u2, u3} R A (AddZeroClass.toHasZero.{u2} R (AddMonoid.toAddZeroClass.{u2} R (AddCommMonoid.toAddMonoid.{u2} R _inst_2)))))) a))) -> (Eq.{max (succ (max u2 u3)) (succ u4)} (LinearMap.{u1, u1, max u2 u3, u4} S S _inst_1 _inst_1 (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_1)) (Unitization.{u2, u3} R A) N (Unitization.addCommMonoid.{u2, u3} R A _inst_2 _inst_3) _inst_4 (Unitization.module.{u1, u2, u3} S R A _inst_1 _inst_2 _inst_3 _inst_5 _inst_6) _inst_7) f g)
 but is expected to have type
-  forall {S : Type.{u3}} {R : Type.{u2}} {A : Type.{u1}} {N : Type.{u4}} [_inst_1 : Semiring.{u3} S] [_inst_2 : AddCommMonoid.{u2} R] [_inst_3 : AddCommMonoid.{u1} A] [_inst_4 : AddCommMonoid.{u4} N] [_inst_5 : Module.{u3, u2} S R _inst_1 _inst_2] [_inst_6 : Module.{u3, u1} S A _inst_1 _inst_3] [_inst_7 : Module.{u3, u4} S N _inst_1 _inst_4] {{f : LinearMap.{u3, u3, max u1 u2, u4} S S _inst_1 _inst_1 (RingHom.id.{u3} S (Semiring.toNonAssocSemiring.{u3} S _inst_1)) (Unitization.{u2, u1} R A) N (Unitization.addCommMonoid.{u2, u1} R A _inst_2 _inst_3) _inst_4 (Unitization.module.{u3, u2, u1} S R A _inst_1 _inst_2 _inst_3 _inst_5 _inst_6) _inst_7}} {{g : LinearMap.{u3, u3, max u1 u2, u4} S S _inst_1 _inst_1 (RingHom.id.{u3} S (Semiring.toNonAssocSemiring.{u3} S _inst_1)) (Unitization.{u2, u1} R A) N (Unitization.addCommMonoid.{u2, u1} R A _inst_2 _inst_3) _inst_4 (Unitization.module.{u3, u2, u1} S R A _inst_1 _inst_2 _inst_3 _inst_5 _inst_6) _inst_7}}, (forall (r : R), Eq.{succ u4} ((fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6190 : Unitization.{u2, u1} R A) => N) (Unitization.inl.{u2, u1} R A (AddMonoid.toZero.{u1} A (AddCommMonoid.toAddMonoid.{u1} A _inst_3)) r)) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u4), max (succ u2) (succ u1), succ u4} (LinearMap.{u3, u3, max u1 u2, u4} S S _inst_1 _inst_1 (RingHom.id.{u3} S (Semiring.toNonAssocSemiring.{u3} S _inst_1)) (Unitization.{u2, u1} R A) N (Unitization.addCommMonoid.{u2, u1} R A _inst_2 _inst_3) _inst_4 (Unitization.module.{u3, u2, u1} S R A _inst_1 _inst_2 _inst_3 _inst_5 _inst_6) _inst_7) (Unitization.{u2, u1} R A) (fun (_x : Unitization.{u2, u1} R A) => (fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6190 : Unitization.{u2, u1} R A) => N) _x) (LinearMap.instFunLikeLinearMap.{u3, u3, max u2 u1, u4} S S (Unitization.{u2, u1} R A) N _inst_1 _inst_1 (Unitization.addCommMonoid.{u2, u1} R A _inst_2 _inst_3) _inst_4 (Unitization.module.{u3, u2, u1} S R A _inst_1 _inst_2 _inst_3 _inst_5 _inst_6) _inst_7 (RingHom.id.{u3} S (Semiring.toNonAssocSemiring.{u3} S _inst_1))) f (Unitization.inl.{u2, u1} R A (AddMonoid.toZero.{u1} A (AddCommMonoid.toAddMonoid.{u1} A _inst_3)) r)) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u4), max (succ u2) (succ u1), succ u4} (LinearMap.{u3, u3, max u1 u2, u4} S S _inst_1 _inst_1 (RingHom.id.{u3} S (Semiring.toNonAssocSemiring.{u3} S _inst_1)) (Unitization.{u2, u1} R A) N (Unitization.addCommMonoid.{u2, u1} R A _inst_2 _inst_3) _inst_4 (Unitization.module.{u3, u2, u1} S R A _inst_1 _inst_2 _inst_3 _inst_5 _inst_6) _inst_7) (Unitization.{u2, u1} R A) (fun (_x : Unitization.{u2, u1} R A) => (fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6190 : Unitization.{u2, u1} R A) => N) _x) (LinearMap.instFunLikeLinearMap.{u3, u3, max u2 u1, u4} S S (Unitization.{u2, u1} R A) N _inst_1 _inst_1 (Unitization.addCommMonoid.{u2, u1} R A _inst_2 _inst_3) _inst_4 (Unitization.module.{u3, u2, u1} S R A _inst_1 _inst_2 _inst_3 _inst_5 _inst_6) _inst_7 (RingHom.id.{u3} S (Semiring.toNonAssocSemiring.{u3} S _inst_1))) g (Unitization.inl.{u2, u1} R A (AddMonoid.toZero.{u1} A (AddCommMonoid.toAddMonoid.{u1} A _inst_3)) r))) -> (forall (a : A), Eq.{succ u4} ((fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6190 : Unitization.{u2, u1} R A) => N) (Unitization.inr.{u2, u1} R A (AddMonoid.toZero.{u2} R (AddCommMonoid.toAddMonoid.{u2} R _inst_2)) a)) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u4), max (succ u2) (succ u1), succ u4} (LinearMap.{u3, u3, max u1 u2, u4} S S _inst_1 _inst_1 (RingHom.id.{u3} S (Semiring.toNonAssocSemiring.{u3} S _inst_1)) (Unitization.{u2, u1} R A) N (Unitization.addCommMonoid.{u2, u1} R A _inst_2 _inst_3) _inst_4 (Unitization.module.{u3, u2, u1} S R A _inst_1 _inst_2 _inst_3 _inst_5 _inst_6) _inst_7) (Unitization.{u2, u1} R A) (fun (_x : Unitization.{u2, u1} R A) => (fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6190 : Unitization.{u2, u1} R A) => N) _x) (LinearMap.instFunLikeLinearMap.{u3, u3, max u2 u1, u4} S S (Unitization.{u2, u1} R A) N _inst_1 _inst_1 (Unitization.addCommMonoid.{u2, u1} R A _inst_2 _inst_3) _inst_4 (Unitization.module.{u3, u2, u1} S R A _inst_1 _inst_2 _inst_3 _inst_5 _inst_6) _inst_7 (RingHom.id.{u3} S (Semiring.toNonAssocSemiring.{u3} S _inst_1))) f (Unitization.inr.{u2, u1} R A (AddMonoid.toZero.{u2} R (AddCommMonoid.toAddMonoid.{u2} R _inst_2)) a)) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u4), max (succ u2) (succ u1), succ u4} (LinearMap.{u3, u3, max u1 u2, u4} S S _inst_1 _inst_1 (RingHom.id.{u3} S (Semiring.toNonAssocSemiring.{u3} S _inst_1)) (Unitization.{u2, u1} R A) N (Unitization.addCommMonoid.{u2, u1} R A _inst_2 _inst_3) _inst_4 (Unitization.module.{u3, u2, u1} S R A _inst_1 _inst_2 _inst_3 _inst_5 _inst_6) _inst_7) (Unitization.{u2, u1} R A) (fun (_x : Unitization.{u2, u1} R A) => (fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6190 : Unitization.{u2, u1} R A) => N) _x) (LinearMap.instFunLikeLinearMap.{u3, u3, max u2 u1, u4} S S (Unitization.{u2, u1} R A) N _inst_1 _inst_1 (Unitization.addCommMonoid.{u2, u1} R A _inst_2 _inst_3) _inst_4 (Unitization.module.{u3, u2, u1} S R A _inst_1 _inst_2 _inst_3 _inst_5 _inst_6) _inst_7 (RingHom.id.{u3} S (Semiring.toNonAssocSemiring.{u3} S _inst_1))) g (Unitization.inr.{u2, u1} R A (AddMonoid.toZero.{u2} R (AddCommMonoid.toAddMonoid.{u2} R _inst_2)) a))) -> (Eq.{max (max (succ u2) (succ u1)) (succ u4)} (LinearMap.{u3, u3, max u1 u2, u4} S S _inst_1 _inst_1 (RingHom.id.{u3} S (Semiring.toNonAssocSemiring.{u3} S _inst_1)) (Unitization.{u2, u1} R A) N (Unitization.addCommMonoid.{u2, u1} R A _inst_2 _inst_3) _inst_4 (Unitization.module.{u3, u2, u1} S R A _inst_1 _inst_2 _inst_3 _inst_5 _inst_6) _inst_7) f g)
+  forall {S : Type.{u3}} {R : Type.{u2}} {A : Type.{u1}} {N : Type.{u4}} [_inst_1 : Semiring.{u3} S] [_inst_2 : AddCommMonoid.{u2} R] [_inst_3 : AddCommMonoid.{u1} A] [_inst_4 : AddCommMonoid.{u4} N] [_inst_5 : Module.{u3, u2} S R _inst_1 _inst_2] [_inst_6 : Module.{u3, u1} S A _inst_1 _inst_3] [_inst_7 : Module.{u3, u4} S N _inst_1 _inst_4] {{f : LinearMap.{u3, u3, max u1 u2, u4} S S _inst_1 _inst_1 (RingHom.id.{u3} S (Semiring.toNonAssocSemiring.{u3} S _inst_1)) (Unitization.{u2, u1} R A) N (Unitization.addCommMonoid.{u2, u1} R A _inst_2 _inst_3) _inst_4 (Unitization.module.{u3, u2, u1} S R A _inst_1 _inst_2 _inst_3 _inst_5 _inst_6) _inst_7}} {{g : LinearMap.{u3, u3, max u1 u2, u4} S S _inst_1 _inst_1 (RingHom.id.{u3} S (Semiring.toNonAssocSemiring.{u3} S _inst_1)) (Unitization.{u2, u1} R A) N (Unitization.addCommMonoid.{u2, u1} R A _inst_2 _inst_3) _inst_4 (Unitization.module.{u3, u2, u1} S R A _inst_1 _inst_2 _inst_3 _inst_5 _inst_6) _inst_7}}, (forall (r : R), Eq.{succ u4} ((fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6191 : Unitization.{u2, u1} R A) => N) (Unitization.inl.{u2, u1} R A (AddMonoid.toZero.{u1} A (AddCommMonoid.toAddMonoid.{u1} A _inst_3)) r)) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u4), max (succ u2) (succ u1), succ u4} (LinearMap.{u3, u3, max u1 u2, u4} S S _inst_1 _inst_1 (RingHom.id.{u3} S (Semiring.toNonAssocSemiring.{u3} S _inst_1)) (Unitization.{u2, u1} R A) N (Unitization.addCommMonoid.{u2, u1} R A _inst_2 _inst_3) _inst_4 (Unitization.module.{u3, u2, u1} S R A _inst_1 _inst_2 _inst_3 _inst_5 _inst_6) _inst_7) (Unitization.{u2, u1} R A) (fun (_x : Unitization.{u2, u1} R A) => (fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6191 : Unitization.{u2, u1} R A) => N) _x) (LinearMap.instFunLikeLinearMap.{u3, u3, max u2 u1, u4} S S (Unitization.{u2, u1} R A) N _inst_1 _inst_1 (Unitization.addCommMonoid.{u2, u1} R A _inst_2 _inst_3) _inst_4 (Unitization.module.{u3, u2, u1} S R A _inst_1 _inst_2 _inst_3 _inst_5 _inst_6) _inst_7 (RingHom.id.{u3} S (Semiring.toNonAssocSemiring.{u3} S _inst_1))) f (Unitization.inl.{u2, u1} R A (AddMonoid.toZero.{u1} A (AddCommMonoid.toAddMonoid.{u1} A _inst_3)) r)) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u4), max (succ u2) (succ u1), succ u4} (LinearMap.{u3, u3, max u1 u2, u4} S S _inst_1 _inst_1 (RingHom.id.{u3} S (Semiring.toNonAssocSemiring.{u3} S _inst_1)) (Unitization.{u2, u1} R A) N (Unitization.addCommMonoid.{u2, u1} R A _inst_2 _inst_3) _inst_4 (Unitization.module.{u3, u2, u1} S R A _inst_1 _inst_2 _inst_3 _inst_5 _inst_6) _inst_7) (Unitization.{u2, u1} R A) (fun (_x : Unitization.{u2, u1} R A) => (fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6191 : Unitization.{u2, u1} R A) => N) _x) (LinearMap.instFunLikeLinearMap.{u3, u3, max u2 u1, u4} S S (Unitization.{u2, u1} R A) N _inst_1 _inst_1 (Unitization.addCommMonoid.{u2, u1} R A _inst_2 _inst_3) _inst_4 (Unitization.module.{u3, u2, u1} S R A _inst_1 _inst_2 _inst_3 _inst_5 _inst_6) _inst_7 (RingHom.id.{u3} S (Semiring.toNonAssocSemiring.{u3} S _inst_1))) g (Unitization.inl.{u2, u1} R A (AddMonoid.toZero.{u1} A (AddCommMonoid.toAddMonoid.{u1} A _inst_3)) r))) -> (forall (a : A), Eq.{succ u4} ((fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6191 : Unitization.{u2, u1} R A) => N) (Unitization.inr.{u2, u1} R A (AddMonoid.toZero.{u2} R (AddCommMonoid.toAddMonoid.{u2} R _inst_2)) a)) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u4), max (succ u2) (succ u1), succ u4} (LinearMap.{u3, u3, max u1 u2, u4} S S _inst_1 _inst_1 (RingHom.id.{u3} S (Semiring.toNonAssocSemiring.{u3} S _inst_1)) (Unitization.{u2, u1} R A) N (Unitization.addCommMonoid.{u2, u1} R A _inst_2 _inst_3) _inst_4 (Unitization.module.{u3, u2, u1} S R A _inst_1 _inst_2 _inst_3 _inst_5 _inst_6) _inst_7) (Unitization.{u2, u1} R A) (fun (_x : Unitization.{u2, u1} R A) => (fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6191 : Unitization.{u2, u1} R A) => N) _x) (LinearMap.instFunLikeLinearMap.{u3, u3, max u2 u1, u4} S S (Unitization.{u2, u1} R A) N _inst_1 _inst_1 (Unitization.addCommMonoid.{u2, u1} R A _inst_2 _inst_3) _inst_4 (Unitization.module.{u3, u2, u1} S R A _inst_1 _inst_2 _inst_3 _inst_5 _inst_6) _inst_7 (RingHom.id.{u3} S (Semiring.toNonAssocSemiring.{u3} S _inst_1))) f (Unitization.inr.{u2, u1} R A (AddMonoid.toZero.{u2} R (AddCommMonoid.toAddMonoid.{u2} R _inst_2)) a)) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u4), max (succ u2) (succ u1), succ u4} (LinearMap.{u3, u3, max u1 u2, u4} S S _inst_1 _inst_1 (RingHom.id.{u3} S (Semiring.toNonAssocSemiring.{u3} S _inst_1)) (Unitization.{u2, u1} R A) N (Unitization.addCommMonoid.{u2, u1} R A _inst_2 _inst_3) _inst_4 (Unitization.module.{u3, u2, u1} S R A _inst_1 _inst_2 _inst_3 _inst_5 _inst_6) _inst_7) (Unitization.{u2, u1} R A) (fun (_x : Unitization.{u2, u1} R A) => (fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6191 : Unitization.{u2, u1} R A) => N) _x) (LinearMap.instFunLikeLinearMap.{u3, u3, max u2 u1, u4} S S (Unitization.{u2, u1} R A) N _inst_1 _inst_1 (Unitization.addCommMonoid.{u2, u1} R A _inst_2 _inst_3) _inst_4 (Unitization.module.{u3, u2, u1} S R A _inst_1 _inst_2 _inst_3 _inst_5 _inst_6) _inst_7 (RingHom.id.{u3} S (Semiring.toNonAssocSemiring.{u3} S _inst_1))) g (Unitization.inr.{u2, u1} R A (AddMonoid.toZero.{u2} R (AddCommMonoid.toAddMonoid.{u2} R _inst_2)) a))) -> (Eq.{max (max (succ u2) (succ u1)) (succ u4)} (LinearMap.{u3, u3, max u1 u2, u4} S S _inst_1 _inst_1 (RingHom.id.{u3} S (Semiring.toNonAssocSemiring.{u3} S _inst_1)) (Unitization.{u2, u1} R A) N (Unitization.addCommMonoid.{u2, u1} R A _inst_2 _inst_3) _inst_4 (Unitization.module.{u3, u2, u1} S R A _inst_1 _inst_2 _inst_3 _inst_5 _inst_6) _inst_7) f g)
 Case conversion may be inaccurate. Consider using '#align unitization.linear_map_ext Unitization.linearMap_extₓ'. -/
 /-- This cannot be marked `@[ext]` as it ends up being used instead of `linear_map.prod_ext` when
 working with `R × A`. -/
Diff
@@ -4,7 +4,7 @@ Released under Apache 2.0 license as described in the file LICENSE.
 Authors: Jireh Loreaux
 
 ! This file was ported from Lean 3 source module algebra.algebra.unitization
-! leanprover-community/mathlib commit 8f66240cab125b938b327d3850169d490cfbcdd8
+! leanprover-community/mathlib commit 932872382355f00112641d305ba0619305dc8642
 ! Please do not edit these lines, except to modify the commit id
 ! if you have ported upstream changes.
 -/
@@ -15,6 +15,9 @@ import Mathbin.Algebra.Hom.NonUnitalAlg
 /-!
 # Unitization of a non-unital algebra
 
+> THIS FILE IS SYNCHRONIZED WITH MATHLIB4.
+> Any changes to this file require a corresponding PR to mathlib4.
+
 Given a non-unital `R`-algebra `A` (given via the type classes
 `[non_unital_ring A] [module R A] [smul_comm_class R A A] [is_scalar_tower R A A]`) we construct
 the minimal unital `R`-algebra containing `A` as an ideal. This object `algebra.unitization R A` is
Diff
@@ -53,11 +53,13 @@ extension to a (unital) algebra homomorphism from `unitization R A` to `B`.
 -/
 
 
+#print Unitization /-
 /-- The minimal unitization of a non-unital `R`-algebra `A`. This is just a type synonym for
 `R × A`.-/
 def Unitization (R A : Type _) :=
   R × A
 #align unitization Unitization
+-/
 
 namespace Unitization
 
@@ -65,24 +67,36 @@ section Basic
 
 variable {R A : Type _}
 
+#print Unitization.inl /-
 /-- The canonical inclusion `R → unitization R A`. -/
 def inl [Zero A] (r : R) : Unitization R A :=
   (r, 0)
 #align unitization.inl Unitization.inl
+-/
 
 /-- The canonical inclusion `A → unitization R A`. -/
 instance [Zero R] : CoeTC A (Unitization R A) where coe a := (0, a)
 
+#print Unitization.fst /-
 /-- The canonical projection `unitization R A → R`. -/
 def fst (x : Unitization R A) : R :=
   x.1
 #align unitization.fst Unitization.fst
+-/
 
+#print Unitization.snd /-
 /-- The canonical projection `unitization R A → A`. -/
 def snd (x : Unitization R A) : A :=
   x.2
 #align unitization.snd Unitization.snd
+-/
 
+/- warning: unitization.ext -> Unitization.ext is a dubious translation:
+lean 3 declaration is
+  forall {R : Type.{u1}} {A : Type.{u2}} {x : Unitization.{u1, u2} R A} {y : Unitization.{u1, u2} R A}, (Eq.{succ u1} R (Unitization.fst.{u1, u2} R A x) (Unitization.fst.{u1, u2} R A y)) -> (Eq.{succ u2} A (Unitization.snd.{u1, u2} R A x) (Unitization.snd.{u1, u2} R A y)) -> (Eq.{max (succ u1) (succ u2)} (Unitization.{u1, u2} R A) x y)
+but is expected to have type
+  forall {R : Type.{u2}} {A : Type.{u1}} {x : Unitization.{u2, u1} R A} {y : Unitization.{u2, u1} R A}, (Eq.{succ u2} R (Unitization.fst.{u2, u1} R A x) (Unitization.fst.{u2, u1} R A y)) -> (Eq.{succ u1} A (Unitization.snd.{u2, u1} R A x) (Unitization.snd.{u2, u1} R A y)) -> (Eq.{max (succ u2) (succ u1)} (Unitization.{u2, u1} R A) x y)
+Case conversion may be inaccurate. Consider using '#align unitization.ext Unitization.extₓ'. -/
 @[ext]
 theorem ext {x y : Unitization R A} (h1 : x.fst = y.fst) (h2 : x.snd = y.snd) : x = y :=
   Prod.ext h1 h2
@@ -92,15 +106,19 @@ section
 
 variable (A)
 
+#print Unitization.fst_inl /-
 @[simp]
 theorem fst_inl [Zero A] (r : R) : (inl r : Unitization R A).fst = r :=
   rfl
 #align unitization.fst_inl Unitization.fst_inl
+-/
 
+#print Unitization.snd_inl /-
 @[simp]
 theorem snd_inl [Zero A] (r : R) : (inl r : Unitization R A).snd = 0 :=
   rfl
 #align unitization.snd_inl Unitization.snd_inl
+-/
 
 end
 
@@ -108,25 +126,45 @@ section
 
 variable (R)
 
+/- warning: unitization.fst_coe -> Unitization.fst_inr is a dubious translation:
+lean 3 declaration is
+  forall (R : Type.{u1}) {A : Type.{u2}} [_inst_1 : Zero.{u1} R] (a : A), Eq.{succ u1} R (Unitization.fst.{u1, u2} R A ((fun (a : Type.{u2}) (b : Sort.{max (succ u1) (succ u2)}) [self : HasLiftT.{succ u2, max (succ u1) (succ u2)} a b] => self.0) A (Unitization.{u1, u2} R A) (HasLiftT.mk.{succ u2, max (succ u1) (succ u2)} A (Unitization.{u1, u2} R A) (CoeTCₓ.coe.{succ u2, max (succ u1) (succ u2)} A (Unitization.{u1, u2} R A) (Unitization.hasCoeT.{u1, u2} R A _inst_1))) a)) (OfNat.ofNat.{u1} R 0 (OfNat.mk.{u1} R 0 (Zero.zero.{u1} R _inst_1)))
+but is expected to have type
+  forall (R : Type.{u2}) {A : Type.{u1}} [_inst_1 : Zero.{u2} R] (a : A), Eq.{succ u2} R (Unitization.fst.{u2, u1} R A (Unitization.inr.{u2, u1} R A _inst_1 a)) (OfNat.ofNat.{u2} R 0 (Zero.toOfNat0.{u2} R _inst_1))
+Case conversion may be inaccurate. Consider using '#align unitization.fst_coe Unitization.fst_inrₓ'. -/
 @[simp]
-theorem fst_coe [Zero R] (a : A) : (a : Unitization R A).fst = 0 :=
+theorem fst_inr [Zero R] (a : A) : (a : Unitization R A).fst = 0 :=
   rfl
-#align unitization.fst_coe Unitization.fst_coe
-
+#align unitization.fst_coe Unitization.fst_inr
+
+/- warning: unitization.snd_coe -> Unitization.snd_inr is a dubious translation:
+lean 3 declaration is
+  forall (R : Type.{u1}) {A : Type.{u2}} [_inst_1 : Zero.{u1} R] (a : A), Eq.{succ u2} A (Unitization.snd.{u1, u2} R A ((fun (a : Type.{u2}) (b : Sort.{max (succ u1) (succ u2)}) [self : HasLiftT.{succ u2, max (succ u1) (succ u2)} a b] => self.0) A (Unitization.{u1, u2} R A) (HasLiftT.mk.{succ u2, max (succ u1) (succ u2)} A (Unitization.{u1, u2} R A) (CoeTCₓ.coe.{succ u2, max (succ u1) (succ u2)} A (Unitization.{u1, u2} R A) (Unitization.hasCoeT.{u1, u2} R A _inst_1))) a)) a
+but is expected to have type
+  forall (R : Type.{u2}) {A : Type.{u1}} [_inst_1 : Zero.{u2} R] (a : A), Eq.{succ u1} A (Unitization.snd.{u2, u1} R A (Unitization.inr.{u2, u1} R A _inst_1 a)) a
+Case conversion may be inaccurate. Consider using '#align unitization.snd_coe Unitization.snd_inrₓ'. -/
 @[simp]
-theorem snd_coe [Zero R] (a : A) : (a : Unitization R A).snd = a :=
+theorem snd_inr [Zero R] (a : A) : (a : Unitization R A).snd = a :=
   rfl
-#align unitization.snd_coe Unitization.snd_coe
+#align unitization.snd_coe Unitization.snd_inr
 
 end
 
+#print Unitization.inl_injective /-
 theorem inl_injective [Zero A] : Function.Injective (inl : R → Unitization R A) :=
   Function.LeftInverse.injective <| fst_inl _
 #align unitization.inl_injective Unitization.inl_injective
+-/
 
-theorem coe_injective [Zero R] : Function.Injective (coe : A → Unitization R A) :=
-  Function.LeftInverse.injective <| snd_coe _
-#align unitization.coe_injective Unitization.coe_injective
+/- warning: unitization.coe_injective -> Unitization.inr_injective is a dubious translation:
+lean 3 declaration is
+  forall {R : Type.{u1}} {A : Type.{u2}} [_inst_1 : Zero.{u1} R], Function.Injective.{succ u2, max (succ u1) (succ u2)} A (Unitization.{u1, u2} R A) ((fun (a : Type.{u2}) (b : Sort.{max (succ u1) (succ u2)}) [self : HasLiftT.{succ u2, max (succ u1) (succ u2)} a b] => self.0) A (Unitization.{u1, u2} R A) (HasLiftT.mk.{succ u2, max (succ u1) (succ u2)} A (Unitization.{u1, u2} R A) (CoeTCₓ.coe.{succ u2, max (succ u1) (succ u2)} A (Unitization.{u1, u2} R A) (Unitization.hasCoeT.{u1, u2} R A _inst_1))))
+but is expected to have type
+  forall {R : Type.{u2}} {A : Type.{u1}} [_inst_1 : Zero.{u2} R], Function.Injective.{succ u1, max (succ u2) (succ u1)} A (Unitization.{u2, u1} R A) (Unitization.inr.{u2, u1} R A _inst_1)
+Case conversion may be inaccurate. Consider using '#align unitization.coe_injective Unitization.inr_injectiveₓ'. -/
+theorem inr_injective [Zero R] : Function.Injective (coe : A → Unitization R A) :=
+  Function.LeftInverse.injective <| snd_inr _
+#align unitization.coe_injective Unitization.inr_injective
 
 end Basic
 
@@ -198,41 +236,89 @@ instance [Semiring S] [AddCommMonoid R] [AddCommMonoid A] [Module S R] [Module S
     Module S (Unitization R A) :=
   Prod.module
 
+/- warning: unitization.fst_zero -> Unitization.fst_zero is a dubious translation:
+lean 3 declaration is
+  forall {R : Type.{u1}} {A : Type.{u2}} [_inst_1 : Zero.{u1} R] [_inst_2 : Zero.{u2} A], Eq.{succ u1} R (Unitization.fst.{u1, u2} R A (OfNat.ofNat.{max u1 u2} (Unitization.{u1, u2} R A) 0 (OfNat.mk.{max u1 u2} (Unitization.{u1, u2} R A) 0 (Zero.zero.{max u1 u2} (Unitization.{u1, u2} R A) (Unitization.hasZero.{u1, u2} R A _inst_1 _inst_2))))) (OfNat.ofNat.{u1} R 0 (OfNat.mk.{u1} R 0 (Zero.zero.{u1} R _inst_1)))
+but is expected to have type
+  forall {R : Type.{u2}} {A : Type.{u1}} [_inst_1 : Zero.{u2} R] [_inst_2 : Zero.{u1} A], Eq.{succ u2} R (Unitization.fst.{u2, u1} R A (OfNat.ofNat.{max u2 u1} (Unitization.{u2, u1} R A) 0 (Zero.toOfNat0.{max u2 u1} (Unitization.{u2, u1} R A) (Unitization.zero.{u2, u1} R A _inst_1 _inst_2)))) (OfNat.ofNat.{u2} R 0 (Zero.toOfNat0.{u2} R _inst_1))
+Case conversion may be inaccurate. Consider using '#align unitization.fst_zero Unitization.fst_zeroₓ'. -/
 @[simp]
 theorem fst_zero [Zero R] [Zero A] : (0 : Unitization R A).fst = 0 :=
   rfl
 #align unitization.fst_zero Unitization.fst_zero
 
+/- warning: unitization.snd_zero -> Unitization.snd_zero is a dubious translation:
+lean 3 declaration is
+  forall {R : Type.{u1}} {A : Type.{u2}} [_inst_1 : Zero.{u1} R] [_inst_2 : Zero.{u2} A], Eq.{succ u2} A (Unitization.snd.{u1, u2} R A (OfNat.ofNat.{max u1 u2} (Unitization.{u1, u2} R A) 0 (OfNat.mk.{max u1 u2} (Unitization.{u1, u2} R A) 0 (Zero.zero.{max u1 u2} (Unitization.{u1, u2} R A) (Unitization.hasZero.{u1, u2} R A _inst_1 _inst_2))))) (OfNat.ofNat.{u2} A 0 (OfNat.mk.{u2} A 0 (Zero.zero.{u2} A _inst_2)))
+but is expected to have type
+  forall {R : Type.{u2}} {A : Type.{u1}} [_inst_1 : Zero.{u2} R] [_inst_2 : Zero.{u1} A], Eq.{succ u1} A (Unitization.snd.{u2, u1} R A (OfNat.ofNat.{max u2 u1} (Unitization.{u2, u1} R A) 0 (Zero.toOfNat0.{max u2 u1} (Unitization.{u2, u1} R A) (Unitization.zero.{u2, u1} R A _inst_1 _inst_2)))) (OfNat.ofNat.{u1} A 0 (Zero.toOfNat0.{u1} A _inst_2))
+Case conversion may be inaccurate. Consider using '#align unitization.snd_zero Unitization.snd_zeroₓ'. -/
 @[simp]
 theorem snd_zero [Zero R] [Zero A] : (0 : Unitization R A).snd = 0 :=
   rfl
 #align unitization.snd_zero Unitization.snd_zero
 
+/- warning: unitization.fst_add -> Unitization.fst_add is a dubious translation:
+lean 3 declaration is
+  forall {R : Type.{u1}} {A : Type.{u2}} [_inst_1 : Add.{u1} R] [_inst_2 : Add.{u2} A] (x₁ : Unitization.{u1, u2} R A) (x₂ : Unitization.{u1, u2} R A), Eq.{succ u1} R (Unitization.fst.{u1, u2} R A (HAdd.hAdd.{max u1 u2, max u1 u2, max u1 u2} (Unitization.{u1, u2} R A) (Unitization.{u1, u2} R A) (Unitization.{u1, u2} R A) (instHAdd.{max u1 u2} (Unitization.{u1, u2} R A) (Unitization.hasAdd.{u1, u2} R A _inst_1 _inst_2)) x₁ x₂)) (HAdd.hAdd.{u1, u1, u1} R R R (instHAdd.{u1} R _inst_1) (Unitization.fst.{u1, u2} R A x₁) (Unitization.fst.{u1, u2} R A x₂))
+but is expected to have type
+  forall {R : Type.{u2}} {A : Type.{u1}} [_inst_1 : Add.{u2} R] [_inst_2 : Add.{u1} A] (x₁ : Unitization.{u2, u1} R A) (x₂ : Unitization.{u2, u1} R A), Eq.{succ u2} R (Unitization.fst.{u2, u1} R A (HAdd.hAdd.{max u2 u1, max u2 u1, max u2 u1} (Unitization.{u2, u1} R A) (Unitization.{u2, u1} R A) (Unitization.{u2, u1} R A) (instHAdd.{max u2 u1} (Unitization.{u2, u1} R A) (Unitization.add.{u2, u1} R A _inst_1 _inst_2)) x₁ x₂)) (HAdd.hAdd.{u2, u2, u2} R R R (instHAdd.{u2} R _inst_1) (Unitization.fst.{u2, u1} R A x₁) (Unitization.fst.{u2, u1} R A x₂))
+Case conversion may be inaccurate. Consider using '#align unitization.fst_add Unitization.fst_addₓ'. -/
 @[simp]
 theorem fst_add [Add R] [Add A] (x₁ x₂ : Unitization R A) : (x₁ + x₂).fst = x₁.fst + x₂.fst :=
   rfl
 #align unitization.fst_add Unitization.fst_add
 
+/- warning: unitization.snd_add -> Unitization.snd_add is a dubious translation:
+lean 3 declaration is
+  forall {R : Type.{u1}} {A : Type.{u2}} [_inst_1 : Add.{u1} R] [_inst_2 : Add.{u2} A] (x₁ : Unitization.{u1, u2} R A) (x₂ : Unitization.{u1, u2} R A), Eq.{succ u2} A (Unitization.snd.{u1, u2} R A (HAdd.hAdd.{max u1 u2, max u1 u2, max u1 u2} (Unitization.{u1, u2} R A) (Unitization.{u1, u2} R A) (Unitization.{u1, u2} R A) (instHAdd.{max u1 u2} (Unitization.{u1, u2} R A) (Unitization.hasAdd.{u1, u2} R A _inst_1 _inst_2)) x₁ x₂)) (HAdd.hAdd.{u2, u2, u2} A A A (instHAdd.{u2} A _inst_2) (Unitization.snd.{u1, u2} R A x₁) (Unitization.snd.{u1, u2} R A x₂))
+but is expected to have type
+  forall {R : Type.{u2}} {A : Type.{u1}} [_inst_1 : Add.{u2} R] [_inst_2 : Add.{u1} A] (x₁ : Unitization.{u2, u1} R A) (x₂ : Unitization.{u2, u1} R A), Eq.{succ u1} A (Unitization.snd.{u2, u1} R A (HAdd.hAdd.{max u2 u1, max u2 u1, max u2 u1} (Unitization.{u2, u1} R A) (Unitization.{u2, u1} R A) (Unitization.{u2, u1} R A) (instHAdd.{max u2 u1} (Unitization.{u2, u1} R A) (Unitization.add.{u2, u1} R A _inst_1 _inst_2)) x₁ x₂)) (HAdd.hAdd.{u1, u1, u1} A A A (instHAdd.{u1} A _inst_2) (Unitization.snd.{u2, u1} R A x₁) (Unitization.snd.{u2, u1} R A x₂))
+Case conversion may be inaccurate. Consider using '#align unitization.snd_add Unitization.snd_addₓ'. -/
 @[simp]
 theorem snd_add [Add R] [Add A] (x₁ x₂ : Unitization R A) : (x₁ + x₂).snd = x₁.snd + x₂.snd :=
   rfl
 #align unitization.snd_add Unitization.snd_add
 
+/- warning: unitization.fst_neg -> Unitization.fst_neg is a dubious translation:
+lean 3 declaration is
+  forall {R : Type.{u1}} {A : Type.{u2}} [_inst_1 : Neg.{u1} R] [_inst_2 : Neg.{u2} A] (x : Unitization.{u1, u2} R A), Eq.{succ u1} R (Unitization.fst.{u1, u2} R A (Neg.neg.{max u1 u2} (Unitization.{u1, u2} R A) (Unitization.hasNeg.{u1, u2} R A _inst_1 _inst_2) x)) (Neg.neg.{u1} R _inst_1 (Unitization.fst.{u1, u2} R A x))
+but is expected to have type
+  forall {R : Type.{u2}} {A : Type.{u1}} [_inst_1 : Neg.{u2} R] [_inst_2 : Neg.{u1} A] (x : Unitization.{u2, u1} R A), Eq.{succ u2} R (Unitization.fst.{u2, u1} R A (Neg.neg.{max u2 u1} (Unitization.{u2, u1} R A) (Unitization.neg.{u2, u1} R A _inst_1 _inst_2) x)) (Neg.neg.{u2} R _inst_1 (Unitization.fst.{u2, u1} R A x))
+Case conversion may be inaccurate. Consider using '#align unitization.fst_neg Unitization.fst_negₓ'. -/
 @[simp]
 theorem fst_neg [Neg R] [Neg A] (x : Unitization R A) : (-x).fst = -x.fst :=
   rfl
 #align unitization.fst_neg Unitization.fst_neg
 
+/- warning: unitization.snd_neg -> Unitization.snd_neg is a dubious translation:
+lean 3 declaration is
+  forall {R : Type.{u1}} {A : Type.{u2}} [_inst_1 : Neg.{u1} R] [_inst_2 : Neg.{u2} A] (x : Unitization.{u1, u2} R A), Eq.{succ u2} A (Unitization.snd.{u1, u2} R A (Neg.neg.{max u1 u2} (Unitization.{u1, u2} R A) (Unitization.hasNeg.{u1, u2} R A _inst_1 _inst_2) x)) (Neg.neg.{u2} A _inst_2 (Unitization.snd.{u1, u2} R A x))
+but is expected to have type
+  forall {R : Type.{u2}} {A : Type.{u1}} [_inst_1 : Neg.{u2} R] [_inst_2 : Neg.{u1} A] (x : Unitization.{u2, u1} R A), Eq.{succ u1} A (Unitization.snd.{u2, u1} R A (Neg.neg.{max u2 u1} (Unitization.{u2, u1} R A) (Unitization.neg.{u2, u1} R A _inst_1 _inst_2) x)) (Neg.neg.{u1} A _inst_2 (Unitization.snd.{u2, u1} R A x))
+Case conversion may be inaccurate. Consider using '#align unitization.snd_neg Unitization.snd_negₓ'. -/
 @[simp]
 theorem snd_neg [Neg R] [Neg A] (x : Unitization R A) : (-x).snd = -x.snd :=
   rfl
 #align unitization.snd_neg Unitization.snd_neg
 
+/- warning: unitization.fst_smul -> Unitization.fst_smul is a dubious translation:
+lean 3 declaration is
+  forall {S : Type.{u1}} {R : Type.{u2}} {A : Type.{u3}} [_inst_1 : SMul.{u1, u2} S R] [_inst_2 : SMul.{u1, u3} S A] (s : S) (x : Unitization.{u2, u3} R A), Eq.{succ u2} R (Unitization.fst.{u2, u3} R A (SMul.smul.{u1, max u2 u3} S (Unitization.{u2, u3} R A) (Unitization.hasSmul.{u1, u2, u3} S R A _inst_1 _inst_2) s x)) (SMul.smul.{u1, u2} S R _inst_1 s (Unitization.fst.{u2, u3} R A x))
+but is expected to have type
+  forall {S : Type.{u3}} {R : Type.{u2}} {A : Type.{u1}} [_inst_1 : SMul.{u3, u2} S R] [_inst_2 : SMul.{u3, u1} S A] (s : S) (x : Unitization.{u2, u1} R A), Eq.{succ u2} R (Unitization.fst.{u2, u1} R A (HSMul.hSMul.{u3, max u2 u1, max u2 u1} S (Unitization.{u2, u1} R A) (Unitization.{u2, u1} R A) (instHSMul.{u3, max u2 u1} S (Unitization.{u2, u1} R A) (Unitization.smul.{u3, u2, u1} S R A _inst_1 _inst_2)) s x)) (HSMul.hSMul.{u3, u2, u2} S R R (instHSMul.{u3, u2} S R _inst_1) s (Unitization.fst.{u2, u1} R A x))
+Case conversion may be inaccurate. Consider using '#align unitization.fst_smul Unitization.fst_smulₓ'. -/
 @[simp]
 theorem fst_smul [SMul S R] [SMul S A] (s : S) (x : Unitization R A) : (s • x).fst = s • x.fst :=
   rfl
 #align unitization.fst_smul Unitization.fst_smul
 
+/- warning: unitization.snd_smul -> Unitization.snd_smul is a dubious translation:
+lean 3 declaration is
+  forall {S : Type.{u1}} {R : Type.{u2}} {A : Type.{u3}} [_inst_1 : SMul.{u1, u2} S R] [_inst_2 : SMul.{u1, u3} S A] (s : S) (x : Unitization.{u2, u3} R A), Eq.{succ u3} A (Unitization.snd.{u2, u3} R A (SMul.smul.{u1, max u2 u3} S (Unitization.{u2, u3} R A) (Unitization.hasSmul.{u1, u2, u3} S R A _inst_1 _inst_2) s x)) (SMul.smul.{u1, u3} S A _inst_2 s (Unitization.snd.{u2, u3} R A x))
+but is expected to have type
+  forall {S : Type.{u3}} {R : Type.{u2}} {A : Type.{u1}} [_inst_1 : SMul.{u3, u2} S R] [_inst_2 : SMul.{u3, u1} S A] (s : S) (x : Unitization.{u2, u1} R A), Eq.{succ u1} A (Unitization.snd.{u2, u1} R A (HSMul.hSMul.{u3, max u2 u1, max u2 u1} S (Unitization.{u2, u1} R A) (Unitization.{u2, u1} R A) (instHSMul.{u3, max u2 u1} S (Unitization.{u2, u1} R A) (Unitization.smul.{u3, u2, u1} S R A _inst_1 _inst_2)) s x)) (HSMul.hSMul.{u3, u1, u1} S A A (instHSMul.{u3, u1} S A _inst_2) s (Unitization.snd.{u2, u1} R A x))
+Case conversion may be inaccurate. Consider using '#align unitization.snd_smul Unitization.snd_smulₓ'. -/
 @[simp]
 theorem snd_smul [SMul S R] [SMul S A] (s : S) (x : Unitization R A) : (s • x).snd = s • x.snd :=
   rfl
@@ -242,22 +328,46 @@ section
 
 variable (A)
 
+/- warning: unitization.inl_zero -> Unitization.inl_zero is a dubious translation:
+lean 3 declaration is
+  forall {R : Type.{u1}} (A : Type.{u2}) [_inst_1 : Zero.{u1} R] [_inst_2 : Zero.{u2} A], Eq.{max (succ u1) (succ u2)} (Unitization.{u1, u2} R A) (Unitization.inl.{u1, u2} R A _inst_2 (OfNat.ofNat.{u1} R 0 (OfNat.mk.{u1} R 0 (Zero.zero.{u1} R _inst_1)))) (OfNat.ofNat.{max u1 u2} (Unitization.{u1, u2} R A) 0 (OfNat.mk.{max u1 u2} (Unitization.{u1, u2} R A) 0 (Zero.zero.{max u1 u2} (Unitization.{u1, u2} R A) (Unitization.hasZero.{u1, u2} R A _inst_1 _inst_2))))
+but is expected to have type
+  forall {R : Type.{u2}} (A : Type.{u1}) [_inst_1 : Zero.{u2} R] [_inst_2 : Zero.{u1} A], Eq.{max (succ u2) (succ u1)} (Unitization.{u2, u1} R A) (Unitization.inl.{u2, u1} R A _inst_2 (OfNat.ofNat.{u2} R 0 (Zero.toOfNat0.{u2} R _inst_1))) (OfNat.ofNat.{max u2 u1} (Unitization.{u2, u1} R A) 0 (Zero.toOfNat0.{max u2 u1} (Unitization.{u2, u1} R A) (Unitization.zero.{u2, u1} R A _inst_1 _inst_2)))
+Case conversion may be inaccurate. Consider using '#align unitization.inl_zero Unitization.inl_zeroₓ'. -/
 @[simp]
 theorem inl_zero [Zero R] [Zero A] : (inl 0 : Unitization R A) = 0 :=
   rfl
 #align unitization.inl_zero Unitization.inl_zero
 
+/- warning: unitization.inl_add -> Unitization.inl_add is a dubious translation:
+lean 3 declaration is
+  forall {R : Type.{u1}} (A : Type.{u2}) [_inst_1 : Add.{u1} R] [_inst_2 : AddZeroClass.{u2} A] (r₁ : R) (r₂ : R), Eq.{max (succ u1) (succ u2)} (Unitization.{u1, u2} R A) (Unitization.inl.{u1, u2} R A (AddZeroClass.toHasZero.{u2} A _inst_2) (HAdd.hAdd.{u1, u1, u1} R R R (instHAdd.{u1} R _inst_1) r₁ r₂)) (HAdd.hAdd.{max u1 u2, max u1 u2, max u1 u2} (Unitization.{u1, u2} R A) (Unitization.{u1, u2} R A) (Unitization.{u1, u2} R A) (instHAdd.{max u1 u2} (Unitization.{u1, u2} R A) (Unitization.hasAdd.{u1, u2} R A _inst_1 (AddZeroClass.toHasAdd.{u2} A _inst_2))) (Unitization.inl.{u1, u2} R A (AddZeroClass.toHasZero.{u2} A _inst_2) r₁) (Unitization.inl.{u1, u2} R A (AddZeroClass.toHasZero.{u2} A _inst_2) r₂))
+but is expected to have type
+  forall {R : Type.{u2}} (A : Type.{u1}) [_inst_1 : Add.{u2} R] [_inst_2 : AddZeroClass.{u1} A] (r₁ : R) (r₂ : R), Eq.{max (succ u2) (succ u1)} (Unitization.{u2, u1} R A) (Unitization.inl.{u2, u1} R A (AddZeroClass.toZero.{u1} A _inst_2) (HAdd.hAdd.{u2, u2, u2} R R R (instHAdd.{u2} R _inst_1) r₁ r₂)) (HAdd.hAdd.{max u2 u1, max u2 u1, max u2 u1} (Unitization.{u2, u1} R A) (Unitization.{u2, u1} R A) (Unitization.{u2, u1} R A) (instHAdd.{max u2 u1} (Unitization.{u2, u1} R A) (Unitization.add.{u2, u1} R A _inst_1 (AddZeroClass.toAdd.{u1} A _inst_2))) (Unitization.inl.{u2, u1} R A (AddZeroClass.toZero.{u1} A _inst_2) r₁) (Unitization.inl.{u2, u1} R A (AddZeroClass.toZero.{u1} A _inst_2) r₂))
+Case conversion may be inaccurate. Consider using '#align unitization.inl_add Unitization.inl_addₓ'. -/
 @[simp]
 theorem inl_add [Add R] [AddZeroClass A] (r₁ r₂ : R) :
     (inl (r₁ + r₂) : Unitization R A) = inl r₁ + inl r₂ :=
   ext rfl (add_zero 0).symm
 #align unitization.inl_add Unitization.inl_add
 
+/- warning: unitization.inl_neg -> Unitization.inl_neg is a dubious translation:
+lean 3 declaration is
+  forall {R : Type.{u1}} (A : Type.{u2}) [_inst_1 : Neg.{u1} R] [_inst_2 : AddGroup.{u2} A] (r : R), Eq.{max (succ u1) (succ u2)} (Unitization.{u1, u2} R A) (Unitization.inl.{u1, u2} R A (AddZeroClass.toHasZero.{u2} A (AddMonoid.toAddZeroClass.{u2} A (SubNegMonoid.toAddMonoid.{u2} A (AddGroup.toSubNegMonoid.{u2} A _inst_2)))) (Neg.neg.{u1} R _inst_1 r)) (Neg.neg.{max u1 u2} (Unitization.{u1, u2} R A) (Unitization.hasNeg.{u1, u2} R A _inst_1 (SubNegMonoid.toHasNeg.{u2} A (AddGroup.toSubNegMonoid.{u2} A _inst_2))) (Unitization.inl.{u1, u2} R A (AddZeroClass.toHasZero.{u2} A (AddMonoid.toAddZeroClass.{u2} A (SubNegMonoid.toAddMonoid.{u2} A (AddGroup.toSubNegMonoid.{u2} A _inst_2)))) r))
+but is expected to have type
+  forall {R : Type.{u2}} (A : Type.{u1}) [_inst_1 : Neg.{u2} R] [_inst_2 : AddGroup.{u1} A] (r : R), Eq.{max (succ u2) (succ u1)} (Unitization.{u2, u1} R A) (Unitization.inl.{u2, u1} R A (NegZeroClass.toZero.{u1} A (SubNegZeroMonoid.toNegZeroClass.{u1} A (SubtractionMonoid.toSubNegZeroMonoid.{u1} A (AddGroup.toSubtractionMonoid.{u1} A _inst_2)))) (Neg.neg.{u2} R _inst_1 r)) (Neg.neg.{max u2 u1} (Unitization.{u2, u1} R A) (Unitization.neg.{u2, u1} R A _inst_1 (NegZeroClass.toNeg.{u1} A (SubNegZeroMonoid.toNegZeroClass.{u1} A (SubtractionMonoid.toSubNegZeroMonoid.{u1} A (AddGroup.toSubtractionMonoid.{u1} A _inst_2))))) (Unitization.inl.{u2, u1} R A (NegZeroClass.toZero.{u1} A (SubNegZeroMonoid.toNegZeroClass.{u1} A (SubtractionMonoid.toSubNegZeroMonoid.{u1} A (AddGroup.toSubtractionMonoid.{u1} A _inst_2)))) r))
+Case conversion may be inaccurate. Consider using '#align unitization.inl_neg Unitization.inl_negₓ'. -/
 @[simp]
 theorem inl_neg [Neg R] [AddGroup A] (r : R) : (inl (-r) : Unitization R A) = -inl r :=
   ext rfl neg_zero.symm
 #align unitization.inl_neg Unitization.inl_neg
 
+/- warning: unitization.inl_smul -> Unitization.inl_smul is a dubious translation:
+lean 3 declaration is
+  forall {S : Type.{u1}} {R : Type.{u2}} (A : Type.{u3}) [_inst_1 : Monoid.{u1} S] [_inst_2 : AddMonoid.{u3} A] [_inst_3 : SMul.{u1, u2} S R] [_inst_4 : DistribMulAction.{u1, u3} S A _inst_1 _inst_2] (s : S) (r : R), Eq.{max (succ u2) (succ u3)} (Unitization.{u2, u3} R A) (Unitization.inl.{u2, u3} R A (AddZeroClass.toHasZero.{u3} A (AddMonoid.toAddZeroClass.{u3} A _inst_2)) (SMul.smul.{u1, u2} S R _inst_3 s r)) (SMul.smul.{u1, max u2 u3} S (Unitization.{u2, u3} R A) (Unitization.hasSmul.{u1, u2, u3} S R A _inst_3 (SMulZeroClass.toHasSmul.{u1, u3} S A (AddZeroClass.toHasZero.{u3} A (AddMonoid.toAddZeroClass.{u3} A _inst_2)) (DistribSMul.toSmulZeroClass.{u1, u3} S A (AddMonoid.toAddZeroClass.{u3} A _inst_2) (DistribMulAction.toDistribSMul.{u1, u3} S A _inst_1 _inst_2 _inst_4)))) s (Unitization.inl.{u2, u3} R A (AddZeroClass.toHasZero.{u3} A (AddMonoid.toAddZeroClass.{u3} A _inst_2)) r))
+but is expected to have type
+  forall {S : Type.{u3}} {R : Type.{u1}} (A : Type.{u2}) [_inst_1 : Monoid.{u3} S] [_inst_2 : AddMonoid.{u2} A] [_inst_3 : SMul.{u3, u1} S R] [_inst_4 : DistribMulAction.{u3, u2} S A _inst_1 _inst_2] (s : S) (r : R), Eq.{max (succ u1) (succ u2)} (Unitization.{u1, u2} R A) (Unitization.inl.{u1, u2} R A (AddMonoid.toZero.{u2} A _inst_2) (HSMul.hSMul.{u3, u1, u1} S R R (instHSMul.{u3, u1} S R _inst_3) s r)) (HSMul.hSMul.{u3, max u2 u1, max u1 u2} S (Unitization.{u1, u2} R A) (Unitization.{u1, u2} R A) (instHSMul.{u3, max u1 u2} S (Unitization.{u1, u2} R A) (Unitization.smul.{u3, u1, u2} S R A _inst_3 (SMulZeroClass.toSMul.{u3, u2} S A (AddMonoid.toZero.{u2} A _inst_2) (DistribSMul.toSMulZeroClass.{u3, u2} S A (AddMonoid.toAddZeroClass.{u2} A _inst_2) (DistribMulAction.toDistribSMul.{u3, u2} S A _inst_1 _inst_2 _inst_4))))) s (Unitization.inl.{u1, u2} R A (AddMonoid.toZero.{u2} A _inst_2) r))
+Case conversion may be inaccurate. Consider using '#align unitization.inl_smul Unitization.inl_smulₓ'. -/
 @[simp]
 theorem inl_smul [Monoid S] [AddMonoid A] [SMul S R] [DistribMulAction S A] (s : S) (r : R) :
     (inl (s • r) : Unitization R A) = s • inl r :=
@@ -270,43 +380,85 @@ section
 
 variable (R)
 
+/- warning: unitization.coe_zero -> Unitization.inr_zero is a dubious translation:
+lean 3 declaration is
+  forall (R : Type.{u1}) {A : Type.{u2}} [_inst_1 : Zero.{u1} R] [_inst_2 : Zero.{u2} A], Eq.{max (succ u1) (succ u2)} (Unitization.{u1, u2} R A) ((fun (a : Type.{u2}) (b : Sort.{max (succ u1) (succ u2)}) [self : HasLiftT.{succ u2, max (succ u1) (succ u2)} a b] => self.0) A (Unitization.{u1, u2} R A) (HasLiftT.mk.{succ u2, max (succ u1) (succ u2)} A (Unitization.{u1, u2} R A) (CoeTCₓ.coe.{succ u2, max (succ u1) (succ u2)} A (Unitization.{u1, u2} R A) (Unitization.hasCoeT.{u1, u2} R A _inst_1))) (OfNat.ofNat.{u2} A 0 (OfNat.mk.{u2} A 0 (Zero.zero.{u2} A _inst_2)))) (OfNat.ofNat.{max u1 u2} (Unitization.{u1, u2} R A) 0 (OfNat.mk.{max u1 u2} (Unitization.{u1, u2} R A) 0 (Zero.zero.{max u1 u2} (Unitization.{u1, u2} R A) (Unitization.hasZero.{u1, u2} R A _inst_1 _inst_2))))
+but is expected to have type
+  forall (R : Type.{u2}) {A : Type.{u1}} [_inst_1 : Zero.{u2} R] [_inst_2 : Zero.{u1} A], Eq.{max (succ u2) (succ u1)} (Unitization.{u2, u1} R A) (Unitization.inr.{u2, u1} R A _inst_1 (OfNat.ofNat.{u1} A 0 (Zero.toOfNat0.{u1} A _inst_2))) (OfNat.ofNat.{max u2 u1} (Unitization.{u2, u1} R A) 0 (Zero.toOfNat0.{max u2 u1} (Unitization.{u2, u1} R A) (Unitization.zero.{u2, u1} R A _inst_1 _inst_2)))
+Case conversion may be inaccurate. Consider using '#align unitization.coe_zero Unitization.inr_zeroₓ'. -/
 @[simp]
-theorem coe_zero [Zero R] [Zero A] : ↑(0 : A) = (0 : Unitization R A) :=
+theorem inr_zero [Zero R] [Zero A] : ↑(0 : A) = (0 : Unitization R A) :=
   rfl
-#align unitization.coe_zero Unitization.coe_zero
-
+#align unitization.coe_zero Unitization.inr_zero
+
+/- warning: unitization.coe_add -> Unitization.inr_add is a dubious translation:
+lean 3 declaration is
+  forall (R : Type.{u1}) {A : Type.{u2}} [_inst_1 : AddZeroClass.{u1} R] [_inst_2 : Add.{u2} A] (m₁ : A) (m₂ : A), Eq.{max (succ u1) (succ u2)} (Unitization.{u1, u2} R A) ((fun (a : Type.{u2}) (b : Sort.{max (succ u1) (succ u2)}) [self : HasLiftT.{succ u2, max (succ u1) (succ u2)} a b] => self.0) A (Unitization.{u1, u2} R A) (HasLiftT.mk.{succ u2, max (succ u1) (succ u2)} A (Unitization.{u1, u2} R A) (CoeTCₓ.coe.{succ u2, max (succ u1) (succ u2)} A (Unitization.{u1, u2} R A) (Unitization.hasCoeT.{u1, u2} R A (AddZeroClass.toHasZero.{u1} R _inst_1)))) (HAdd.hAdd.{u2, u2, u2} A A A (instHAdd.{u2} A _inst_2) m₁ m₂)) (HAdd.hAdd.{max u1 u2, max u1 u2, max u1 u2} (Unitization.{u1, u2} R A) (Unitization.{u1, u2} R A) (Unitization.{u1, u2} R A) (instHAdd.{max u1 u2} (Unitization.{u1, u2} R A) (Unitization.hasAdd.{u1, u2} R A (AddZeroClass.toHasAdd.{u1} R _inst_1) _inst_2)) ((fun (a : Type.{u2}) (b : Sort.{max (succ u1) (succ u2)}) [self : HasLiftT.{succ u2, max (succ u1) (succ u2)} a b] => self.0) A (Unitization.{u1, u2} R A) (HasLiftT.mk.{succ u2, max (succ u1) (succ u2)} A (Unitization.{u1, u2} R A) (CoeTCₓ.coe.{succ u2, max (succ u1) (succ u2)} A (Unitization.{u1, u2} R A) (Unitization.hasCoeT.{u1, u2} R A (AddZeroClass.toHasZero.{u1} R _inst_1)))) m₁) ((fun (a : Type.{u2}) (b : Sort.{max (succ u1) (succ u2)}) [self : HasLiftT.{succ u2, max (succ u1) (succ u2)} a b] => self.0) A (Unitization.{u1, u2} R A) (HasLiftT.mk.{succ u2, max (succ u1) (succ u2)} A (Unitization.{u1, u2} R A) (CoeTCₓ.coe.{succ u2, max (succ u1) (succ u2)} A (Unitization.{u1, u2} R A) (Unitization.hasCoeT.{u1, u2} R A (AddZeroClass.toHasZero.{u1} R _inst_1)))) m₂))
+but is expected to have type
+  forall (R : Type.{u2}) {A : Type.{u1}} [_inst_1 : AddZeroClass.{u2} R] [_inst_2 : Add.{u1} A] (m₁ : A) (m₂ : A), Eq.{max (succ u2) (succ u1)} (Unitization.{u2, u1} R A) (Unitization.inr.{u2, u1} R A (AddZeroClass.toZero.{u2} R _inst_1) (HAdd.hAdd.{u1, u1, u1} A A A (instHAdd.{u1} A _inst_2) m₁ m₂)) (HAdd.hAdd.{max u2 u1, max u2 u1, max u2 u1} (Unitization.{u2, u1} R A) (Unitization.{u2, u1} R A) (Unitization.{u2, u1} R A) (instHAdd.{max u2 u1} (Unitization.{u2, u1} R A) (Unitization.add.{u2, u1} R A (AddZeroClass.toAdd.{u2} R _inst_1) _inst_2)) (Unitization.inr.{u2, u1} R A (AddZeroClass.toZero.{u2} R _inst_1) m₁) (Unitization.inr.{u2, u1} R A (AddZeroClass.toZero.{u2} R _inst_1) m₂))
+Case conversion may be inaccurate. Consider using '#align unitization.coe_add Unitization.inr_addₓ'. -/
 @[simp]
-theorem coe_add [AddZeroClass R] [Add A] (m₁ m₂ : A) : (↑(m₁ + m₂) : Unitization R A) = m₁ + m₂ :=
+theorem inr_add [AddZeroClass R] [Add A] (m₁ m₂ : A) : (↑(m₁ + m₂) : Unitization R A) = m₁ + m₂ :=
   ext (add_zero 0).symm rfl
-#align unitization.coe_add Unitization.coe_add
-
+#align unitization.coe_add Unitization.inr_add
+
+/- warning: unitization.coe_neg -> Unitization.inr_neg is a dubious translation:
+lean 3 declaration is
+  forall (R : Type.{u1}) {A : Type.{u2}} [_inst_1 : AddGroup.{u1} R] [_inst_2 : Neg.{u2} A] (m : A), Eq.{max (succ u1) (succ u2)} (Unitization.{u1, u2} R A) ((fun (a : Type.{u2}) (b : Sort.{max (succ u1) (succ u2)}) [self : HasLiftT.{succ u2, max (succ u1) (succ u2)} a b] => self.0) A (Unitization.{u1, u2} R A) (HasLiftT.mk.{succ u2, max (succ u1) (succ u2)} A (Unitization.{u1, u2} R A) (CoeTCₓ.coe.{succ u2, max (succ u1) (succ u2)} A (Unitization.{u1, u2} R A) (Unitization.hasCoeT.{u1, u2} R A (AddZeroClass.toHasZero.{u1} R (AddMonoid.toAddZeroClass.{u1} R (SubNegMonoid.toAddMonoid.{u1} R (AddGroup.toSubNegMonoid.{u1} R _inst_1))))))) (Neg.neg.{u2} A _inst_2 m)) (Neg.neg.{max u1 u2} (Unitization.{u1, u2} R A) (Unitization.hasNeg.{u1, u2} R A (SubNegMonoid.toHasNeg.{u1} R (AddGroup.toSubNegMonoid.{u1} R _inst_1)) _inst_2) ((fun (a : Type.{u2}) (b : Sort.{max (succ u1) (succ u2)}) [self : HasLiftT.{succ u2, max (succ u1) (succ u2)} a b] => self.0) A (Unitization.{u1, u2} R A) (HasLiftT.mk.{succ u2, max (succ u1) (succ u2)} A (Unitization.{u1, u2} R A) (CoeTCₓ.coe.{succ u2, max (succ u1) (succ u2)} A (Unitization.{u1, u2} R A) (Unitization.hasCoeT.{u1, u2} R A (AddZeroClass.toHasZero.{u1} R (AddMonoid.toAddZeroClass.{u1} R (SubNegMonoid.toAddMonoid.{u1} R (AddGroup.toSubNegMonoid.{u1} R _inst_1))))))) m))
+but is expected to have type
+  forall (R : Type.{u2}) {A : Type.{u1}} [_inst_1 : AddGroup.{u2} R] [_inst_2 : Neg.{u1} A] (m : A), Eq.{max (succ u2) (succ u1)} (Unitization.{u2, u1} R A) (Unitization.inr.{u2, u1} R A (NegZeroClass.toZero.{u2} R (SubNegZeroMonoid.toNegZeroClass.{u2} R (SubtractionMonoid.toSubNegZeroMonoid.{u2} R (AddGroup.toSubtractionMonoid.{u2} R _inst_1)))) (Neg.neg.{u1} A _inst_2 m)) (Neg.neg.{max u2 u1} (Unitization.{u2, u1} R A) (Unitization.neg.{u2, u1} R A (NegZeroClass.toNeg.{u2} R (SubNegZeroMonoid.toNegZeroClass.{u2} R (SubtractionMonoid.toSubNegZeroMonoid.{u2} R (AddGroup.toSubtractionMonoid.{u2} R _inst_1)))) _inst_2) (Unitization.inr.{u2, u1} R A (NegZeroClass.toZero.{u2} R (SubNegZeroMonoid.toNegZeroClass.{u2} R (SubtractionMonoid.toSubNegZeroMonoid.{u2} R (AddGroup.toSubtractionMonoid.{u2} R _inst_1)))) m))
+Case conversion may be inaccurate. Consider using '#align unitization.coe_neg Unitization.inr_negₓ'. -/
 @[simp]
-theorem coe_neg [AddGroup R] [Neg A] (m : A) : (↑(-m) : Unitization R A) = -m :=
+theorem inr_neg [AddGroup R] [Neg A] (m : A) : (↑(-m) : Unitization R A) = -m :=
   ext neg_zero.symm rfl
-#align unitization.coe_neg Unitization.coe_neg
-
+#align unitization.coe_neg Unitization.inr_neg
+
+/- warning: unitization.coe_smul -> Unitization.inr_smul is a dubious translation:
+lean 3 declaration is
+  forall {S : Type.{u1}} (R : Type.{u2}) {A : Type.{u3}} [_inst_1 : Zero.{u2} R] [_inst_2 : Zero.{u1} S] [_inst_3 : SMulWithZero.{u1, u2} S R _inst_2 _inst_1] [_inst_4 : SMul.{u1, u3} S A] (r : S) (m : A), Eq.{max (succ u2) (succ u3)} (Unitization.{u2, u3} R A) ((fun (a : Type.{u3}) (b : Sort.{max (succ u2) (succ u3)}) [self : HasLiftT.{succ u3, max (succ u2) (succ u3)} a b] => self.0) A (Unitization.{u2, u3} R A) (HasLiftT.mk.{succ u3, max (succ u2) (succ u3)} A (Unitization.{u2, u3} R A) (CoeTCₓ.coe.{succ u3, max (succ u2) (succ u3)} A (Unitization.{u2, u3} R A) (Unitization.hasCoeT.{u2, u3} R A _inst_1))) (SMul.smul.{u1, u3} S A _inst_4 r m)) (SMul.smul.{u1, max u2 u3} S (Unitization.{u2, u3} R A) (Unitization.hasSmul.{u1, u2, u3} S R A (SMulZeroClass.toHasSmul.{u1, u2} S R _inst_1 (SMulWithZero.toSmulZeroClass.{u1, u2} S R _inst_2 _inst_1 _inst_3)) _inst_4) r ((fun (a : Type.{u3}) (b : Sort.{max (succ u2) (succ u3)}) [self : HasLiftT.{succ u3, max (succ u2) (succ u3)} a b] => self.0) A (Unitization.{u2, u3} R A) (HasLiftT.mk.{succ u3, max (succ u2) (succ u3)} A (Unitization.{u2, u3} R A) (CoeTCₓ.coe.{succ u3, max (succ u2) (succ u3)} A (Unitization.{u2, u3} R A) (Unitization.hasCoeT.{u2, u3} R A _inst_1))) m))
+but is expected to have type
+  forall {S : Type.{u2}} (R : Type.{u3}) {A : Type.{u1}} [_inst_1 : Zero.{u3} R] [_inst_2 : Zero.{u2} S] [_inst_3 : SMulWithZero.{u2, u3} S R _inst_2 _inst_1] [_inst_4 : SMul.{u2, u1} S A] (r : S) (m : A), Eq.{max (succ u3) (succ u1)} (Unitization.{u3, u1} R A) (Unitization.inr.{u3, u1} R A _inst_1 (HSMul.hSMul.{u2, u1, u1} S A A (instHSMul.{u2, u1} S A _inst_4) r m)) (HSMul.hSMul.{u2, max u3 u1, max u3 u1} S (Unitization.{u3, u1} R A) (Unitization.{u3, u1} R A) (instHSMul.{u2, max u3 u1} S (Unitization.{u3, u1} R A) (Unitization.smul.{u2, u3, u1} S R A (SMulZeroClass.toSMul.{u2, u3} S R _inst_1 (SMulWithZero.toSMulZeroClass.{u2, u3} S R _inst_2 _inst_1 _inst_3)) _inst_4)) r (Unitization.inr.{u3, u1} R A _inst_1 m))
+Case conversion may be inaccurate. Consider using '#align unitization.coe_smul Unitization.inr_smulₓ'. -/
 @[simp]
-theorem coe_smul [Zero R] [Zero S] [SMulWithZero S R] [SMul S A] (r : S) (m : A) :
+theorem inr_smul [Zero R] [Zero S] [SMulWithZero S R] [SMul S A] (r : S) (m : A) :
     (↑(r • m) : Unitization R A) = r • m :=
   ext (smul_zero _).symm rfl
-#align unitization.coe_smul Unitization.coe_smul
+#align unitization.coe_smul Unitization.inr_smul
 
 end
 
-theorem inl_fst_add_coe_snd_eq [AddZeroClass R] [AddZeroClass A] (x : Unitization R A) :
+/- warning: unitization.inl_fst_add_coe_snd_eq -> Unitization.inl_fst_add_inr_snd_eq is a dubious translation:
+lean 3 declaration is
+  forall {R : Type.{u1}} {A : Type.{u2}} [_inst_1 : AddZeroClass.{u1} R] [_inst_2 : AddZeroClass.{u2} A] (x : Unitization.{u1, u2} R A), Eq.{succ (max u1 u2)} (Unitization.{u1, u2} R A) (HAdd.hAdd.{max u1 u2, max u1 u2, max u1 u2} (Unitization.{u1, u2} R A) (Unitization.{u1, u2} R A) (Unitization.{u1, u2} R A) (instHAdd.{max u1 u2} (Unitization.{u1, u2} R A) (Unitization.hasAdd.{u1, u2} R A (AddZeroClass.toHasAdd.{u1} R _inst_1) (AddZeroClass.toHasAdd.{u2} A _inst_2))) (Unitization.inl.{u1, u2} R A (AddZeroClass.toHasZero.{u2} A _inst_2) (Unitization.fst.{u1, u2} R A x)) ((fun (a : Type.{u2}) (b : Sort.{max (succ u1) (succ u2)}) [self : HasLiftT.{succ u2, max (succ u1) (succ u2)} a b] => self.0) A (Unitization.{u1, u2} R A) (HasLiftT.mk.{succ u2, max (succ u1) (succ u2)} A (Unitization.{u1, u2} R A) (CoeTCₓ.coe.{succ u2, max (succ u1) (succ u2)} A (Unitization.{u1, u2} R A) (Unitization.hasCoeT.{u1, u2} R A (AddZeroClass.toHasZero.{u1} R _inst_1)))) (Unitization.snd.{u1, u2} R A x))) x
+but is expected to have type
+  forall {R : Type.{u2}} {A : Type.{u1}} [_inst_1 : AddZeroClass.{u2} R] [_inst_2 : AddZeroClass.{u1} A] (x : Unitization.{u2, u1} R A), Eq.{max (succ u2) (succ u1)} (Unitization.{u2, u1} R A) (HAdd.hAdd.{max u2 u1, max u2 u1, max u2 u1} (Unitization.{u2, u1} R A) (Unitization.{u2, u1} R A) (Unitization.{u2, u1} R A) (instHAdd.{max u2 u1} (Unitization.{u2, u1} R A) (Unitization.add.{u2, u1} R A (AddZeroClass.toAdd.{u2} R _inst_1) (AddZeroClass.toAdd.{u1} A _inst_2))) (Unitization.inl.{u2, u1} R A (AddZeroClass.toZero.{u1} A _inst_2) (Unitization.fst.{u2, u1} R A x)) (Unitization.inr.{u2, u1} R A (AddZeroClass.toZero.{u2} R _inst_1) (Unitization.snd.{u2, u1} R A x))) x
+Case conversion may be inaccurate. Consider using '#align unitization.inl_fst_add_coe_snd_eq Unitization.inl_fst_add_inr_snd_eqₓ'. -/
+theorem inl_fst_add_inr_snd_eq [AddZeroClass R] [AddZeroClass A] (x : Unitization R A) :
     inl x.fst + ↑x.snd = x :=
   ext (add_zero x.1) (zero_add x.2)
-#align unitization.inl_fst_add_coe_snd_eq Unitization.inl_fst_add_coe_snd_eq
-
+#align unitization.inl_fst_add_coe_snd_eq Unitization.inl_fst_add_inr_snd_eq
+
+/- warning: unitization.ind -> Unitization.ind is a dubious translation:
+lean 3 declaration is
+  forall {R : Type.{u1}} {A : Type.{u2}} [_inst_1 : AddZeroClass.{u1} R] [_inst_2 : AddZeroClass.{u2} A] {P : (Unitization.{u1, u2} R A) -> Prop}, (forall (r : R) (a : A), P (HAdd.hAdd.{max u1 u2, max u1 u2, max u1 u2} (Unitization.{u1, u2} R A) (Unitization.{u1, u2} R A) (Unitization.{u1, u2} R A) (instHAdd.{max u1 u2} (Unitization.{u1, u2} R A) (Unitization.hasAdd.{u1, u2} R A (AddZeroClass.toHasAdd.{u1} R _inst_1) (AddZeroClass.toHasAdd.{u2} A _inst_2))) (Unitization.inl.{u1, u2} R A (AddZeroClass.toHasZero.{u2} A _inst_2) r) ((fun (a : Type.{u2}) (b : Sort.{max (succ u1) (succ u2)}) [self : HasLiftT.{succ u2, max (succ u1) (succ u2)} a b] => self.0) A (Unitization.{u1, u2} R A) (HasLiftT.mk.{succ u2, max (succ u1) (succ u2)} A (Unitization.{u1, u2} R A) (CoeTCₓ.coe.{succ u2, max (succ u1) (succ u2)} A (Unitization.{u1, u2} R A) (Unitization.hasCoeT.{u1, u2} R A (AddZeroClass.toHasZero.{u1} R _inst_1)))) a))) -> (forall (x : Unitization.{u1, u2} R A), P x)
+but is expected to have type
+  forall {R : Type.{u2}} {A : Type.{u1}} [_inst_1 : AddZeroClass.{u2} R] [_inst_2 : AddZeroClass.{u1} A] {P : (Unitization.{u2, u1} R A) -> Prop}, (forall (r : R) (a : A), P (HAdd.hAdd.{max u2 u1, max u2 u1, max u2 u1} (Unitization.{u2, u1} R A) (Unitization.{u2, u1} R A) (Unitization.{u2, u1} R A) (instHAdd.{max u2 u1} (Unitization.{u2, u1} R A) (Unitization.add.{u2, u1} R A (AddZeroClass.toAdd.{u2} R _inst_1) (AddZeroClass.toAdd.{u1} A _inst_2))) (Unitization.inl.{u2, u1} R A (AddZeroClass.toZero.{u1} A _inst_2) r) (Unitization.inr.{u2, u1} R A (AddZeroClass.toZero.{u2} R _inst_1) a))) -> (forall (x : Unitization.{u2, u1} R A), P x)
+Case conversion may be inaccurate. Consider using '#align unitization.ind Unitization.indₓ'. -/
 /-- To show a property hold on all `unitization R A` it suffices to show it holds
 on terms of the form `inl r + a`.
 
 This can be used as `induction x using unitization.ind`. -/
 theorem ind {R A} [AddZeroClass R] [AddZeroClass A] {P : Unitization R A → Prop}
     (h : ∀ (r : R) (a : A), P (inl r + a)) (x) : P x :=
-  inl_fst_add_coe_snd_eq x ▸ h x.1 x.2
+  inl_fst_add_inr_snd_eq x ▸ h x.1 x.2
 #align unitization.ind Unitization.ind
 
+/- warning: unitization.linear_map_ext -> Unitization.linearMap_ext is a dubious translation:
+lean 3 declaration is
+  forall {S : Type.{u1}} {R : Type.{u2}} {A : Type.{u3}} {N : Type.{u4}} [_inst_1 : Semiring.{u1} S] [_inst_2 : AddCommMonoid.{u2} R] [_inst_3 : AddCommMonoid.{u3} A] [_inst_4 : AddCommMonoid.{u4} N] [_inst_5 : Module.{u1, u2} S R _inst_1 _inst_2] [_inst_6 : Module.{u1, u3} S A _inst_1 _inst_3] [_inst_7 : Module.{u1, u4} S N _inst_1 _inst_4] {{f : LinearMap.{u1, u1, max u2 u3, u4} S S _inst_1 _inst_1 (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_1)) (Unitization.{u2, u3} R A) N (Unitization.addCommMonoid.{u2, u3} R A _inst_2 _inst_3) _inst_4 (Unitization.module.{u1, u2, u3} S R A _inst_1 _inst_2 _inst_3 _inst_5 _inst_6) _inst_7}} {{g : LinearMap.{u1, u1, max u2 u3, u4} S S _inst_1 _inst_1 (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_1)) (Unitization.{u2, u3} R A) N (Unitization.addCommMonoid.{u2, u3} R A _inst_2 _inst_3) _inst_4 (Unitization.module.{u1, u2, u3} S R A _inst_1 _inst_2 _inst_3 _inst_5 _inst_6) _inst_7}}, (forall (r : R), Eq.{succ u4} N (coeFn.{max (succ (max u2 u3)) (succ u4), max (succ (max u2 u3)) (succ u4)} (LinearMap.{u1, u1, max u2 u3, u4} S S _inst_1 _inst_1 (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_1)) (Unitization.{u2, u3} R A) N (Unitization.addCommMonoid.{u2, u3} R A _inst_2 _inst_3) _inst_4 (Unitization.module.{u1, u2, u3} S R A _inst_1 _inst_2 _inst_3 _inst_5 _inst_6) _inst_7) (fun (_x : LinearMap.{u1, u1, max u2 u3, u4} S S _inst_1 _inst_1 (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_1)) (Unitization.{u2, u3} R A) N (Unitization.addCommMonoid.{u2, u3} R A _inst_2 _inst_3) _inst_4 (Unitization.module.{u1, u2, u3} S R A _inst_1 _inst_2 _inst_3 _inst_5 _inst_6) _inst_7) => (Unitization.{u2, u3} R A) -> N) (LinearMap.hasCoeToFun.{u1, u1, max u2 u3, u4} S S (Unitization.{u2, u3} R A) N _inst_1 _inst_1 (Unitization.addCommMonoid.{u2, u3} R A _inst_2 _inst_3) _inst_4 (Unitization.module.{u1, u2, u3} S R A _inst_1 _inst_2 _inst_3 _inst_5 _inst_6) _inst_7 (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_1))) f (Unitization.inl.{u2, u3} R A (AddZeroClass.toHasZero.{u3} A (AddMonoid.toAddZeroClass.{u3} A (AddCommMonoid.toAddMonoid.{u3} A _inst_3))) r)) (coeFn.{max (succ (max u2 u3)) (succ u4), max (succ (max u2 u3)) (succ u4)} (LinearMap.{u1, u1, max u2 u3, u4} S S _inst_1 _inst_1 (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_1)) (Unitization.{u2, u3} R A) N (Unitization.addCommMonoid.{u2, u3} R A _inst_2 _inst_3) _inst_4 (Unitization.module.{u1, u2, u3} S R A _inst_1 _inst_2 _inst_3 _inst_5 _inst_6) _inst_7) (fun (_x : LinearMap.{u1, u1, max u2 u3, u4} S S _inst_1 _inst_1 (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_1)) (Unitization.{u2, u3} R A) N (Unitization.addCommMonoid.{u2, u3} R A _inst_2 _inst_3) _inst_4 (Unitization.module.{u1, u2, u3} S R A _inst_1 _inst_2 _inst_3 _inst_5 _inst_6) _inst_7) => (Unitization.{u2, u3} R A) -> N) (LinearMap.hasCoeToFun.{u1, u1, max u2 u3, u4} S S (Unitization.{u2, u3} R A) N _inst_1 _inst_1 (Unitization.addCommMonoid.{u2, u3} R A _inst_2 _inst_3) _inst_4 (Unitization.module.{u1, u2, u3} S R A _inst_1 _inst_2 _inst_3 _inst_5 _inst_6) _inst_7 (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_1))) g (Unitization.inl.{u2, u3} R A (AddZeroClass.toHasZero.{u3} A (AddMonoid.toAddZeroClass.{u3} A (AddCommMonoid.toAddMonoid.{u3} A _inst_3))) r))) -> (forall (a : A), Eq.{succ u4} N (coeFn.{max (succ (max u2 u3)) (succ u4), max (succ (max u2 u3)) (succ u4)} (LinearMap.{u1, u1, max u2 u3, u4} S S _inst_1 _inst_1 (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_1)) (Unitization.{u2, u3} R A) N (Unitization.addCommMonoid.{u2, u3} R A _inst_2 _inst_3) _inst_4 (Unitization.module.{u1, u2, u3} S R A _inst_1 _inst_2 _inst_3 _inst_5 _inst_6) _inst_7) (fun (_x : LinearMap.{u1, u1, max u2 u3, u4} S S _inst_1 _inst_1 (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_1)) (Unitization.{u2, u3} R A) N (Unitization.addCommMonoid.{u2, u3} R A _inst_2 _inst_3) _inst_4 (Unitization.module.{u1, u2, u3} S R A _inst_1 _inst_2 _inst_3 _inst_5 _inst_6) _inst_7) => (Unitization.{u2, u3} R A) -> N) (LinearMap.hasCoeToFun.{u1, u1, max u2 u3, u4} S S (Unitization.{u2, u3} R A) N _inst_1 _inst_1 (Unitization.addCommMonoid.{u2, u3} R A _inst_2 _inst_3) _inst_4 (Unitization.module.{u1, u2, u3} S R A _inst_1 _inst_2 _inst_3 _inst_5 _inst_6) _inst_7 (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_1))) f ((fun (a : Type.{u3}) (b : Sort.{max (succ u2) (succ u3)}) [self : HasLiftT.{succ u3, max (succ u2) (succ u3)} a b] => self.0) A (Unitization.{u2, u3} R A) (HasLiftT.mk.{succ u3, max (succ u2) (succ u3)} A (Unitization.{u2, u3} R A) (CoeTCₓ.coe.{succ u3, max (succ u2) (succ u3)} A (Unitization.{u2, u3} R A) (Unitization.hasCoeT.{u2, u3} R A (AddZeroClass.toHasZero.{u2} R (AddMonoid.toAddZeroClass.{u2} R (AddCommMonoid.toAddMonoid.{u2} R _inst_2)))))) a)) (coeFn.{max (succ (max u2 u3)) (succ u4), max (succ (max u2 u3)) (succ u4)} (LinearMap.{u1, u1, max u2 u3, u4} S S _inst_1 _inst_1 (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_1)) (Unitization.{u2, u3} R A) N (Unitization.addCommMonoid.{u2, u3} R A _inst_2 _inst_3) _inst_4 (Unitization.module.{u1, u2, u3} S R A _inst_1 _inst_2 _inst_3 _inst_5 _inst_6) _inst_7) (fun (_x : LinearMap.{u1, u1, max u2 u3, u4} S S _inst_1 _inst_1 (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_1)) (Unitization.{u2, u3} R A) N (Unitization.addCommMonoid.{u2, u3} R A _inst_2 _inst_3) _inst_4 (Unitization.module.{u1, u2, u3} S R A _inst_1 _inst_2 _inst_3 _inst_5 _inst_6) _inst_7) => (Unitization.{u2, u3} R A) -> N) (LinearMap.hasCoeToFun.{u1, u1, max u2 u3, u4} S S (Unitization.{u2, u3} R A) N _inst_1 _inst_1 (Unitization.addCommMonoid.{u2, u3} R A _inst_2 _inst_3) _inst_4 (Unitization.module.{u1, u2, u3} S R A _inst_1 _inst_2 _inst_3 _inst_5 _inst_6) _inst_7 (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_1))) g ((fun (a : Type.{u3}) (b : Sort.{max (succ u2) (succ u3)}) [self : HasLiftT.{succ u3, max (succ u2) (succ u3)} a b] => self.0) A (Unitization.{u2, u3} R A) (HasLiftT.mk.{succ u3, max (succ u2) (succ u3)} A (Unitization.{u2, u3} R A) (CoeTCₓ.coe.{succ u3, max (succ u2) (succ u3)} A (Unitization.{u2, u3} R A) (Unitization.hasCoeT.{u2, u3} R A (AddZeroClass.toHasZero.{u2} R (AddMonoid.toAddZeroClass.{u2} R (AddCommMonoid.toAddMonoid.{u2} R _inst_2)))))) a))) -> (Eq.{max (succ (max u2 u3)) (succ u4)} (LinearMap.{u1, u1, max u2 u3, u4} S S _inst_1 _inst_1 (RingHom.id.{u1} S (Semiring.toNonAssocSemiring.{u1} S _inst_1)) (Unitization.{u2, u3} R A) N (Unitization.addCommMonoid.{u2, u3} R A _inst_2 _inst_3) _inst_4 (Unitization.module.{u1, u2, u3} S R A _inst_1 _inst_2 _inst_3 _inst_5 _inst_6) _inst_7) f g)
+but is expected to have type
+  forall {S : Type.{u3}} {R : Type.{u2}} {A : Type.{u1}} {N : Type.{u4}} [_inst_1 : Semiring.{u3} S] [_inst_2 : AddCommMonoid.{u2} R] [_inst_3 : AddCommMonoid.{u1} A] [_inst_4 : AddCommMonoid.{u4} N] [_inst_5 : Module.{u3, u2} S R _inst_1 _inst_2] [_inst_6 : Module.{u3, u1} S A _inst_1 _inst_3] [_inst_7 : Module.{u3, u4} S N _inst_1 _inst_4] {{f : LinearMap.{u3, u3, max u1 u2, u4} S S _inst_1 _inst_1 (RingHom.id.{u3} S (Semiring.toNonAssocSemiring.{u3} S _inst_1)) (Unitization.{u2, u1} R A) N (Unitization.addCommMonoid.{u2, u1} R A _inst_2 _inst_3) _inst_4 (Unitization.module.{u3, u2, u1} S R A _inst_1 _inst_2 _inst_3 _inst_5 _inst_6) _inst_7}} {{g : LinearMap.{u3, u3, max u1 u2, u4} S S _inst_1 _inst_1 (RingHom.id.{u3} S (Semiring.toNonAssocSemiring.{u3} S _inst_1)) (Unitization.{u2, u1} R A) N (Unitization.addCommMonoid.{u2, u1} R A _inst_2 _inst_3) _inst_4 (Unitization.module.{u3, u2, u1} S R A _inst_1 _inst_2 _inst_3 _inst_5 _inst_6) _inst_7}}, (forall (r : R), Eq.{succ u4} ((fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6190 : Unitization.{u2, u1} R A) => N) (Unitization.inl.{u2, u1} R A (AddMonoid.toZero.{u1} A (AddCommMonoid.toAddMonoid.{u1} A _inst_3)) r)) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u4), max (succ u2) (succ u1), succ u4} (LinearMap.{u3, u3, max u1 u2, u4} S S _inst_1 _inst_1 (RingHom.id.{u3} S (Semiring.toNonAssocSemiring.{u3} S _inst_1)) (Unitization.{u2, u1} R A) N (Unitization.addCommMonoid.{u2, u1} R A _inst_2 _inst_3) _inst_4 (Unitization.module.{u3, u2, u1} S R A _inst_1 _inst_2 _inst_3 _inst_5 _inst_6) _inst_7) (Unitization.{u2, u1} R A) (fun (_x : Unitization.{u2, u1} R A) => (fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6190 : Unitization.{u2, u1} R A) => N) _x) (LinearMap.instFunLikeLinearMap.{u3, u3, max u2 u1, u4} S S (Unitization.{u2, u1} R A) N _inst_1 _inst_1 (Unitization.addCommMonoid.{u2, u1} R A _inst_2 _inst_3) _inst_4 (Unitization.module.{u3, u2, u1} S R A _inst_1 _inst_2 _inst_3 _inst_5 _inst_6) _inst_7 (RingHom.id.{u3} S (Semiring.toNonAssocSemiring.{u3} S _inst_1))) f (Unitization.inl.{u2, u1} R A (AddMonoid.toZero.{u1} A (AddCommMonoid.toAddMonoid.{u1} A _inst_3)) r)) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u4), max (succ u2) (succ u1), succ u4} (LinearMap.{u3, u3, max u1 u2, u4} S S _inst_1 _inst_1 (RingHom.id.{u3} S (Semiring.toNonAssocSemiring.{u3} S _inst_1)) (Unitization.{u2, u1} R A) N (Unitization.addCommMonoid.{u2, u1} R A _inst_2 _inst_3) _inst_4 (Unitization.module.{u3, u2, u1} S R A _inst_1 _inst_2 _inst_3 _inst_5 _inst_6) _inst_7) (Unitization.{u2, u1} R A) (fun (_x : Unitization.{u2, u1} R A) => (fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6190 : Unitization.{u2, u1} R A) => N) _x) (LinearMap.instFunLikeLinearMap.{u3, u3, max u2 u1, u4} S S (Unitization.{u2, u1} R A) N _inst_1 _inst_1 (Unitization.addCommMonoid.{u2, u1} R A _inst_2 _inst_3) _inst_4 (Unitization.module.{u3, u2, u1} S R A _inst_1 _inst_2 _inst_3 _inst_5 _inst_6) _inst_7 (RingHom.id.{u3} S (Semiring.toNonAssocSemiring.{u3} S _inst_1))) g (Unitization.inl.{u2, u1} R A (AddMonoid.toZero.{u1} A (AddCommMonoid.toAddMonoid.{u1} A _inst_3)) r))) -> (forall (a : A), Eq.{succ u4} ((fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6190 : Unitization.{u2, u1} R A) => N) (Unitization.inr.{u2, u1} R A (AddMonoid.toZero.{u2} R (AddCommMonoid.toAddMonoid.{u2} R _inst_2)) a)) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u4), max (succ u2) (succ u1), succ u4} (LinearMap.{u3, u3, max u1 u2, u4} S S _inst_1 _inst_1 (RingHom.id.{u3} S (Semiring.toNonAssocSemiring.{u3} S _inst_1)) (Unitization.{u2, u1} R A) N (Unitization.addCommMonoid.{u2, u1} R A _inst_2 _inst_3) _inst_4 (Unitization.module.{u3, u2, u1} S R A _inst_1 _inst_2 _inst_3 _inst_5 _inst_6) _inst_7) (Unitization.{u2, u1} R A) (fun (_x : Unitization.{u2, u1} R A) => (fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6190 : Unitization.{u2, u1} R A) => N) _x) (LinearMap.instFunLikeLinearMap.{u3, u3, max u2 u1, u4} S S (Unitization.{u2, u1} R A) N _inst_1 _inst_1 (Unitization.addCommMonoid.{u2, u1} R A _inst_2 _inst_3) _inst_4 (Unitization.module.{u3, u2, u1} S R A _inst_1 _inst_2 _inst_3 _inst_5 _inst_6) _inst_7 (RingHom.id.{u3} S (Semiring.toNonAssocSemiring.{u3} S _inst_1))) f (Unitization.inr.{u2, u1} R A (AddMonoid.toZero.{u2} R (AddCommMonoid.toAddMonoid.{u2} R _inst_2)) a)) (FunLike.coe.{max (max (succ u2) (succ u1)) (succ u4), max (succ u2) (succ u1), succ u4} (LinearMap.{u3, u3, max u1 u2, u4} S S _inst_1 _inst_1 (RingHom.id.{u3} S (Semiring.toNonAssocSemiring.{u3} S _inst_1)) (Unitization.{u2, u1} R A) N (Unitization.addCommMonoid.{u2, u1} R A _inst_2 _inst_3) _inst_4 (Unitization.module.{u3, u2, u1} S R A _inst_1 _inst_2 _inst_3 _inst_5 _inst_6) _inst_7) (Unitization.{u2, u1} R A) (fun (_x : Unitization.{u2, u1} R A) => (fun (x._@.Mathlib.Algebra.Module.LinearMap._hyg.6190 : Unitization.{u2, u1} R A) => N) _x) (LinearMap.instFunLikeLinearMap.{u3, u3, max u2 u1, u4} S S (Unitization.{u2, u1} R A) N _inst_1 _inst_1 (Unitization.addCommMonoid.{u2, u1} R A _inst_2 _inst_3) _inst_4 (Unitization.module.{u3, u2, u1} S R A _inst_1 _inst_2 _inst_3 _inst_5 _inst_6) _inst_7 (RingHom.id.{u3} S (Semiring.toNonAssocSemiring.{u3} S _inst_1))) g (Unitization.inr.{u2, u1} R A (AddMonoid.toZero.{u2} R (AddCommMonoid.toAddMonoid.{u2} R _inst_2)) a))) -> (Eq.{max (max (succ u2) (succ u1)) (succ u4)} (LinearMap.{u3, u3, max u1 u2, u4} S S _inst_1 _inst_1 (RingHom.id.{u3} S (Semiring.toNonAssocSemiring.{u3} S _inst_1)) (Unitization.{u2, u1} R A) N (Unitization.addCommMonoid.{u2, u1} R A _inst_2 _inst_3) _inst_4 (Unitization.module.{u3, u2, u1} S R A _inst_1 _inst_2 _inst_3 _inst_5 _inst_6) _inst_7) f g)
+Case conversion may be inaccurate. Consider using '#align unitization.linear_map_ext Unitization.linearMap_extₓ'. -/
 /-- This cannot be marked `@[ext]` as it ends up being used instead of `linear_map.prod_ext` when
 working with `R × A`. -/
 theorem linearMap_ext {N} [Semiring S] [AddCommMonoid R] [AddCommMonoid A] [AddCommMonoid N]
@@ -317,17 +469,21 @@ theorem linearMap_ext {N} [Semiring S] [AddCommMonoid R] [AddCommMonoid A] [AddC
 
 variable (R A)
 
+#print Unitization.inrHom /-
 /-- The canonical `R`-linear inclusion `A → unitization R A`. -/
 @[simps apply]
-def coeHom [Semiring R] [AddCommMonoid A] [Module R A] : A →ₗ[R] Unitization R A :=
+def inrHom [Semiring R] [AddCommMonoid A] [Module R A] : A →ₗ[R] Unitization R A :=
   { LinearMap.inr R R A with toFun := coe }
-#align unitization.coe_hom Unitization.coeHom
+#align unitization.coe_hom Unitization.inrHom
+-/
 
+#print Unitization.sndHom /-
 /-- The canonical `R`-linear projection `unitization R A → A`. -/
 @[simps apply]
 def sndHom [Semiring R] [AddCommMonoid A] [Module R A] : Unitization R A →ₗ[R] A :=
   { LinearMap.snd _ _ _ with toFun := snd }
 #align unitization.snd_hom Unitization.sndHom
+-/
 
 end Additive
 
@@ -344,22 +500,46 @@ instance [One R] [Zero A] : One (Unitization R A) :=
 instance [Mul R] [Add A] [Mul A] [SMul R A] : Mul (Unitization R A) :=
   ⟨fun x y => (x.1 * y.1, x.1 • y.2 + y.1 • x.2 + x.2 * y.2)⟩
 
+/- warning: unitization.fst_one -> Unitization.fst_one is a dubious translation:
+lean 3 declaration is
+  forall {R : Type.{u1}} {A : Type.{u2}} [_inst_1 : One.{u1} R] [_inst_2 : Zero.{u2} A], Eq.{succ u1} R (Unitization.fst.{u1, u2} R A (OfNat.ofNat.{max u1 u2} (Unitization.{u1, u2} R A) 1 (OfNat.mk.{max u1 u2} (Unitization.{u1, u2} R A) 1 (One.one.{max u1 u2} (Unitization.{u1, u2} R A) (Unitization.hasOne.{u1, u2} R A _inst_1 _inst_2))))) (OfNat.ofNat.{u1} R 1 (OfNat.mk.{u1} R 1 (One.one.{u1} R _inst_1)))
+but is expected to have type
+  forall {R : Type.{u2}} {A : Type.{u1}} [_inst_1 : One.{u2} R] [_inst_2 : Zero.{u1} A], Eq.{succ u2} R (Unitization.fst.{u2, u1} R A (OfNat.ofNat.{max u2 u1} (Unitization.{u2, u1} R A) 1 (One.toOfNat1.{max u2 u1} (Unitization.{u2, u1} R A) (Unitization.one.{u2, u1} R A _inst_1 _inst_2)))) (OfNat.ofNat.{u2} R 1 (One.toOfNat1.{u2} R _inst_1))
+Case conversion may be inaccurate. Consider using '#align unitization.fst_one Unitization.fst_oneₓ'. -/
 @[simp]
 theorem fst_one [One R] [Zero A] : (1 : Unitization R A).fst = 1 :=
   rfl
 #align unitization.fst_one Unitization.fst_one
 
+/- warning: unitization.snd_one -> Unitization.snd_one is a dubious translation:
+lean 3 declaration is
+  forall {R : Type.{u1}} {A : Type.{u2}} [_inst_1 : One.{u1} R] [_inst_2 : Zero.{u2} A], Eq.{succ u2} A (Unitization.snd.{u1, u2} R A (OfNat.ofNat.{max u1 u2} (Unitization.{u1, u2} R A) 1 (OfNat.mk.{max u1 u2} (Unitization.{u1, u2} R A) 1 (One.one.{max u1 u2} (Unitization.{u1, u2} R A) (Unitization.hasOne.{u1, u2} R A _inst_1 _inst_2))))) (OfNat.ofNat.{u2} A 0 (OfNat.mk.{u2} A 0 (Zero.zero.{u2} A _inst_2)))
+but is expected to have type
+  forall {R : Type.{u2}} {A : Type.{u1}} [_inst_1 : One.{u2} R] [_inst_2 : Zero.{u1} A], Eq.{succ u1} A (Unitization.snd.{u2, u1} R A (OfNat.ofNat.{max u2 u1} (Unitization.{u2, u1} R A) 1 (One.toOfNat1.{max u2 u1} (Unitization.{u2, u1} R A) (Unitization.one.{u2, u1} R A _inst_1 _inst_2)))) (OfNat.ofNat.{u1} A 0 (Zero.toOfNat0.{u1} A _inst_2))
+Case conversion may be inaccurate. Consider using '#align unitization.snd_one Unitization.snd_oneₓ'. -/
 @[simp]
 theorem snd_one [One R] [Zero A] : (1 : Unitization R A).snd = 0 :=
   rfl
 #align unitization.snd_one Unitization.snd_one
 
+/- warning: unitization.fst_mul -> Unitization.fst_mul is a dubious translation:
+lean 3 declaration is
+  forall {R : Type.{u1}} {A : Type.{u2}} [_inst_1 : Mul.{u1} R] [_inst_2 : Add.{u2} A] [_inst_3 : Mul.{u2} A] [_inst_4 : SMul.{u1, u2} R A] (x₁ : Unitization.{u1, u2} R A) (x₂ : Unitization.{u1, u2} R A), Eq.{succ u1} R (Unitization.fst.{u1, u2} R A (HMul.hMul.{max u1 u2, max u1 u2, max u1 u2} (Unitization.{u1, u2} R A) (Unitization.{u1, u2} R A) (Unitization.{u1, u2} R A) (instHMul.{max u1 u2} (Unitization.{u1, u2} R A) (Unitization.hasMul.{u1, u2} R A _inst_1 _inst_2 _inst_3 _inst_4)) x₁ x₂)) (HMul.hMul.{u1, u1, u1} R R R (instHMul.{u1} R _inst_1) (Unitization.fst.{u1, u2} R A x₁) (Unitization.fst.{u1, u2} R A x₂))
+but is expected to have type
+  forall {R : Type.{u2}} {A : Type.{u1}} [_inst_1 : Mul.{u2} R] [_inst_2 : Add.{u1} A] [_inst_3 : Mul.{u1} A] [_inst_4 : SMul.{u2, u1} R A] (x₁ : Unitization.{u2, u1} R A) (x₂ : Unitization.{u2, u1} R A), Eq.{succ u2} R (Unitization.fst.{u2, u1} R A (HMul.hMul.{max u2 u1, max u2 u1, max u2 u1} (Unitization.{u2, u1} R A) (Unitization.{u2, u1} R A) (Unitization.{u2, u1} R A) (instHMul.{max u2 u1} (Unitization.{u2, u1} R A) (Unitization.mul.{u2, u1} R A _inst_1 _inst_2 _inst_3 _inst_4)) x₁ x₂)) (HMul.hMul.{u2, u2, u2} R R R (instHMul.{u2} R _inst_1) (Unitization.fst.{u2, u1} R A x₁) (Unitization.fst.{u2, u1} R A x₂))
+Case conversion may be inaccurate. Consider using '#align unitization.fst_mul Unitization.fst_mulₓ'. -/
 @[simp]
 theorem fst_mul [Mul R] [Add A] [Mul A] [SMul R A] (x₁ x₂ : Unitization R A) :
     (x₁ * x₂).fst = x₁.fst * x₂.fst :=
   rfl
 #align unitization.fst_mul Unitization.fst_mul
 
+/- warning: unitization.snd_mul -> Unitization.snd_mul is a dubious translation:
+lean 3 declaration is
+  forall {R : Type.{u1}} {A : Type.{u2}} [_inst_1 : Mul.{u1} R] [_inst_2 : Add.{u2} A] [_inst_3 : Mul.{u2} A] [_inst_4 : SMul.{u1, u2} R A] (x₁ : Unitization.{u1, u2} R A) (x₂ : Unitization.{u1, u2} R A), Eq.{succ u2} A (Unitization.snd.{u1, u2} R A (HMul.hMul.{max u1 u2, max u1 u2, max u1 u2} (Unitization.{u1, u2} R A) (Unitization.{u1, u2} R A) (Unitization.{u1, u2} R A) (instHMul.{max u1 u2} (Unitization.{u1, u2} R A) (Unitization.hasMul.{u1, u2} R A _inst_1 _inst_2 _inst_3 _inst_4)) x₁ x₂)) (HAdd.hAdd.{u2, u2, u2} A A A (instHAdd.{u2} A _inst_2) (HAdd.hAdd.{u2, u2, u2} A A A (instHAdd.{u2} A _inst_2) (SMul.smul.{u1, u2} R A _inst_4 (Unitization.fst.{u1, u2} R A x₁) (Unitization.snd.{u1, u2} R A x₂)) (SMul.smul.{u1, u2} R A _inst_4 (Unitization.fst.{u1, u2} R A x₂) (Unitization.snd.{u1, u2} R A x₁))) (HMul.hMul.{u2, u2, u2} A A A (instHMul.{u2} A _inst_3) (Unitization.snd.{u1, u2} R A x₁) (Unitization.snd.{u1, u2} R A x₂)))
+but is expected to have type
+  forall {R : Type.{u2}} {A : Type.{u1}} [_inst_1 : Mul.{u2} R] [_inst_2 : Add.{u1} A] [_inst_3 : Mul.{u1} A] [_inst_4 : SMul.{u2, u1} R A] (x₁ : Unitization.{u2, u1} R A) (x₂ : Unitization.{u2, u1} R A), Eq.{succ u1} A (Unitization.snd.{u2, u1} R A (HMul.hMul.{max u2 u1, max u2 u1, max u2 u1} (Unitization.{u2, u1} R A) (Unitization.{u2, u1} R A) (Unitization.{u2, u1} R A) (instHMul.{max u2 u1} (Unitization.{u2, u1} R A) (Unitization.mul.{u2, u1} R A _inst_1 _inst_2 _inst_3 _inst_4)) x₁ x₂)) (HAdd.hAdd.{u1, u1, u1} A A A (instHAdd.{u1} A _inst_2) (HAdd.hAdd.{u1, u1, u1} A A A (instHAdd.{u1} A _inst_2) (HSMul.hSMul.{u2, u1, u1} R A A (instHSMul.{u2, u1} R A _inst_4) (Unitization.fst.{u2, u1} R A x₁) (Unitization.snd.{u2, u1} R A x₂)) (HSMul.hSMul.{u2, u1, u1} R A A (instHSMul.{u2, u1} R A _inst_4) (Unitization.fst.{u2, u1} R A x₂) (Unitization.snd.{u2, u1} R A x₁))) (HMul.hMul.{u1, u1, u1} A A A (instHMul.{u1} A _inst_3) (Unitization.snd.{u2, u1} R A x₁) (Unitization.snd.{u2, u1} R A x₂)))
+Case conversion may be inaccurate. Consider using '#align unitization.snd_mul Unitization.snd_mulₓ'. -/
 @[simp]
 theorem snd_mul [Mul R] [Add A] [Mul A] [SMul R A] (x₁ x₂ : Unitization R A) :
     (x₁ * x₂).snd = x₁.fst • x₂.snd + x₂.fst • x₁.snd + x₁.snd * x₂.snd :=
@@ -370,11 +550,23 @@ section
 
 variable (A)
 
+/- warning: unitization.inl_one -> Unitization.inl_one is a dubious translation:
+lean 3 declaration is
+  forall {R : Type.{u1}} (A : Type.{u2}) [_inst_1 : One.{u1} R] [_inst_2 : Zero.{u2} A], Eq.{max (succ u1) (succ u2)} (Unitization.{u1, u2} R A) (Unitization.inl.{u1, u2} R A _inst_2 (OfNat.ofNat.{u1} R 1 (OfNat.mk.{u1} R 1 (One.one.{u1} R _inst_1)))) (OfNat.ofNat.{max u1 u2} (Unitization.{u1, u2} R A) 1 (OfNat.mk.{max u1 u2} (Unitization.{u1, u2} R A) 1 (One.one.{max u1 u2} (Unitization.{u1, u2} R A) (Unitization.hasOne.{u1, u2} R A _inst_1 _inst_2))))
+but is expected to have type
+  forall {R : Type.{u2}} (A : Type.{u1}) [_inst_1 : One.{u2} R] [_inst_2 : Zero.{u1} A], Eq.{max (succ u2) (succ u1)} (Unitization.{u2, u1} R A) (Unitization.inl.{u2, u1} R A _inst_2 (OfNat.ofNat.{u2} R 1 (One.toOfNat1.{u2} R _inst_1))) (OfNat.ofNat.{max u2 u1} (Unitization.{u2, u1} R A) 1 (One.toOfNat1.{max u2 u1} (Unitization.{u2, u1} R A) (Unitization.one.{u2, u1} R A _inst_1 _inst_2)))
+Case conversion may be inaccurate. Consider using '#align unitization.inl_one Unitization.inl_oneₓ'. -/
 @[simp]
 theorem inl_one [One R] [Zero A] : (inl 1 : Unitization R A) = 1 :=
   rfl
 #align unitization.inl_one Unitization.inl_one
 
+/- warning: unitization.inl_mul -> Unitization.inl_mul is a dubious translation:
+lean 3 declaration is
+  forall {R : Type.{u1}} (A : Type.{u2}) [_inst_1 : Monoid.{u1} R] [_inst_2 : NonUnitalNonAssocSemiring.{u2} A] [_inst_3 : DistribMulAction.{u1, u2} R A _inst_1 (AddCommMonoid.toAddMonoid.{u2} A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A _inst_2))] (r₁ : R) (r₂ : R), Eq.{max (succ u1) (succ u2)} (Unitization.{u1, u2} R A) (Unitization.inl.{u1, u2} R A (MulZeroClass.toHasZero.{u2} A (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} A _inst_2)) (HMul.hMul.{u1, u1, u1} R R R (instHMul.{u1} R (MulOneClass.toHasMul.{u1} R (Monoid.toMulOneClass.{u1} R _inst_1))) r₁ r₂)) (HMul.hMul.{max u1 u2, max u1 u2, max u1 u2} (Unitization.{u1, u2} R A) (Unitization.{u1, u2} R A) (Unitization.{u1, u2} R A) (instHMul.{max u1 u2} (Unitization.{u1, u2} R A) (Unitization.hasMul.{u1, u2} R A (MulOneClass.toHasMul.{u1} R (Monoid.toMulOneClass.{u1} R _inst_1)) (Distrib.toHasAdd.{u2} A (NonUnitalNonAssocSemiring.toDistrib.{u2} A _inst_2)) (Distrib.toHasMul.{u2} A (NonUnitalNonAssocSemiring.toDistrib.{u2} A _inst_2)) (SMulZeroClass.toHasSmul.{u1, u2} R A (AddZeroClass.toHasZero.{u2} A (AddMonoid.toAddZeroClass.{u2} A (AddCommMonoid.toAddMonoid.{u2} A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A _inst_2)))) (DistribSMul.toSmulZeroClass.{u1, u2} R A (AddMonoid.toAddZeroClass.{u2} A (AddCommMonoid.toAddMonoid.{u2} A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A _inst_2))) (DistribMulAction.toDistribSMul.{u1, u2} R A _inst_1 (AddCommMonoid.toAddMonoid.{u2} A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A _inst_2)) _inst_3))))) (Unitization.inl.{u1, u2} R A (MulZeroClass.toHasZero.{u2} A (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} A _inst_2)) r₁) (Unitization.inl.{u1, u2} R A (MulZeroClass.toHasZero.{u2} A (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} A _inst_2)) r₂))
+but is expected to have type
+  forall {R : Type.{u2}} (A : Type.{u1}) [_inst_1 : Monoid.{u2} R] [_inst_2 : NonUnitalNonAssocSemiring.{u1} A] [_inst_3 : DistribMulAction.{u2, u1} R A _inst_1 (AddCommMonoid.toAddMonoid.{u1} A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A _inst_2))] (r₁ : R) (r₂ : R), Eq.{max (succ u2) (succ u1)} (Unitization.{u2, u1} R A) (Unitization.inl.{u2, u1} R A (MulZeroClass.toZero.{u1} A (NonUnitalNonAssocSemiring.toMulZeroClass.{u1} A _inst_2)) (HMul.hMul.{u2, u2, u2} R R R (instHMul.{u2} R (MulOneClass.toMul.{u2} R (Monoid.toMulOneClass.{u2} R _inst_1))) r₁ r₂)) (HMul.hMul.{max u2 u1, max u2 u1, max u2 u1} (Unitization.{u2, u1} R A) (Unitization.{u2, u1} R A) (Unitization.{u2, u1} R A) (instHMul.{max u2 u1} (Unitization.{u2, u1} R A) (Unitization.mul.{u2, u1} R A (MulOneClass.toMul.{u2} R (Monoid.toMulOneClass.{u2} R _inst_1)) (Distrib.toAdd.{u1} A (NonUnitalNonAssocSemiring.toDistrib.{u1} A _inst_2)) (NonUnitalNonAssocSemiring.toMul.{u1} A _inst_2) (SMulZeroClass.toSMul.{u2, u1} R A (MulZeroClass.toZero.{u1} A (NonUnitalNonAssocSemiring.toMulZeroClass.{u1} A _inst_2)) (DistribSMul.toSMulZeroClass.{u2, u1} R A (AddMonoid.toAddZeroClass.{u1} A (AddCommMonoid.toAddMonoid.{u1} A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A _inst_2))) (DistribMulAction.toDistribSMul.{u2, u1} R A _inst_1 (AddCommMonoid.toAddMonoid.{u1} A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A _inst_2)) _inst_3))))) (Unitization.inl.{u2, u1} R A (MulZeroClass.toZero.{u1} A (NonUnitalNonAssocSemiring.toMulZeroClass.{u1} A _inst_2)) r₁) (Unitization.inl.{u2, u1} R A (MulZeroClass.toZero.{u1} A (NonUnitalNonAssocSemiring.toMulZeroClass.{u1} A _inst_2)) r₂))
+Case conversion may be inaccurate. Consider using '#align unitization.inl_mul Unitization.inl_mulₓ'. -/
 @[simp]
 theorem inl_mul [Monoid R] [NonUnitalNonAssocSemiring A] [DistribMulAction R A] (r₁ r₂ : R) :
     (inl (r₁ * r₂) : Unitization R A) = inl r₁ * inl r₂ :=
@@ -383,6 +575,12 @@ theorem inl_mul [Monoid R] [NonUnitalNonAssocSemiring A] [DistribMulAction R A]
       simp only [smul_zero, add_zero, MulZeroClass.mul_zero]
 #align unitization.inl_mul Unitization.inl_mul
 
+/- warning: unitization.inl_mul_inl -> Unitization.inl_mul_inl is a dubious translation:
+lean 3 declaration is
+  forall {R : Type.{u1}} (A : Type.{u2}) [_inst_1 : Monoid.{u1} R] [_inst_2 : NonUnitalNonAssocSemiring.{u2} A] [_inst_3 : DistribMulAction.{u1, u2} R A _inst_1 (AddCommMonoid.toAddMonoid.{u2} A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A _inst_2))] (r₁ : R) (r₂ : R), Eq.{max (succ u1) (succ u2)} (Unitization.{u1, u2} R A) (HMul.hMul.{max u1 u2, max u1 u2, max u1 u2} (Unitization.{u1, u2} R A) (Unitization.{u1, u2} R A) (Unitization.{u1, u2} R A) (instHMul.{max u1 u2} (Unitization.{u1, u2} R A) (Unitization.hasMul.{u1, u2} R A (MulOneClass.toHasMul.{u1} R (Monoid.toMulOneClass.{u1} R _inst_1)) (Distrib.toHasAdd.{u2} A (NonUnitalNonAssocSemiring.toDistrib.{u2} A _inst_2)) (Distrib.toHasMul.{u2} A (NonUnitalNonAssocSemiring.toDistrib.{u2} A _inst_2)) (SMulZeroClass.toHasSmul.{u1, u2} R A (AddZeroClass.toHasZero.{u2} A (AddMonoid.toAddZeroClass.{u2} A (AddCommMonoid.toAddMonoid.{u2} A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A _inst_2)))) (DistribSMul.toSmulZeroClass.{u1, u2} R A (AddMonoid.toAddZeroClass.{u2} A (AddCommMonoid.toAddMonoid.{u2} A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A _inst_2))) (DistribMulAction.toDistribSMul.{u1, u2} R A _inst_1 (AddCommMonoid.toAddMonoid.{u2} A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A _inst_2)) _inst_3))))) (Unitization.inl.{u1, u2} R A (MulZeroClass.toHasZero.{u2} A (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} A _inst_2)) r₁) (Unitization.inl.{u1, u2} R A (MulZeroClass.toHasZero.{u2} A (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} A _inst_2)) r₂)) (Unitization.inl.{u1, u2} R A (MulZeroClass.toHasZero.{u2} A (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} A _inst_2)) (HMul.hMul.{u1, u1, u1} R R R (instHMul.{u1} R (MulOneClass.toHasMul.{u1} R (Monoid.toMulOneClass.{u1} R _inst_1))) r₁ r₂))
+but is expected to have type
+  forall {R : Type.{u2}} (A : Type.{u1}) [_inst_1 : Monoid.{u2} R] [_inst_2 : NonUnitalNonAssocSemiring.{u1} A] [_inst_3 : DistribMulAction.{u2, u1} R A _inst_1 (AddCommMonoid.toAddMonoid.{u1} A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A _inst_2))] (r₁ : R) (r₂ : R), Eq.{max (succ u2) (succ u1)} (Unitization.{u2, u1} R A) (HMul.hMul.{max u2 u1, max u2 u1, max u2 u1} (Unitization.{u2, u1} R A) (Unitization.{u2, u1} R A) (Unitization.{u2, u1} R A) (instHMul.{max u2 u1} (Unitization.{u2, u1} R A) (Unitization.mul.{u2, u1} R A (MulOneClass.toMul.{u2} R (Monoid.toMulOneClass.{u2} R _inst_1)) (Distrib.toAdd.{u1} A (NonUnitalNonAssocSemiring.toDistrib.{u1} A _inst_2)) (NonUnitalNonAssocSemiring.toMul.{u1} A _inst_2) (SMulZeroClass.toSMul.{u2, u1} R A (MulZeroClass.toZero.{u1} A (NonUnitalNonAssocSemiring.toMulZeroClass.{u1} A _inst_2)) (DistribSMul.toSMulZeroClass.{u2, u1} R A (AddMonoid.toAddZeroClass.{u1} A (AddCommMonoid.toAddMonoid.{u1} A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A _inst_2))) (DistribMulAction.toDistribSMul.{u2, u1} R A _inst_1 (AddCommMonoid.toAddMonoid.{u1} A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A _inst_2)) _inst_3))))) (Unitization.inl.{u2, u1} R A (MulZeroClass.toZero.{u1} A (NonUnitalNonAssocSemiring.toMulZeroClass.{u1} A _inst_2)) r₁) (Unitization.inl.{u2, u1} R A (MulZeroClass.toZero.{u1} A (NonUnitalNonAssocSemiring.toMulZeroClass.{u1} A _inst_2)) r₂)) (Unitization.inl.{u2, u1} R A (MulZeroClass.toZero.{u1} A (NonUnitalNonAssocSemiring.toMulZeroClass.{u1} A _inst_2)) (HMul.hMul.{u2, u2, u2} R R R (instHMul.{u2} R (MulOneClass.toMul.{u2} R (Monoid.toMulOneClass.{u2} R _inst_1))) r₁ r₂))
+Case conversion may be inaccurate. Consider using '#align unitization.inl_mul_inl Unitization.inl_mul_inlₓ'. -/
 theorem inl_mul_inl [Monoid R] [NonUnitalNonAssocSemiring A] [DistribMulAction R A] (r₁ r₂ : R) :
     (inl r₁ * inl r₂ : Unitization R A) = inl (r₁ * r₂) :=
   (inl_mul A r₁ r₂).symm
@@ -394,29 +592,48 @@ section
 
 variable (R)
 
+/- warning: unitization.coe_mul -> Unitization.inr_mul is a dubious translation:
+lean 3 declaration is
+  forall (R : Type.{u1}) {A : Type.{u2}} [_inst_1 : Semiring.{u1} R] [_inst_2 : AddCommMonoid.{u2} A] [_inst_3 : Mul.{u2} A] [_inst_4 : SMulWithZero.{u1, u2} R A (MulZeroClass.toHasZero.{u1} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) (AddZeroClass.toHasZero.{u2} A (AddMonoid.toAddZeroClass.{u2} A (AddCommMonoid.toAddMonoid.{u2} A _inst_2)))] (a₁ : A) (a₂ : A), Eq.{max (succ u1) (succ u2)} (Unitization.{u1, u2} R A) ((fun (a : Type.{u2}) (b : Sort.{max (succ u1) (succ u2)}) [self : HasLiftT.{succ u2, max (succ u1) (succ u2)} a b] => self.0) A (Unitization.{u1, u2} R A) (HasLiftT.mk.{succ u2, max (succ u1) (succ u2)} A (Unitization.{u1, u2} R A) (CoeTCₓ.coe.{succ u2, max (succ u1) (succ u2)} A (Unitization.{u1, u2} R A) (Unitization.hasCoeT.{u1, u2} R A (MulZeroClass.toHasZero.{u1} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))))))) (HMul.hMul.{u2, u2, u2} A A A (instHMul.{u2} A _inst_3) a₁ a₂)) (HMul.hMul.{max u1 u2, max u1 u2, max u1 u2} (Unitization.{u1, u2} R A) (Unitization.{u1, u2} R A) (Unitization.{u1, u2} R A) (instHMul.{max u1 u2} (Unitization.{u1, u2} R A) (Unitization.hasMul.{u1, u2} R A (Distrib.toHasMul.{u1} R (NonUnitalNonAssocSemiring.toDistrib.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) (AddZeroClass.toHasAdd.{u2} A (AddMonoid.toAddZeroClass.{u2} A (AddCommMonoid.toAddMonoid.{u2} A _inst_2))) _inst_3 (SMulZeroClass.toHasSmul.{u1, u2} R A (AddZeroClass.toHasZero.{u2} A (AddMonoid.toAddZeroClass.{u2} A (AddCommMonoid.toAddMonoid.{u2} A _inst_2))) (SMulWithZero.toSmulZeroClass.{u1, u2} R A (MulZeroClass.toHasZero.{u1} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) (AddZeroClass.toHasZero.{u2} A (AddMonoid.toAddZeroClass.{u2} A (AddCommMonoid.toAddMonoid.{u2} A _inst_2))) _inst_4)))) ((fun (a : Type.{u2}) (b : Sort.{max (succ u1) (succ u2)}) [self : HasLiftT.{succ u2, max (succ u1) (succ u2)} a b] => self.0) A (Unitization.{u1, u2} R A) (HasLiftT.mk.{succ u2, max (succ u1) (succ u2)} A (Unitization.{u1, u2} R A) (CoeTCₓ.coe.{succ u2, max (succ u1) (succ u2)} A (Unitization.{u1, u2} R A) (Unitization.hasCoeT.{u1, u2} R A (MulZeroClass.toHasZero.{u1} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))))))) a₁) ((fun (a : Type.{u2}) (b : Sort.{max (succ u1) (succ u2)}) [self : HasLiftT.{succ u2, max (succ u1) (succ u2)} a b] => self.0) A (Unitization.{u1, u2} R A) (HasLiftT.mk.{succ u2, max (succ u1) (succ u2)} A (Unitization.{u1, u2} R A) (CoeTCₓ.coe.{succ u2, max (succ u1) (succ u2)} A (Unitization.{u1, u2} R A) (Unitization.hasCoeT.{u1, u2} R A (MulZeroClass.toHasZero.{u1} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))))))) a₂))
+but is expected to have type
+  forall (R : Type.{u2}) {A : Type.{u1}} [_inst_1 : Semiring.{u2} R] [_inst_2 : AddCommMonoid.{u1} A] [_inst_3 : Mul.{u1} A] [_inst_4 : SMulWithZero.{u2, u1} R A (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (AddMonoid.toZero.{u1} A (AddCommMonoid.toAddMonoid.{u1} A _inst_2))] (a₁ : A) (a₂ : A), Eq.{max (succ u2) (succ u1)} (Unitization.{u2, u1} R A) (Unitization.inr.{u2, u1} R A (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (HMul.hMul.{u1, u1, u1} A A A (instHMul.{u1} A _inst_3) a₁ a₂)) (HMul.hMul.{max u2 u1, max u2 u1, max u2 u1} (Unitization.{u2, u1} R A) (Unitization.{u2, u1} R A) (Unitization.{u2, u1} R A) (instHMul.{max u2 u1} (Unitization.{u2, u1} R A) (Unitization.mul.{u2, u1} R A (NonUnitalNonAssocSemiring.toMul.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (AddZeroClass.toAdd.{u1} A (AddMonoid.toAddZeroClass.{u1} A (AddCommMonoid.toAddMonoid.{u1} A _inst_2))) _inst_3 (SMulZeroClass.toSMul.{u2, u1} R A (AddMonoid.toZero.{u1} A (AddCommMonoid.toAddMonoid.{u1} A _inst_2)) (SMulWithZero.toSMulZeroClass.{u2, u1} R A (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (AddMonoid.toZero.{u1} A (AddCommMonoid.toAddMonoid.{u1} A _inst_2)) _inst_4)))) (Unitization.inr.{u2, u1} R A (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) a₁) (Unitization.inr.{u2, u1} R A (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) a₂))
+Case conversion may be inaccurate. Consider using '#align unitization.coe_mul Unitization.inr_mulₓ'. -/
 @[simp]
-theorem coe_mul [Semiring R] [AddCommMonoid A] [Mul A] [SMulWithZero R A] (a₁ a₂ : A) :
+theorem inr_mul [Semiring R] [AddCommMonoid A] [Mul A] [SMulWithZero R A] (a₁ a₂ : A) :
     (↑(a₁ * a₂) : Unitization R A) = a₁ * a₂ :=
   ext (MulZeroClass.mul_zero _).symm <|
     show a₁ * a₂ = (0 : R) • a₂ + (0 : R) • a₁ + a₁ * a₂ by simp only [zero_smul, zero_add]
-#align unitization.coe_mul Unitization.coe_mul
+#align unitization.coe_mul Unitization.inr_mul
 
 end
 
-theorem inl_mul_coe [Semiring R] [NonUnitalNonAssocSemiring A] [DistribMulAction R A] (r : R)
+/- warning: unitization.inl_mul_coe -> Unitization.inl_mul_inr is a dubious translation:
+lean 3 declaration is
+  forall {R : Type.{u1}} {A : Type.{u2}} [_inst_1 : Semiring.{u1} R] [_inst_2 : NonUnitalNonAssocSemiring.{u2} A] [_inst_3 : DistribMulAction.{u1, u2} R A (MonoidWithZero.toMonoid.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1)) (AddCommMonoid.toAddMonoid.{u2} A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A _inst_2))] (r : R) (a : A), Eq.{max (succ u1) (succ u2)} (Unitization.{u1, u2} R A) (HMul.hMul.{max u1 u2, max u1 u2, max u1 u2} (Unitization.{u1, u2} R A) (Unitization.{u1, u2} R A) (Unitization.{u1, u2} R A) (instHMul.{max u1 u2} (Unitization.{u1, u2} R A) (Unitization.hasMul.{u1, u2} R A (Distrib.toHasMul.{u1} R (NonUnitalNonAssocSemiring.toDistrib.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) (Distrib.toHasAdd.{u2} A (NonUnitalNonAssocSemiring.toDistrib.{u2} A _inst_2)) (Distrib.toHasMul.{u2} A (NonUnitalNonAssocSemiring.toDistrib.{u2} A _inst_2)) (SMulZeroClass.toHasSmul.{u1, u2} R A (AddZeroClass.toHasZero.{u2} A (AddMonoid.toAddZeroClass.{u2} A (AddCommMonoid.toAddMonoid.{u2} A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A _inst_2)))) (DistribSMul.toSmulZeroClass.{u1, u2} R A (AddMonoid.toAddZeroClass.{u2} A (AddCommMonoid.toAddMonoid.{u2} A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A _inst_2))) (DistribMulAction.toDistribSMul.{u1, u2} R A (MonoidWithZero.toMonoid.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1)) (AddCommMonoid.toAddMonoid.{u2} A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A _inst_2)) _inst_3))))) (Unitization.inl.{u1, u2} R A (MulZeroClass.toHasZero.{u2} A (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} A _inst_2)) r) ((fun (a : Type.{u2}) (b : Sort.{max (succ u1) (succ u2)}) [self : HasLiftT.{succ u2, max (succ u1) (succ u2)} a b] => self.0) A (Unitization.{u1, u2} R A) (HasLiftT.mk.{succ u2, max (succ u1) (succ u2)} A (Unitization.{u1, u2} R A) (CoeTCₓ.coe.{succ u2, max (succ u1) (succ u2)} A (Unitization.{u1, u2} R A) (Unitization.hasCoeT.{u1, u2} R A (MulZeroClass.toHasZero.{u1} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))))))) a)) ((fun (a : Type.{u2}) (b : Sort.{max (succ u1) (succ u2)}) [self : HasLiftT.{succ u2, max (succ u1) (succ u2)} a b] => self.0) A (Unitization.{u1, u2} R A) (HasLiftT.mk.{succ u2, max (succ u1) (succ u2)} A (Unitization.{u1, u2} R A) (CoeTCₓ.coe.{succ u2, max (succ u1) (succ u2)} A (Unitization.{u1, u2} R A) (Unitization.hasCoeT.{u1, u2} R A (MulZeroClass.toHasZero.{u1} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))))))) (SMul.smul.{u1, u2} R A (SMulZeroClass.toHasSmul.{u1, u2} R A (AddZeroClass.toHasZero.{u2} A (AddMonoid.toAddZeroClass.{u2} A (AddCommMonoid.toAddMonoid.{u2} A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A _inst_2)))) (DistribSMul.toSmulZeroClass.{u1, u2} R A (AddMonoid.toAddZeroClass.{u2} A (AddCommMonoid.toAddMonoid.{u2} A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A _inst_2))) (DistribMulAction.toDistribSMul.{u1, u2} R A (MonoidWithZero.toMonoid.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1)) (AddCommMonoid.toAddMonoid.{u2} A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A _inst_2)) _inst_3))) r a))
+but is expected to have type
+  forall {R : Type.{u2}} {A : Type.{u1}} [_inst_1 : Semiring.{u2} R] [_inst_2 : NonUnitalNonAssocSemiring.{u1} A] [_inst_3 : DistribMulAction.{u2, u1} R A (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (AddCommMonoid.toAddMonoid.{u1} A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A _inst_2))] (r : R) (a : A), Eq.{max (succ u2) (succ u1)} (Unitization.{u2, u1} R A) (HMul.hMul.{max u2 u1, max u2 u1, max u2 u1} (Unitization.{u2, u1} R A) (Unitization.{u2, u1} R A) (Unitization.{u2, u1} R A) (instHMul.{max u2 u1} (Unitization.{u2, u1} R A) (Unitization.mul.{u2, u1} R A (NonUnitalNonAssocSemiring.toMul.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Distrib.toAdd.{u1} A (NonUnitalNonAssocSemiring.toDistrib.{u1} A _inst_2)) (NonUnitalNonAssocSemiring.toMul.{u1} A _inst_2) (SMulZeroClass.toSMul.{u2, u1} R A (MulZeroClass.toZero.{u1} A (NonUnitalNonAssocSemiring.toMulZeroClass.{u1} A _inst_2)) (DistribSMul.toSMulZeroClass.{u2, u1} R A (AddMonoid.toAddZeroClass.{u1} A (AddCommMonoid.toAddMonoid.{u1} A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A _inst_2))) (DistribMulAction.toDistribSMul.{u2, u1} R A (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (AddCommMonoid.toAddMonoid.{u1} A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A _inst_2)) _inst_3))))) (Unitization.inl.{u2, u1} R A (MulZeroClass.toZero.{u1} A (NonUnitalNonAssocSemiring.toMulZeroClass.{u1} A _inst_2)) r) (Unitization.inr.{u2, u1} R A (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) a)) (Unitization.inr.{u2, u1} R A (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (HSMul.hSMul.{u2, u1, u1} R A A (instHSMul.{u2, u1} R A (SMulZeroClass.toSMul.{u2, u1} R A (MulZeroClass.toZero.{u1} A (NonUnitalNonAssocSemiring.toMulZeroClass.{u1} A _inst_2)) (DistribSMul.toSMulZeroClass.{u2, u1} R A (AddMonoid.toAddZeroClass.{u1} A (AddCommMonoid.toAddMonoid.{u1} A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A _inst_2))) (DistribMulAction.toDistribSMul.{u2, u1} R A (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (AddCommMonoid.toAddMonoid.{u1} A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A _inst_2)) _inst_3)))) r a))
+Case conversion may be inaccurate. Consider using '#align unitization.inl_mul_coe Unitization.inl_mul_inrₓ'. -/
+theorem inl_mul_inr [Semiring R] [NonUnitalNonAssocSemiring A] [DistribMulAction R A] (r : R)
     (a : A) : (inl r * a : Unitization R A) = ↑(r • a) :=
   ext (MulZeroClass.mul_zero r) <|
     show r • a + (0 : R) • 0 + 0 * a = r • a by
       rw [smul_zero, add_zero, MulZeroClass.zero_mul, add_zero]
-#align unitization.inl_mul_coe Unitization.inl_mul_coe
-
-theorem coe_mul_inl [Semiring R] [NonUnitalNonAssocSemiring A] [DistribMulAction R A] (r : R)
+#align unitization.inl_mul_coe Unitization.inl_mul_inr
+
+/- warning: unitization.coe_mul_inl -> Unitization.inr_mul_inl is a dubious translation:
+lean 3 declaration is
+  forall {R : Type.{u1}} {A : Type.{u2}} [_inst_1 : Semiring.{u1} R] [_inst_2 : NonUnitalNonAssocSemiring.{u2} A] [_inst_3 : DistribMulAction.{u1, u2} R A (MonoidWithZero.toMonoid.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1)) (AddCommMonoid.toAddMonoid.{u2} A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A _inst_2))] (r : R) (a : A), Eq.{max (succ u1) (succ u2)} (Unitization.{u1, u2} R A) (HMul.hMul.{max u1 u2, max u1 u2, max u1 u2} (Unitization.{u1, u2} R A) (Unitization.{u1, u2} R A) (Unitization.{u1, u2} R A) (instHMul.{max u1 u2} (Unitization.{u1, u2} R A) (Unitization.hasMul.{u1, u2} R A (Distrib.toHasMul.{u1} R (NonUnitalNonAssocSemiring.toDistrib.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1)))) (Distrib.toHasAdd.{u2} A (NonUnitalNonAssocSemiring.toDistrib.{u2} A _inst_2)) (Distrib.toHasMul.{u2} A (NonUnitalNonAssocSemiring.toDistrib.{u2} A _inst_2)) (SMulZeroClass.toHasSmul.{u1, u2} R A (AddZeroClass.toHasZero.{u2} A (AddMonoid.toAddZeroClass.{u2} A (AddCommMonoid.toAddMonoid.{u2} A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A _inst_2)))) (DistribSMul.toSmulZeroClass.{u1, u2} R A (AddMonoid.toAddZeroClass.{u2} A (AddCommMonoid.toAddMonoid.{u2} A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A _inst_2))) (DistribMulAction.toDistribSMul.{u1, u2} R A (MonoidWithZero.toMonoid.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1)) (AddCommMonoid.toAddMonoid.{u2} A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A _inst_2)) _inst_3))))) ((fun (a : Type.{u2}) (b : Sort.{max (succ u1) (succ u2)}) [self : HasLiftT.{succ u2, max (succ u1) (succ u2)} a b] => self.0) A (Unitization.{u1, u2} R A) (HasLiftT.mk.{succ u2, max (succ u1) (succ u2)} A (Unitization.{u1, u2} R A) (CoeTCₓ.coe.{succ u2, max (succ u1) (succ u2)} A (Unitization.{u1, u2} R A) (Unitization.hasCoeT.{u1, u2} R A (MulZeroClass.toHasZero.{u1} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))))))) a) (Unitization.inl.{u1, u2} R A (MulZeroClass.toHasZero.{u2} A (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} A _inst_2)) r)) ((fun (a : Type.{u2}) (b : Sort.{max (succ u1) (succ u2)}) [self : HasLiftT.{succ u2, max (succ u1) (succ u2)} a b] => self.0) A (Unitization.{u1, u2} R A) (HasLiftT.mk.{succ u2, max (succ u1) (succ u2)} A (Unitization.{u1, u2} R A) (CoeTCₓ.coe.{succ u2, max (succ u1) (succ u2)} A (Unitization.{u1, u2} R A) (Unitization.hasCoeT.{u1, u2} R A (MulZeroClass.toHasZero.{u1} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R _inst_1))))))) (SMul.smul.{u1, u2} R A (SMulZeroClass.toHasSmul.{u1, u2} R A (AddZeroClass.toHasZero.{u2} A (AddMonoid.toAddZeroClass.{u2} A (AddCommMonoid.toAddMonoid.{u2} A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A _inst_2)))) (DistribSMul.toSmulZeroClass.{u1, u2} R A (AddMonoid.toAddZeroClass.{u2} A (AddCommMonoid.toAddMonoid.{u2} A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A _inst_2))) (DistribMulAction.toDistribSMul.{u1, u2} R A (MonoidWithZero.toMonoid.{u1} R (Semiring.toMonoidWithZero.{u1} R _inst_1)) (AddCommMonoid.toAddMonoid.{u2} A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A _inst_2)) _inst_3))) r a))
+but is expected to have type
+  forall {R : Type.{u2}} {A : Type.{u1}} [_inst_1 : Semiring.{u2} R] [_inst_2 : NonUnitalNonAssocSemiring.{u1} A] [_inst_3 : DistribMulAction.{u2, u1} R A (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (AddCommMonoid.toAddMonoid.{u1} A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A _inst_2))] (r : R) (a : A), Eq.{max (succ u2) (succ u1)} (Unitization.{u2, u1} R A) (HMul.hMul.{max u2 u1, max u2 u1, max u2 u1} (Unitization.{u2, u1} R A) (Unitization.{u2, u1} R A) (Unitization.{u2, u1} R A) (instHMul.{max u2 u1} (Unitization.{u2, u1} R A) (Unitization.mul.{u2, u1} R A (NonUnitalNonAssocSemiring.toMul.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R _inst_1))) (Distrib.toAdd.{u1} A (NonUnitalNonAssocSemiring.toDistrib.{u1} A _inst_2)) (NonUnitalNonAssocSemiring.toMul.{u1} A _inst_2) (SMulZeroClass.toSMul.{u2, u1} R A (MulZeroClass.toZero.{u1} A (NonUnitalNonAssocSemiring.toMulZeroClass.{u1} A _inst_2)) (DistribSMul.toSMulZeroClass.{u2, u1} R A (AddMonoid.toAddZeroClass.{u1} A (AddCommMonoid.toAddMonoid.{u1} A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A _inst_2))) (DistribMulAction.toDistribSMul.{u2, u1} R A (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (AddCommMonoid.toAddMonoid.{u1} A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A _inst_2)) _inst_3))))) (Unitization.inr.{u2, u1} R A (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) a) (Unitization.inl.{u2, u1} R A (MulZeroClass.toZero.{u1} A (NonUnitalNonAssocSemiring.toMulZeroClass.{u1} A _inst_2)) r)) (Unitization.inr.{u2, u1} R A (MonoidWithZero.toZero.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (HSMul.hSMul.{u2, u1, u1} R A A (instHSMul.{u2, u1} R A (SMulZeroClass.toSMul.{u2, u1} R A (MulZeroClass.toZero.{u1} A (NonUnitalNonAssocSemiring.toMulZeroClass.{u1} A _inst_2)) (DistribSMul.toSMulZeroClass.{u2, u1} R A (AddMonoid.toAddZeroClass.{u1} A (AddCommMonoid.toAddMonoid.{u1} A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A _inst_2))) (DistribMulAction.toDistribSMul.{u2, u1} R A (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R _inst_1)) (AddCommMonoid.toAddMonoid.{u1} A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A _inst_2)) _inst_3)))) r a))
+Case conversion may be inaccurate. Consider using '#align unitization.coe_mul_inl Unitization.inr_mul_inlₓ'. -/
+theorem inr_mul_inl [Semiring R] [NonUnitalNonAssocSemiring A] [DistribMulAction R A] (r : R)
     (a : A) : (a * inl r : Unitization R A) = ↑(r • a) :=
   ext (MulZeroClass.zero_mul r) <|
     show (0 : R) • 0 + r • a + a * 0 = r • a by
       rw [smul_zero, zero_add, MulZeroClass.mul_zero, add_zero]
-#align unitization.coe_mul_inl Unitization.coe_mul_inl
+#align unitization.coe_mul_inl Unitization.inr_mul_inl
 
+#print Unitization.mulOneClass /-
 instance mulOneClass [Monoid R] [NonUnitalNonAssocSemiring A] [DistribMulAction R A] :
     MulOneClass (Unitization R A) :=
   { Unitization.hasOne,
@@ -430,6 +647,7 @@ instance mulOneClass [Monoid R] [NonUnitalNonAssocSemiring A] [DistribMulAction
         show (x.1 • 0 : A) + (1 : R) • x.2 + x.2 * 0 = x.2 by
           rw [smul_zero, zero_add, one_smul, MulZeroClass.mul_zero, add_zero] }
 #align unitization.mul_one_class Unitization.mulOneClass
+-/
 
 instance [Semiring R] [NonUnitalNonAssocSemiring A] [Module R A] :
     NonAssocSemiring (Unitization R A) :=
@@ -495,6 +713,7 @@ instance [CommSemiring R] [NonUnitalCommSemiring A] [Module R A] [IsScalarTower
 
 variable (R A)
 
+#print Unitization.inlRingHom /-
 /-- The canonical inclusion of rings `R →+* unitization R A`. -/
 @[simps apply]
 def inlRingHom [Semiring R] [NonUnitalSemiring A] [Module R A] : R →+* Unitization R A
@@ -505,6 +724,7 @@ def inlRingHom [Semiring R] [NonUnitalSemiring A] [Module R A] : R →+* Unitiza
   map_zero' := inl_zero A
   map_add' := inl_add A
 #align unitization.inl_ring_hom Unitization.inlRingHom
+-/
 
 end Mul
 
@@ -518,27 +738,51 @@ variable {R A : Type _}
 instance [Star R] [Star A] : Star (Unitization R A) :=
   ⟨fun ra => (star ra.fst, star ra.snd)⟩
 
+/- warning: unitization.fst_star -> Unitization.fst_star is a dubious translation:
+lean 3 declaration is
+  forall {R : Type.{u1}} {A : Type.{u2}} [_inst_1 : Star.{u1} R] [_inst_2 : Star.{u2} A] (x : Unitization.{u1, u2} R A), Eq.{succ u1} R (Unitization.fst.{u1, u2} R A (Star.star.{max u1 u2} (Unitization.{u1, u2} R A) (Unitization.hasStar.{u1, u2} R A _inst_1 _inst_2) x)) (Star.star.{u1} R _inst_1 (Unitization.fst.{u1, u2} R A x))
+but is expected to have type
+  forall {R : Type.{u2}} {A : Type.{u1}} [_inst_1 : Star.{u2} R] [_inst_2 : Star.{u1} A] (x : Unitization.{u2, u1} R A), Eq.{succ u2} R (Unitization.fst.{u2, u1} R A (Star.star.{max u2 u1} (Unitization.{u2, u1} R A) (Unitization.toStar.{u2, u1} R A _inst_1 _inst_2) x)) (Star.star.{u2} R _inst_1 (Unitization.fst.{u2, u1} R A x))
+Case conversion may be inaccurate. Consider using '#align unitization.fst_star Unitization.fst_starₓ'. -/
 @[simp]
 theorem fst_star [Star R] [Star A] (x : Unitization R A) : (star x).fst = star x.fst :=
   rfl
 #align unitization.fst_star Unitization.fst_star
 
+/- warning: unitization.snd_star -> Unitization.snd_star is a dubious translation:
+lean 3 declaration is
+  forall {R : Type.{u1}} {A : Type.{u2}} [_inst_1 : Star.{u1} R] [_inst_2 : Star.{u2} A] (x : Unitization.{u1, u2} R A), Eq.{succ u2} A (Unitization.snd.{u1, u2} R A (Star.star.{max u1 u2} (Unitization.{u1, u2} R A) (Unitization.hasStar.{u1, u2} R A _inst_1 _inst_2) x)) (Star.star.{u2} A _inst_2 (Unitization.snd.{u1, u2} R A x))
+but is expected to have type
+  forall {R : Type.{u2}} {A : Type.{u1}} [_inst_1 : Star.{u2} R] [_inst_2 : Star.{u1} A] (x : Unitization.{u2, u1} R A), Eq.{succ u1} A (Unitization.snd.{u2, u1} R A (Star.star.{max u2 u1} (Unitization.{u2, u1} R A) (Unitization.toStar.{u2, u1} R A _inst_1 _inst_2) x)) (Star.star.{u1} A _inst_2 (Unitization.snd.{u2, u1} R A x))
+Case conversion may be inaccurate. Consider using '#align unitization.snd_star Unitization.snd_starₓ'. -/
 @[simp]
 theorem snd_star [Star R] [Star A] (x : Unitization R A) : (star x).snd = star x.snd :=
   rfl
 #align unitization.snd_star Unitization.snd_star
 
+/- warning: unitization.inl_star -> Unitization.inl_star is a dubious translation:
+lean 3 declaration is
+  forall {R : Type.{u1}} {A : Type.{u2}} [_inst_1 : Star.{u1} R] [_inst_2 : AddMonoid.{u2} A] [_inst_3 : StarAddMonoid.{u2} A _inst_2] (r : R), Eq.{max (succ u1) (succ u2)} (Unitization.{u1, u2} R A) (Unitization.inl.{u1, u2} R A (AddZeroClass.toHasZero.{u2} A (AddMonoid.toAddZeroClass.{u2} A _inst_2)) (Star.star.{u1} R _inst_1 r)) (Star.star.{max u1 u2} (Unitization.{u1, u2} R A) (Unitization.hasStar.{u1, u2} R A _inst_1 (InvolutiveStar.toHasStar.{u2} A (StarAddMonoid.toHasInvolutiveStar.{u2} A _inst_2 _inst_3))) (Unitization.inl.{u1, u2} R A (AddZeroClass.toHasZero.{u2} A (AddMonoid.toAddZeroClass.{u2} A _inst_2)) r))
+but is expected to have type
+  forall {R : Type.{u2}} {A : Type.{u1}} [_inst_1 : Star.{u2} R] [_inst_2 : AddMonoid.{u1} A] [_inst_3 : StarAddMonoid.{u1} A _inst_2] (r : R), Eq.{max (succ u2) (succ u1)} (Unitization.{u2, u1} R A) (Unitization.inl.{u2, u1} R A (AddMonoid.toZero.{u1} A _inst_2) (Star.star.{u2} R _inst_1 r)) (Star.star.{max u2 u1} (Unitization.{u2, u1} R A) (Unitization.toStar.{u2, u1} R A _inst_1 (InvolutiveStar.toStar.{u1} A (StarAddMonoid.toInvolutiveStar.{u1} A _inst_2 _inst_3))) (Unitization.inl.{u2, u1} R A (AddMonoid.toZero.{u1} A _inst_2) r))
+Case conversion may be inaccurate. Consider using '#align unitization.inl_star Unitization.inl_starₓ'. -/
 @[simp]
 theorem inl_star [Star R] [AddMonoid A] [StarAddMonoid A] (r : R) :
     inl (star r) = star (inl r : Unitization R A) :=
   ext rfl (by simp only [snd_star, star_zero, snd_inl])
 #align unitization.inl_star Unitization.inl_star
 
+/- warning: unitization.coe_star -> Unitization.inr_star is a dubious translation:
+lean 3 declaration is
+  forall {R : Type.{u1}} {A : Type.{u2}} [_inst_1 : AddMonoid.{u1} R] [_inst_2 : StarAddMonoid.{u1} R _inst_1] [_inst_3 : Star.{u2} A] (a : A), Eq.{succ (max u1 u2)} (Unitization.{u1, u2} R A) ((fun (a : Type.{u2}) (b : Type.{max u1 u2}) [self : HasLiftT.{succ u2, succ (max u1 u2)} a b] => self.0) A (Unitization.{u1, u2} R A) (HasLiftT.mk.{succ u2, succ (max u1 u2)} A (Unitization.{u1, u2} R A) (CoeTCₓ.coe.{succ u2, succ (max u1 u2)} A (Unitization.{u1, u2} R A) (Unitization.hasCoeT.{u1, u2} R A (AddZeroClass.toHasZero.{u1} R (AddMonoid.toAddZeroClass.{u1} R _inst_1))))) (Star.star.{u2} A _inst_3 a)) (Star.star.{max u1 u2} (Unitization.{u1, u2} R A) (Unitization.hasStar.{u1, u2} R A (InvolutiveStar.toHasStar.{u1} R (StarAddMonoid.toHasInvolutiveStar.{u1} R _inst_1 _inst_2)) _inst_3) ((fun (a : Type.{u2}) (b : Sort.{max (succ u1) (succ u2)}) [self : HasLiftT.{succ u2, max (succ u1) (succ u2)} a b] => self.0) A (Unitization.{u1, u2} R A) (HasLiftT.mk.{succ u2, max (succ u1) (succ u2)} A (Unitization.{u1, u2} R A) (CoeTCₓ.coe.{succ u2, max (succ u1) (succ u2)} A (Unitization.{u1, u2} R A) (Unitization.hasCoeT.{u1, u2} R A (AddZeroClass.toHasZero.{u1} R (AddMonoid.toAddZeroClass.{u1} R _inst_1))))) a))
+but is expected to have type
+  forall {R : Type.{u2}} {A : Type.{u1}} [_inst_1 : AddMonoid.{u2} R] [_inst_2 : StarAddMonoid.{u2} R _inst_1] [_inst_3 : Star.{u1} A] (a : A), Eq.{max (succ u2) (succ u1)} (Unitization.{u2, u1} R A) (Unitization.inr.{u2, u1} R A (AddMonoid.toZero.{u2} R _inst_1) (Star.star.{u1} A _inst_3 a)) (Star.star.{max u2 u1} (Unitization.{u2, u1} R A) (Unitization.toStar.{u2, u1} R A (InvolutiveStar.toStar.{u2} R (StarAddMonoid.toInvolutiveStar.{u2} R _inst_1 _inst_2)) _inst_3) (Unitization.inr.{u2, u1} R A (AddMonoid.toZero.{u2} R _inst_1) a))
+Case conversion may be inaccurate. Consider using '#align unitization.coe_star Unitization.inr_starₓ'. -/
 @[simp]
-theorem coe_star [AddMonoid R] [StarAddMonoid R] [Star A] (a : A) :
+theorem inr_star [AddMonoid R] [StarAddMonoid R] [Star A] (a : A) :
     ↑(star a) = star (a : Unitization R A) :=
   ext (by simp only [fst_star, star_zero, fst_coe]) rfl
-#align unitization.coe_star Unitization.coe_star
+#align unitization.coe_star Unitization.inr_star
 
 instance [AddMonoid R] [AddMonoid A] [StarAddMonoid R] [StarAddMonoid A] :
     StarAddMonoid (Unitization R A)
@@ -566,6 +810,12 @@ variable (S R A : Type _) [CommSemiring S] [CommSemiring R] [NonUnitalSemiring A
   [IsScalarTower R A A] [SMulCommClass R A A] [Algebra S R] [DistribMulAction S A]
   [IsScalarTower S R A]
 
+/- warning: unitization.algebra -> Unitization.algebra is a dubious translation:
+lean 3 declaration is
+  forall (S : Type.{u1}) (R : Type.{u2}) (A : Type.{u3}) [_inst_1 : CommSemiring.{u1} S] [_inst_2 : CommSemiring.{u2} R] [_inst_3 : NonUnitalSemiring.{u3} A] [_inst_4 : Module.{u2, u3} R A (CommSemiring.toSemiring.{u2} R _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u3} A _inst_3))] [_inst_5 : IsScalarTower.{u2, u3, u3} R A A (SMulZeroClass.toHasSmul.{u2, u3} R A (AddZeroClass.toHasZero.{u3} A (AddMonoid.toAddZeroClass.{u3} A (AddCommMonoid.toAddMonoid.{u3} A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u3} A _inst_3))))) (SMulWithZero.toSmulZeroClass.{u2, u3} R A (MulZeroClass.toHasZero.{u2} R (MulZeroOneClass.toMulZeroClass.{u2} R (MonoidWithZero.toMulZeroOneClass.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R _inst_2))))) (AddZeroClass.toHasZero.{u3} A (AddMonoid.toAddZeroClass.{u3} A (AddCommMonoid.toAddMonoid.{u3} A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u3} A _inst_3))))) (MulActionWithZero.toSMulWithZero.{u2, u3} R A (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R _inst_2)) (AddZeroClass.toHasZero.{u3} A (AddMonoid.toAddZeroClass.{u3} A (AddCommMonoid.toAddMonoid.{u3} A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u3} A _inst_3))))) (Module.toMulActionWithZero.{u2, u3} R A (CommSemiring.toSemiring.{u2} R _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u3} A _inst_3)) _inst_4)))) (Mul.toSMul.{u3} A (Distrib.toHasMul.{u3} A (NonUnitalNonAssocSemiring.toDistrib.{u3} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u3} A _inst_3)))) (SMulZeroClass.toHasSmul.{u2, u3} R A (AddZeroClass.toHasZero.{u3} A (AddMonoid.toAddZeroClass.{u3} A (AddCommMonoid.toAddMonoid.{u3} A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u3} A _inst_3))))) (SMulWithZero.toSmulZeroClass.{u2, u3} R A (MulZeroClass.toHasZero.{u2} R (MulZeroOneClass.toMulZeroClass.{u2} R (MonoidWithZero.toMulZeroOneClass.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R _inst_2))))) (AddZeroClass.toHasZero.{u3} A (AddMonoid.toAddZeroClass.{u3} A (AddCommMonoid.toAddMonoid.{u3} A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u3} A _inst_3))))) (MulActionWithZero.toSMulWithZero.{u2, u3} R A (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R _inst_2)) (AddZeroClass.toHasZero.{u3} A (AddMonoid.toAddZeroClass.{u3} A (AddCommMonoid.toAddMonoid.{u3} A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u3} A _inst_3))))) (Module.toMulActionWithZero.{u2, u3} R A (CommSemiring.toSemiring.{u2} R _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u3} A _inst_3)) _inst_4))))] [_inst_6 : SMulCommClass.{u2, u3, u3} R A A (SMulZeroClass.toHasSmul.{u2, u3} R A (AddZeroClass.toHasZero.{u3} A (AddMonoid.toAddZeroClass.{u3} A (AddCommMonoid.toAddMonoid.{u3} A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u3} A _inst_3))))) (SMulWithZero.toSmulZeroClass.{u2, u3} R A (MulZeroClass.toHasZero.{u2} R (MulZeroOneClass.toMulZeroClass.{u2} R (MonoidWithZero.toMulZeroOneClass.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R _inst_2))))) (AddZeroClass.toHasZero.{u3} A (AddMonoid.toAddZeroClass.{u3} A (AddCommMonoid.toAddMonoid.{u3} A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u3} A _inst_3))))) (MulActionWithZero.toSMulWithZero.{u2, u3} R A (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R _inst_2)) (AddZeroClass.toHasZero.{u3} A (AddMonoid.toAddZeroClass.{u3} A (AddCommMonoid.toAddMonoid.{u3} A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u3} A _inst_3))))) (Module.toMulActionWithZero.{u2, u3} R A (CommSemiring.toSemiring.{u2} R _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u3} A _inst_3)) _inst_4)))) (Mul.toSMul.{u3} A (Distrib.toHasMul.{u3} A (NonUnitalNonAssocSemiring.toDistrib.{u3} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u3} A _inst_3))))] [_inst_7 : Algebra.{u1, u2} S R _inst_1 (CommSemiring.toSemiring.{u2} R _inst_2)] [_inst_8 : DistribMulAction.{u1, u3} S A (MonoidWithZero.toMonoid.{u1} S (Semiring.toMonoidWithZero.{u1} S (CommSemiring.toSemiring.{u1} S _inst_1))) (AddCommMonoid.toAddMonoid.{u3} A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u3} A _inst_3)))] [_inst_9 : IsScalarTower.{u1, u2, u3} S R A (SMulZeroClass.toHasSmul.{u1, u2} S R (AddZeroClass.toHasZero.{u2} R (AddMonoid.toAddZeroClass.{u2} R (AddCommMonoid.toAddMonoid.{u2} R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_2))))))) (SMulWithZero.toSmulZeroClass.{u1, u2} S R (MulZeroClass.toHasZero.{u1} S (MulZeroOneClass.toMulZeroClass.{u1} S (MonoidWithZero.toMulZeroOneClass.{u1} S (Semiring.toMonoidWithZero.{u1} S (CommSemiring.toSemiring.{u1} S _inst_1))))) (AddZeroClass.toHasZero.{u2} R (AddMonoid.toAddZeroClass.{u2} R (AddCommMonoid.toAddMonoid.{u2} R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_2))))))) (MulActionWithZero.toSMulWithZero.{u1, u2} S R (Semiring.toMonoidWithZero.{u1} S (CommSemiring.toSemiring.{u1} S _inst_1)) (AddZeroClass.toHasZero.{u2} R (AddMonoid.toAddZeroClass.{u2} R (AddCommMonoid.toAddMonoid.{u2} R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_2))))))) (Module.toMulActionWithZero.{u1, u2} S R (CommSemiring.toSemiring.{u1} S _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_2)))) (Algebra.toModule.{u1, u2} S R _inst_1 (CommSemiring.toSemiring.{u2} R _inst_2) _inst_7))))) (SMulZeroClass.toHasSmul.{u2, u3} R A (AddZeroClass.toHasZero.{u3} A (AddMonoid.toAddZeroClass.{u3} A (AddCommMonoid.toAddMonoid.{u3} A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u3} A _inst_3))))) (SMulWithZero.toSmulZeroClass.{u2, u3} R A (MulZeroClass.toHasZero.{u2} R (MulZeroOneClass.toMulZeroClass.{u2} R (MonoidWithZero.toMulZeroOneClass.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R _inst_2))))) (AddZeroClass.toHasZero.{u3} A (AddMonoid.toAddZeroClass.{u3} A (AddCommMonoid.toAddMonoid.{u3} A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u3} A _inst_3))))) (MulActionWithZero.toSMulWithZero.{u2, u3} R A (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R _inst_2)) (AddZeroClass.toHasZero.{u3} A (AddMonoid.toAddZeroClass.{u3} A (AddCommMonoid.toAddMonoid.{u3} A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u3} A _inst_3))))) (Module.toMulActionWithZero.{u2, u3} R A (CommSemiring.toSemiring.{u2} R _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u3} A _inst_3)) _inst_4)))) (SMulZeroClass.toHasSmul.{u1, u3} S A (AddZeroClass.toHasZero.{u3} A (AddMonoid.toAddZeroClass.{u3} A (AddCommMonoid.toAddMonoid.{u3} A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u3} A _inst_3))))) (DistribSMul.toSmulZeroClass.{u1, u3} S A (AddMonoid.toAddZeroClass.{u3} A (AddCommMonoid.toAddMonoid.{u3} A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u3} A _inst_3)))) (DistribMulAction.toDistribSMul.{u1, u3} S A (MonoidWithZero.toMonoid.{u1} S (Semiring.toMonoidWithZero.{u1} S (CommSemiring.toSemiring.{u1} S _inst_1))) (AddCommMonoid.toAddMonoid.{u3} A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u3} A _inst_3))) _inst_8)))], Algebra.{u1, max u2 u3} S (Unitization.{u2, u3} R A) _inst_1 (Unitization.semiring.{u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_5 _inst_6)
+but is expected to have type
+  forall (S : Type.{u1}) (R : Type.{u2}) (A : Type.{u3}) [_inst_1 : CommSemiring.{u1} S] [_inst_2 : CommSemiring.{u2} R] [_inst_3 : NonUnitalSemiring.{u3} A] [_inst_4 : Module.{u2, u3} R A (CommSemiring.toSemiring.{u2} R _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u3} A _inst_3))] [_inst_5 : IsScalarTower.{u2, u3, u3} R A A (SMulZeroClass.toSMul.{u2, u3} R A (SemigroupWithZero.toZero.{u3} A (NonUnitalSemiring.toSemigroupWithZero.{u3} A _inst_3)) (SMulWithZero.toSMulZeroClass.{u2, u3} R A (CommMonoidWithZero.toZero.{u2} R (CommSemiring.toCommMonoidWithZero.{u2} R _inst_2)) (SemigroupWithZero.toZero.{u3} A (NonUnitalSemiring.toSemigroupWithZero.{u3} A _inst_3)) (MulActionWithZero.toSMulWithZero.{u2, u3} R A (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R _inst_2)) (SemigroupWithZero.toZero.{u3} A (NonUnitalSemiring.toSemigroupWithZero.{u3} A _inst_3)) (Module.toMulActionWithZero.{u2, u3} R A (CommSemiring.toSemiring.{u2} R _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u3} A _inst_3)) _inst_4)))) (SMulZeroClass.toSMul.{u3, u3} A A (SemigroupWithZero.toZero.{u3} A (NonUnitalSemiring.toSemigroupWithZero.{u3} A _inst_3)) (SMulWithZero.toSMulZeroClass.{u3, u3} A A (SemigroupWithZero.toZero.{u3} A (NonUnitalSemiring.toSemigroupWithZero.{u3} A _inst_3)) (SemigroupWithZero.toZero.{u3} A (NonUnitalSemiring.toSemigroupWithZero.{u3} A _inst_3)) (MulZeroClass.toSMulWithZero.{u3} A (NonUnitalNonAssocSemiring.toMulZeroClass.{u3} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u3} A _inst_3))))) (SMulZeroClass.toSMul.{u2, u3} R A (SemigroupWithZero.toZero.{u3} A (NonUnitalSemiring.toSemigroupWithZero.{u3} A _inst_3)) (SMulWithZero.toSMulZeroClass.{u2, u3} R A (CommMonoidWithZero.toZero.{u2} R (CommSemiring.toCommMonoidWithZero.{u2} R _inst_2)) (SemigroupWithZero.toZero.{u3} A (NonUnitalSemiring.toSemigroupWithZero.{u3} A _inst_3)) (MulActionWithZero.toSMulWithZero.{u2, u3} R A (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R _inst_2)) (SemigroupWithZero.toZero.{u3} A (NonUnitalSemiring.toSemigroupWithZero.{u3} A _inst_3)) (Module.toMulActionWithZero.{u2, u3} R A (CommSemiring.toSemiring.{u2} R _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u3} A _inst_3)) _inst_4))))] [_inst_6 : SMulCommClass.{u2, u3, u3} R A A (SMulZeroClass.toSMul.{u2, u3} R A (SemigroupWithZero.toZero.{u3} A (NonUnitalSemiring.toSemigroupWithZero.{u3} A _inst_3)) (SMulWithZero.toSMulZeroClass.{u2, u3} R A (CommMonoidWithZero.toZero.{u2} R (CommSemiring.toCommMonoidWithZero.{u2} R _inst_2)) (SemigroupWithZero.toZero.{u3} A (NonUnitalSemiring.toSemigroupWithZero.{u3} A _inst_3)) (MulActionWithZero.toSMulWithZero.{u2, u3} R A (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R _inst_2)) (SemigroupWithZero.toZero.{u3} A (NonUnitalSemiring.toSemigroupWithZero.{u3} A _inst_3)) (Module.toMulActionWithZero.{u2, u3} R A (CommSemiring.toSemiring.{u2} R _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u3} A _inst_3)) _inst_4)))) (SMulZeroClass.toSMul.{u3, u3} A A (SemigroupWithZero.toZero.{u3} A (NonUnitalSemiring.toSemigroupWithZero.{u3} A _inst_3)) (SMulWithZero.toSMulZeroClass.{u3, u3} A A (SemigroupWithZero.toZero.{u3} A (NonUnitalSemiring.toSemigroupWithZero.{u3} A _inst_3)) (SemigroupWithZero.toZero.{u3} A (NonUnitalSemiring.toSemigroupWithZero.{u3} A _inst_3)) (MulZeroClass.toSMulWithZero.{u3} A (NonUnitalNonAssocSemiring.toMulZeroClass.{u3} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u3} A _inst_3)))))] [_inst_7 : Algebra.{u1, u2} S R _inst_1 (CommSemiring.toSemiring.{u2} R _inst_2)] [_inst_8 : DistribMulAction.{u1, u3} S A (MonoidWithZero.toMonoid.{u1} S (Semiring.toMonoidWithZero.{u1} S (CommSemiring.toSemiring.{u1} S _inst_1))) (AddCommMonoid.toAddMonoid.{u3} A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u3} A _inst_3)))] [_inst_9 : IsScalarTower.{u1, u2, u3} S R A (Algebra.toSMul.{u1, u2} S R _inst_1 (CommSemiring.toSemiring.{u2} R _inst_2) _inst_7) (SMulZeroClass.toSMul.{u2, u3} R A (SemigroupWithZero.toZero.{u3} A (NonUnitalSemiring.toSemigroupWithZero.{u3} A _inst_3)) (SMulWithZero.toSMulZeroClass.{u2, u3} R A (CommMonoidWithZero.toZero.{u2} R (CommSemiring.toCommMonoidWithZero.{u2} R _inst_2)) (SemigroupWithZero.toZero.{u3} A (NonUnitalSemiring.toSemigroupWithZero.{u3} A _inst_3)) (MulActionWithZero.toSMulWithZero.{u2, u3} R A (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R _inst_2)) (SemigroupWithZero.toZero.{u3} A (NonUnitalSemiring.toSemigroupWithZero.{u3} A _inst_3)) (Module.toMulActionWithZero.{u2, u3} R A (CommSemiring.toSemiring.{u2} R _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u3} A _inst_3)) _inst_4)))) (SMulZeroClass.toSMul.{u1, u3} S A (SemigroupWithZero.toZero.{u3} A (NonUnitalSemiring.toSemigroupWithZero.{u3} A _inst_3)) (DistribSMul.toSMulZeroClass.{u1, u3} S A (AddMonoid.toAddZeroClass.{u3} A (AddCommMonoid.toAddMonoid.{u3} A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u3} A _inst_3)))) (DistribMulAction.toDistribSMul.{u1, u3} S A (MonoidWithZero.toMonoid.{u1} S (Semiring.toMonoidWithZero.{u1} S (CommSemiring.toSemiring.{u1} S _inst_1))) (AddCommMonoid.toAddMonoid.{u3} A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u3} A _inst_3))) _inst_8)))], Algebra.{u1, max u3 u2} S (Unitization.{u2, u3} R A) _inst_1 (Unitization.semiring.{u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_5 _inst_6)
+Case conversion may be inaccurate. Consider using '#align unitization.algebra Unitization.algebraₓ'. -/
 instance algebra : Algebra S (Unitization R A) :=
   {
     (Unitization.inlRingHom R A).comp
@@ -583,23 +833,53 @@ instance algebra : Algebra S (Unitization R A) :=
       rw [inl_mul_inl, inl_mul_coe, smul_one_mul, inl_smul, coe_smul, smul_one_smul] }
 #align unitization.algebra Unitization.algebra
 
+/- warning: unitization.algebra_map_eq_inl_comp -> Unitization.algebraMap_eq_inl_comp is a dubious translation:
+lean 3 declaration is
+  forall (S : Type.{u1}) (R : Type.{u2}) (A : Type.{u3}) [_inst_1 : CommSemiring.{u1} S] [_inst_2 : CommSemiring.{u2} R] [_inst_3 : NonUnitalSemiring.{u3} A] [_inst_4 : Module.{u2, u3} R A (CommSemiring.toSemiring.{u2} R _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u3} A _inst_3))] [_inst_5 : IsScalarTower.{u2, u3, u3} R A A (SMulZeroClass.toHasSmul.{u2, u3} R A (AddZeroClass.toHasZero.{u3} A (AddMonoid.toAddZeroClass.{u3} A (AddCommMonoid.toAddMonoid.{u3} A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u3} A _inst_3))))) (SMulWithZero.toSmulZeroClass.{u2, u3} R A (MulZeroClass.toHasZero.{u2} R (MulZeroOneClass.toMulZeroClass.{u2} R (MonoidWithZero.toMulZeroOneClass.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R _inst_2))))) (AddZeroClass.toHasZero.{u3} A (AddMonoid.toAddZeroClass.{u3} A (AddCommMonoid.toAddMonoid.{u3} A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u3} A _inst_3))))) (MulActionWithZero.toSMulWithZero.{u2, u3} R A (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R _inst_2)) (AddZeroClass.toHasZero.{u3} A (AddMonoid.toAddZeroClass.{u3} A (AddCommMonoid.toAddMonoid.{u3} A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u3} A _inst_3))))) (Module.toMulActionWithZero.{u2, u3} R A (CommSemiring.toSemiring.{u2} R _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u3} A _inst_3)) _inst_4)))) (Mul.toSMul.{u3} A (Distrib.toHasMul.{u3} A (NonUnitalNonAssocSemiring.toDistrib.{u3} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u3} A _inst_3)))) (SMulZeroClass.toHasSmul.{u2, u3} R A (AddZeroClass.toHasZero.{u3} A (AddMonoid.toAddZeroClass.{u3} A (AddCommMonoid.toAddMonoid.{u3} A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u3} A _inst_3))))) (SMulWithZero.toSmulZeroClass.{u2, u3} R A (MulZeroClass.toHasZero.{u2} R (MulZeroOneClass.toMulZeroClass.{u2} R (MonoidWithZero.toMulZeroOneClass.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R _inst_2))))) (AddZeroClass.toHasZero.{u3} A (AddMonoid.toAddZeroClass.{u3} A (AddCommMonoid.toAddMonoid.{u3} A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u3} A _inst_3))))) (MulActionWithZero.toSMulWithZero.{u2, u3} R A (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R _inst_2)) (AddZeroClass.toHasZero.{u3} A (AddMonoid.toAddZeroClass.{u3} A (AddCommMonoid.toAddMonoid.{u3} A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u3} A _inst_3))))) (Module.toMulActionWithZero.{u2, u3} R A (CommSemiring.toSemiring.{u2} R _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u3} A _inst_3)) _inst_4))))] [_inst_6 : SMulCommClass.{u2, u3, u3} R A A (SMulZeroClass.toHasSmul.{u2, u3} R A (AddZeroClass.toHasZero.{u3} A (AddMonoid.toAddZeroClass.{u3} A (AddCommMonoid.toAddMonoid.{u3} A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u3} A _inst_3))))) (SMulWithZero.toSmulZeroClass.{u2, u3} R A (MulZeroClass.toHasZero.{u2} R (MulZeroOneClass.toMulZeroClass.{u2} R (MonoidWithZero.toMulZeroOneClass.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R _inst_2))))) (AddZeroClass.toHasZero.{u3} A (AddMonoid.toAddZeroClass.{u3} A (AddCommMonoid.toAddMonoid.{u3} A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u3} A _inst_3))))) (MulActionWithZero.toSMulWithZero.{u2, u3} R A (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R _inst_2)) (AddZeroClass.toHasZero.{u3} A (AddMonoid.toAddZeroClass.{u3} A (AddCommMonoid.toAddMonoid.{u3} A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u3} A _inst_3))))) (Module.toMulActionWithZero.{u2, u3} R A (CommSemiring.toSemiring.{u2} R _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u3} A _inst_3)) _inst_4)))) (Mul.toSMul.{u3} A (Distrib.toHasMul.{u3} A (NonUnitalNonAssocSemiring.toDistrib.{u3} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u3} A _inst_3))))] [_inst_7 : Algebra.{u1, u2} S R _inst_1 (CommSemiring.toSemiring.{u2} R _inst_2)] [_inst_8 : DistribMulAction.{u1, u3} S A (MonoidWithZero.toMonoid.{u1} S (Semiring.toMonoidWithZero.{u1} S (CommSemiring.toSemiring.{u1} S _inst_1))) (AddCommMonoid.toAddMonoid.{u3} A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u3} A _inst_3)))] [_inst_9 : IsScalarTower.{u1, u2, u3} S R A (SMulZeroClass.toHasSmul.{u1, u2} S R (AddZeroClass.toHasZero.{u2} R (AddMonoid.toAddZeroClass.{u2} R (AddCommMonoid.toAddMonoid.{u2} R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_2))))))) (SMulWithZero.toSmulZeroClass.{u1, u2} S R (MulZeroClass.toHasZero.{u1} S (MulZeroOneClass.toMulZeroClass.{u1} S (MonoidWithZero.toMulZeroOneClass.{u1} S (Semiring.toMonoidWithZero.{u1} S (CommSemiring.toSemiring.{u1} S _inst_1))))) (AddZeroClass.toHasZero.{u2} R (AddMonoid.toAddZeroClass.{u2} R (AddCommMonoid.toAddMonoid.{u2} R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_2))))))) (MulActionWithZero.toSMulWithZero.{u1, u2} S R (Semiring.toMonoidWithZero.{u1} S (CommSemiring.toSemiring.{u1} S _inst_1)) (AddZeroClass.toHasZero.{u2} R (AddMonoid.toAddZeroClass.{u2} R (AddCommMonoid.toAddMonoid.{u2} R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_2))))))) (Module.toMulActionWithZero.{u1, u2} S R (CommSemiring.toSemiring.{u1} S _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_2)))) (Algebra.toModule.{u1, u2} S R _inst_1 (CommSemiring.toSemiring.{u2} R _inst_2) _inst_7))))) (SMulZeroClass.toHasSmul.{u2, u3} R A (AddZeroClass.toHasZero.{u3} A (AddMonoid.toAddZeroClass.{u3} A (AddCommMonoid.toAddMonoid.{u3} A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u3} A _inst_3))))) (SMulWithZero.toSmulZeroClass.{u2, u3} R A (MulZeroClass.toHasZero.{u2} R (MulZeroOneClass.toMulZeroClass.{u2} R (MonoidWithZero.toMulZeroOneClass.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R _inst_2))))) (AddZeroClass.toHasZero.{u3} A (AddMonoid.toAddZeroClass.{u3} A (AddCommMonoid.toAddMonoid.{u3} A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u3} A _inst_3))))) (MulActionWithZero.toSMulWithZero.{u2, u3} R A (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R _inst_2)) (AddZeroClass.toHasZero.{u3} A (AddMonoid.toAddZeroClass.{u3} A (AddCommMonoid.toAddMonoid.{u3} A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u3} A _inst_3))))) (Module.toMulActionWithZero.{u2, u3} R A (CommSemiring.toSemiring.{u2} R _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u3} A _inst_3)) _inst_4)))) (SMulZeroClass.toHasSmul.{u1, u3} S A (AddZeroClass.toHasZero.{u3} A (AddMonoid.toAddZeroClass.{u3} A (AddCommMonoid.toAddMonoid.{u3} A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u3} A _inst_3))))) (DistribSMul.toSmulZeroClass.{u1, u3} S A (AddMonoid.toAddZeroClass.{u3} A (AddCommMonoid.toAddMonoid.{u3} A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u3} A _inst_3)))) (DistribMulAction.toDistribSMul.{u1, u3} S A (MonoidWithZero.toMonoid.{u1} S (Semiring.toMonoidWithZero.{u1} S (CommSemiring.toSemiring.{u1} S _inst_1))) (AddCommMonoid.toAddMonoid.{u3} A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u3} A _inst_3))) _inst_8)))], Eq.{max (succ u1) (succ (max u2 u3))} (S -> (Unitization.{u2, u3} R A)) (coeFn.{max (succ u1) (succ (max u2 u3)), max (succ u1) (succ (max u2 u3))} (RingHom.{u1, max u2 u3} S (Unitization.{u2, u3} R A) (Semiring.toNonAssocSemiring.{u1} S (CommSemiring.toSemiring.{u1} S _inst_1)) (Semiring.toNonAssocSemiring.{max u2 u3} (Unitization.{u2, u3} R A) (Unitization.semiring.{u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_5 _inst_6))) (fun (_x : RingHom.{u1, max u2 u3} S (Unitization.{u2, u3} R A) (Semiring.toNonAssocSemiring.{u1} S (CommSemiring.toSemiring.{u1} S _inst_1)) (Semiring.toNonAssocSemiring.{max u2 u3} (Unitization.{u2, u3} R A) (Unitization.semiring.{u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_5 _inst_6))) => S -> (Unitization.{u2, u3} R A)) (RingHom.hasCoeToFun.{u1, max u2 u3} S (Unitization.{u2, u3} R A) (Semiring.toNonAssocSemiring.{u1} S (CommSemiring.toSemiring.{u1} S _inst_1)) (Semiring.toNonAssocSemiring.{max u2 u3} (Unitization.{u2, u3} R A) (Unitization.semiring.{u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_5 _inst_6))) (algebraMap.{u1, max u2 u3} S (Unitization.{u2, u3} R A) _inst_1 (Unitization.semiring.{u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_5 _inst_6) (Unitization.algebra.{u1, u2, u3} S R A _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 _inst_6 _inst_7 _inst_8 _inst_9))) (Function.comp.{succ u1, succ u2, max (succ u2) (succ u3)} S R (Unitization.{u2, u3} R A) (Unitization.inl.{u2, u3} R A (MulZeroClass.toHasZero.{u3} A (NonUnitalNonAssocSemiring.toMulZeroClass.{u3} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u3} A _inst_3)))) (coeFn.{max (succ u1) (succ u2), max (succ u1) (succ u2)} (RingHom.{u1, u2} S R (Semiring.toNonAssocSemiring.{u1} S (CommSemiring.toSemiring.{u1} S _inst_1)) (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_2))) (fun (_x : RingHom.{u1, u2} S R (Semiring.toNonAssocSemiring.{u1} S (CommSemiring.toSemiring.{u1} S _inst_1)) (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_2))) => S -> R) (RingHom.hasCoeToFun.{u1, u2} S R (Semiring.toNonAssocSemiring.{u1} S (CommSemiring.toSemiring.{u1} S _inst_1)) (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_2))) (algebraMap.{u1, u2} S R _inst_1 (CommSemiring.toSemiring.{u2} R _inst_2) _inst_7)))
+but is expected to have type
+  forall (S : Type.{u3}) (R : Type.{u2}) (A : Type.{u1}) [_inst_1 : CommSemiring.{u3} S] [_inst_2 : CommSemiring.{u2} R] [_inst_3 : NonUnitalSemiring.{u1} A] [_inst_4 : Module.{u2, u1} R A (CommSemiring.toSemiring.{u2} R _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u1} A _inst_3))] [_inst_5 : IsScalarTower.{u2, u1, u1} R A A (SMulZeroClass.toSMul.{u2, u1} R A (SemigroupWithZero.toZero.{u1} A (NonUnitalSemiring.toSemigroupWithZero.{u1} A _inst_3)) (SMulWithZero.toSMulZeroClass.{u2, u1} R A (CommMonoidWithZero.toZero.{u2} R (CommSemiring.toCommMonoidWithZero.{u2} R _inst_2)) (SemigroupWithZero.toZero.{u1} A (NonUnitalSemiring.toSemigroupWithZero.{u1} A _inst_3)) (MulActionWithZero.toSMulWithZero.{u2, u1} R A (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R _inst_2)) (SemigroupWithZero.toZero.{u1} A (NonUnitalSemiring.toSemigroupWithZero.{u1} A _inst_3)) (Module.toMulActionWithZero.{u2, u1} R A (CommSemiring.toSemiring.{u2} R _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u1} A _inst_3)) _inst_4)))) (SMulZeroClass.toSMul.{u1, u1} A A (SemigroupWithZero.toZero.{u1} A (NonUnitalSemiring.toSemigroupWithZero.{u1} A _inst_3)) (SMulWithZero.toSMulZeroClass.{u1, u1} A A (SemigroupWithZero.toZero.{u1} A (NonUnitalSemiring.toSemigroupWithZero.{u1} A _inst_3)) (SemigroupWithZero.toZero.{u1} A (NonUnitalSemiring.toSemigroupWithZero.{u1} A _inst_3)) (MulZeroClass.toSMulWithZero.{u1} A (NonUnitalNonAssocSemiring.toMulZeroClass.{u1} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u1} A _inst_3))))) (SMulZeroClass.toSMul.{u2, u1} R A (SemigroupWithZero.toZero.{u1} A (NonUnitalSemiring.toSemigroupWithZero.{u1} A _inst_3)) (SMulWithZero.toSMulZeroClass.{u2, u1} R A (CommMonoidWithZero.toZero.{u2} R (CommSemiring.toCommMonoidWithZero.{u2} R _inst_2)) (SemigroupWithZero.toZero.{u1} A (NonUnitalSemiring.toSemigroupWithZero.{u1} A _inst_3)) (MulActionWithZero.toSMulWithZero.{u2, u1} R A (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R _inst_2)) (SemigroupWithZero.toZero.{u1} A (NonUnitalSemiring.toSemigroupWithZero.{u1} A _inst_3)) (Module.toMulActionWithZero.{u2, u1} R A (CommSemiring.toSemiring.{u2} R _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u1} A _inst_3)) _inst_4))))] [_inst_6 : SMulCommClass.{u2, u1, u1} R A A (SMulZeroClass.toSMul.{u2, u1} R A (SemigroupWithZero.toZero.{u1} A (NonUnitalSemiring.toSemigroupWithZero.{u1} A _inst_3)) (SMulWithZero.toSMulZeroClass.{u2, u1} R A (CommMonoidWithZero.toZero.{u2} R (CommSemiring.toCommMonoidWithZero.{u2} R _inst_2)) (SemigroupWithZero.toZero.{u1} A (NonUnitalSemiring.toSemigroupWithZero.{u1} A _inst_3)) (MulActionWithZero.toSMulWithZero.{u2, u1} R A (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R _inst_2)) (SemigroupWithZero.toZero.{u1} A (NonUnitalSemiring.toSemigroupWithZero.{u1} A _inst_3)) (Module.toMulActionWithZero.{u2, u1} R A (CommSemiring.toSemiring.{u2} R _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u1} A _inst_3)) _inst_4)))) (SMulZeroClass.toSMul.{u1, u1} A A (SemigroupWithZero.toZero.{u1} A (NonUnitalSemiring.toSemigroupWithZero.{u1} A _inst_3)) (SMulWithZero.toSMulZeroClass.{u1, u1} A A (SemigroupWithZero.toZero.{u1} A (NonUnitalSemiring.toSemigroupWithZero.{u1} A _inst_3)) (SemigroupWithZero.toZero.{u1} A (NonUnitalSemiring.toSemigroupWithZero.{u1} A _inst_3)) (MulZeroClass.toSMulWithZero.{u1} A (NonUnitalNonAssocSemiring.toMulZeroClass.{u1} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u1} A _inst_3)))))] [_inst_7 : Algebra.{u3, u2} S R _inst_1 (CommSemiring.toSemiring.{u2} R _inst_2)] [_inst_8 : DistribMulAction.{u3, u1} S A (MonoidWithZero.toMonoid.{u3} S (Semiring.toMonoidWithZero.{u3} S (CommSemiring.toSemiring.{u3} S _inst_1))) (AddCommMonoid.toAddMonoid.{u1} A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u1} A _inst_3)))] [_inst_9 : IsScalarTower.{u3, u2, u1} S R A (Algebra.toSMul.{u3, u2} S R _inst_1 (CommSemiring.toSemiring.{u2} R _inst_2) _inst_7) (SMulZeroClass.toSMul.{u2, u1} R A (SemigroupWithZero.toZero.{u1} A (NonUnitalSemiring.toSemigroupWithZero.{u1} A _inst_3)) (SMulWithZero.toSMulZeroClass.{u2, u1} R A (CommMonoidWithZero.toZero.{u2} R (CommSemiring.toCommMonoidWithZero.{u2} R _inst_2)) (SemigroupWithZero.toZero.{u1} A (NonUnitalSemiring.toSemigroupWithZero.{u1} A _inst_3)) (MulActionWithZero.toSMulWithZero.{u2, u1} R A (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R _inst_2)) (SemigroupWithZero.toZero.{u1} A (NonUnitalSemiring.toSemigroupWithZero.{u1} A _inst_3)) (Module.toMulActionWithZero.{u2, u1} R A (CommSemiring.toSemiring.{u2} R _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u1} A _inst_3)) _inst_4)))) (SMulZeroClass.toSMul.{u3, u1} S A (SemigroupWithZero.toZero.{u1} A (NonUnitalSemiring.toSemigroupWithZero.{u1} A _inst_3)) (DistribSMul.toSMulZeroClass.{u3, u1} S A (AddMonoid.toAddZeroClass.{u1} A (AddCommMonoid.toAddMonoid.{u1} A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u1} A _inst_3)))) (DistribMulAction.toDistribSMul.{u3, u1} S A (MonoidWithZero.toMonoid.{u3} S (Semiring.toMonoidWithZero.{u3} S (CommSemiring.toSemiring.{u3} S _inst_1))) (AddCommMonoid.toAddMonoid.{u1} A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u1} A _inst_3))) _inst_8)))], Eq.{max (max (succ u3) (succ u2)) (succ u1)} (forall (ᾰ : S), (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : S) => Unitization.{u2, u1} R A) ᾰ) (FunLike.coe.{max (max (succ u3) (succ u2)) (succ u1), succ u3, max (succ u2) (succ u1)} (RingHom.{u3, max u1 u2} S (Unitization.{u2, u1} R A) (Semiring.toNonAssocSemiring.{u3} S (CommSemiring.toSemiring.{u3} S _inst_1)) (Semiring.toNonAssocSemiring.{max u1 u2} (Unitization.{u2, u1} R A) (Unitization.semiring.{u2, u1} R A _inst_2 _inst_3 _inst_4 _inst_5 _inst_6))) S (fun (_x : S) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : S) => Unitization.{u2, u1} R A) _x) (MulHomClass.toFunLike.{max (max u3 u2) u1, u3, max u2 u1} (RingHom.{u3, max u1 u2} S (Unitization.{u2, u1} R A) (Semiring.toNonAssocSemiring.{u3} S (CommSemiring.toSemiring.{u3} S _inst_1)) (Semiring.toNonAssocSemiring.{max u1 u2} (Unitization.{u2, u1} R A) (Unitization.semiring.{u2, u1} R A _inst_2 _inst_3 _inst_4 _inst_5 _inst_6))) S (Unitization.{u2, u1} R A) (NonUnitalNonAssocSemiring.toMul.{u3} S (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} S (Semiring.toNonAssocSemiring.{u3} S (CommSemiring.toSemiring.{u3} S _inst_1)))) (NonUnitalNonAssocSemiring.toMul.{max u2 u1} (Unitization.{u2, u1} R A) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{max u2 u1} (Unitization.{u2, u1} R A) (Semiring.toNonAssocSemiring.{max u1 u2} (Unitization.{u2, u1} R A) (Unitization.semiring.{u2, u1} R A _inst_2 _inst_3 _inst_4 _inst_5 _inst_6)))) (NonUnitalRingHomClass.toMulHomClass.{max (max u3 u2) u1, u3, max u2 u1} (RingHom.{u3, max u1 u2} S (Unitization.{u2, u1} R A) (Semiring.toNonAssocSemiring.{u3} S (CommSemiring.toSemiring.{u3} S _inst_1)) (Semiring.toNonAssocSemiring.{max u1 u2} (Unitization.{u2, u1} R A) (Unitization.semiring.{u2, u1} R A _inst_2 _inst_3 _inst_4 _inst_5 _inst_6))) S (Unitization.{u2, u1} R A) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} S (Semiring.toNonAssocSemiring.{u3} S (CommSemiring.toSemiring.{u3} S _inst_1))) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{max u2 u1} (Unitization.{u2, u1} R A) (Semiring.toNonAssocSemiring.{max u1 u2} (Unitization.{u2, u1} R A) (Unitization.semiring.{u2, u1} R A _inst_2 _inst_3 _inst_4 _inst_5 _inst_6))) (RingHomClass.toNonUnitalRingHomClass.{max (max u3 u2) u1, u3, max u2 u1} (RingHom.{u3, max u1 u2} S (Unitization.{u2, u1} R A) (Semiring.toNonAssocSemiring.{u3} S (CommSemiring.toSemiring.{u3} S _inst_1)) (Semiring.toNonAssocSemiring.{max u1 u2} (Unitization.{u2, u1} R A) (Unitization.semiring.{u2, u1} R A _inst_2 _inst_3 _inst_4 _inst_5 _inst_6))) S (Unitization.{u2, u1} R A) (Semiring.toNonAssocSemiring.{u3} S (CommSemiring.toSemiring.{u3} S _inst_1)) (Semiring.toNonAssocSemiring.{max u1 u2} (Unitization.{u2, u1} R A) (Unitization.semiring.{u2, u1} R A _inst_2 _inst_3 _inst_4 _inst_5 _inst_6)) (RingHom.instRingHomClassRingHom.{u3, max u2 u1} S (Unitization.{u2, u1} R A) (Semiring.toNonAssocSemiring.{u3} S (CommSemiring.toSemiring.{u3} S _inst_1)) (Semiring.toNonAssocSemiring.{max u1 u2} (Unitization.{u2, u1} R A) (Unitization.semiring.{u2, u1} R A _inst_2 _inst_3 _inst_4 _inst_5 _inst_6)))))) (algebraMap.{u3, max u1 u2} S (Unitization.{u2, u1} R A) _inst_1 (Unitization.semiring.{u2, u1} R A _inst_2 _inst_3 _inst_4 _inst_5 _inst_6) (Unitization.algebra.{u3, u2, u1} S R A _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 _inst_6 _inst_7 _inst_8 _inst_9))) (Function.comp.{succ u3, succ u2, max (succ u1) (succ u2)} S R (Unitization.{u2, u1} R A) (Unitization.inl.{u2, u1} R A (SemigroupWithZero.toZero.{u1} A (NonUnitalSemiring.toSemigroupWithZero.{u1} A _inst_3))) (FunLike.coe.{max (succ u3) (succ u2), succ u3, succ u2} (RingHom.{u3, u2} S R (Semiring.toNonAssocSemiring.{u3} S (CommSemiring.toSemiring.{u3} S _inst_1)) (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_2))) S (fun (_x : S) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : S) => R) _x) (MulHomClass.toFunLike.{max u3 u2, u3, u2} (RingHom.{u3, u2} S R (Semiring.toNonAssocSemiring.{u3} S (CommSemiring.toSemiring.{u3} S _inst_1)) (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_2))) S R (NonUnitalNonAssocSemiring.toMul.{u3} S (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} S (Semiring.toNonAssocSemiring.{u3} S (CommSemiring.toSemiring.{u3} S _inst_1)))) (NonUnitalNonAssocSemiring.toMul.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_2)))) (NonUnitalRingHomClass.toMulHomClass.{max u3 u2, u3, u2} (RingHom.{u3, u2} S R (Semiring.toNonAssocSemiring.{u3} S (CommSemiring.toSemiring.{u3} S _inst_1)) (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_2))) S R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} S (Semiring.toNonAssocSemiring.{u3} S (CommSemiring.toSemiring.{u3} S _inst_1))) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_2))) (RingHomClass.toNonUnitalRingHomClass.{max u3 u2, u3, u2} (RingHom.{u3, u2} S R (Semiring.toNonAssocSemiring.{u3} S (CommSemiring.toSemiring.{u3} S _inst_1)) (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_2))) S R (Semiring.toNonAssocSemiring.{u3} S (CommSemiring.toSemiring.{u3} S _inst_1)) (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_2)) (RingHom.instRingHomClassRingHom.{u3, u2} S R (Semiring.toNonAssocSemiring.{u3} S (CommSemiring.toSemiring.{u3} S _inst_1)) (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_2)))))) (algebraMap.{u3, u2} S R _inst_1 (CommSemiring.toSemiring.{u2} R _inst_2) _inst_7)))
+Case conversion may be inaccurate. Consider using '#align unitization.algebra_map_eq_inl_comp Unitization.algebraMap_eq_inl_compₓ'. -/
 theorem algebraMap_eq_inl_comp : ⇑(algebraMap S (Unitization R A)) = inl ∘ algebraMap S R :=
   rfl
 #align unitization.algebra_map_eq_inl_comp Unitization.algebraMap_eq_inl_comp
 
+/- warning: unitization.algebra_map_eq_inl_ring_hom_comp -> Unitization.algebraMap_eq_inlRingHom_comp is a dubious translation:
+lean 3 declaration is
+  forall (S : Type.{u1}) (R : Type.{u2}) (A : Type.{u3}) [_inst_1 : CommSemiring.{u1} S] [_inst_2 : CommSemiring.{u2} R] [_inst_3 : NonUnitalSemiring.{u3} A] [_inst_4 : Module.{u2, u3} R A (CommSemiring.toSemiring.{u2} R _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u3} A _inst_3))] [_inst_5 : IsScalarTower.{u2, u3, u3} R A A (SMulZeroClass.toHasSmul.{u2, u3} R A (AddZeroClass.toHasZero.{u3} A (AddMonoid.toAddZeroClass.{u3} A (AddCommMonoid.toAddMonoid.{u3} A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u3} A _inst_3))))) (SMulWithZero.toSmulZeroClass.{u2, u3} R A (MulZeroClass.toHasZero.{u2} R (MulZeroOneClass.toMulZeroClass.{u2} R (MonoidWithZero.toMulZeroOneClass.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R _inst_2))))) (AddZeroClass.toHasZero.{u3} A (AddMonoid.toAddZeroClass.{u3} A (AddCommMonoid.toAddMonoid.{u3} A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u3} A _inst_3))))) (MulActionWithZero.toSMulWithZero.{u2, u3} R A (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R _inst_2)) (AddZeroClass.toHasZero.{u3} A (AddMonoid.toAddZeroClass.{u3} A (AddCommMonoid.toAddMonoid.{u3} A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u3} A _inst_3))))) (Module.toMulActionWithZero.{u2, u3} R A (CommSemiring.toSemiring.{u2} R _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u3} A _inst_3)) _inst_4)))) (Mul.toSMul.{u3} A (Distrib.toHasMul.{u3} A (NonUnitalNonAssocSemiring.toDistrib.{u3} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u3} A _inst_3)))) (SMulZeroClass.toHasSmul.{u2, u3} R A (AddZeroClass.toHasZero.{u3} A (AddMonoid.toAddZeroClass.{u3} A (AddCommMonoid.toAddMonoid.{u3} A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u3} A _inst_3))))) (SMulWithZero.toSmulZeroClass.{u2, u3} R A (MulZeroClass.toHasZero.{u2} R (MulZeroOneClass.toMulZeroClass.{u2} R (MonoidWithZero.toMulZeroOneClass.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R _inst_2))))) (AddZeroClass.toHasZero.{u3} A (AddMonoid.toAddZeroClass.{u3} A (AddCommMonoid.toAddMonoid.{u3} A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u3} A _inst_3))))) (MulActionWithZero.toSMulWithZero.{u2, u3} R A (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R _inst_2)) (AddZeroClass.toHasZero.{u3} A (AddMonoid.toAddZeroClass.{u3} A (AddCommMonoid.toAddMonoid.{u3} A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u3} A _inst_3))))) (Module.toMulActionWithZero.{u2, u3} R A (CommSemiring.toSemiring.{u2} R _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u3} A _inst_3)) _inst_4))))] [_inst_6 : SMulCommClass.{u2, u3, u3} R A A (SMulZeroClass.toHasSmul.{u2, u3} R A (AddZeroClass.toHasZero.{u3} A (AddMonoid.toAddZeroClass.{u3} A (AddCommMonoid.toAddMonoid.{u3} A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u3} A _inst_3))))) (SMulWithZero.toSmulZeroClass.{u2, u3} R A (MulZeroClass.toHasZero.{u2} R (MulZeroOneClass.toMulZeroClass.{u2} R (MonoidWithZero.toMulZeroOneClass.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R _inst_2))))) (AddZeroClass.toHasZero.{u3} A (AddMonoid.toAddZeroClass.{u3} A (AddCommMonoid.toAddMonoid.{u3} A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u3} A _inst_3))))) (MulActionWithZero.toSMulWithZero.{u2, u3} R A (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R _inst_2)) (AddZeroClass.toHasZero.{u3} A (AddMonoid.toAddZeroClass.{u3} A (AddCommMonoid.toAddMonoid.{u3} A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u3} A _inst_3))))) (Module.toMulActionWithZero.{u2, u3} R A (CommSemiring.toSemiring.{u2} R _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u3} A _inst_3)) _inst_4)))) (Mul.toSMul.{u3} A (Distrib.toHasMul.{u3} A (NonUnitalNonAssocSemiring.toDistrib.{u3} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u3} A _inst_3))))] [_inst_7 : Algebra.{u1, u2} S R _inst_1 (CommSemiring.toSemiring.{u2} R _inst_2)] [_inst_8 : DistribMulAction.{u1, u3} S A (MonoidWithZero.toMonoid.{u1} S (Semiring.toMonoidWithZero.{u1} S (CommSemiring.toSemiring.{u1} S _inst_1))) (AddCommMonoid.toAddMonoid.{u3} A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u3} A _inst_3)))] [_inst_9 : IsScalarTower.{u1, u2, u3} S R A (SMulZeroClass.toHasSmul.{u1, u2} S R (AddZeroClass.toHasZero.{u2} R (AddMonoid.toAddZeroClass.{u2} R (AddCommMonoid.toAddMonoid.{u2} R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_2))))))) (SMulWithZero.toSmulZeroClass.{u1, u2} S R (MulZeroClass.toHasZero.{u1} S (MulZeroOneClass.toMulZeroClass.{u1} S (MonoidWithZero.toMulZeroOneClass.{u1} S (Semiring.toMonoidWithZero.{u1} S (CommSemiring.toSemiring.{u1} S _inst_1))))) (AddZeroClass.toHasZero.{u2} R (AddMonoid.toAddZeroClass.{u2} R (AddCommMonoid.toAddMonoid.{u2} R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_2))))))) (MulActionWithZero.toSMulWithZero.{u1, u2} S R (Semiring.toMonoidWithZero.{u1} S (CommSemiring.toSemiring.{u1} S _inst_1)) (AddZeroClass.toHasZero.{u2} R (AddMonoid.toAddZeroClass.{u2} R (AddCommMonoid.toAddMonoid.{u2} R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_2))))))) (Module.toMulActionWithZero.{u1, u2} S R (CommSemiring.toSemiring.{u1} S _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_2)))) (Algebra.toModule.{u1, u2} S R _inst_1 (CommSemiring.toSemiring.{u2} R _inst_2) _inst_7))))) (SMulZeroClass.toHasSmul.{u2, u3} R A (AddZeroClass.toHasZero.{u3} A (AddMonoid.toAddZeroClass.{u3} A (AddCommMonoid.toAddMonoid.{u3} A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u3} A _inst_3))))) (SMulWithZero.toSmulZeroClass.{u2, u3} R A (MulZeroClass.toHasZero.{u2} R (MulZeroOneClass.toMulZeroClass.{u2} R (MonoidWithZero.toMulZeroOneClass.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R _inst_2))))) (AddZeroClass.toHasZero.{u3} A (AddMonoid.toAddZeroClass.{u3} A (AddCommMonoid.toAddMonoid.{u3} A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u3} A _inst_3))))) (MulActionWithZero.toSMulWithZero.{u2, u3} R A (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R _inst_2)) (AddZeroClass.toHasZero.{u3} A (AddMonoid.toAddZeroClass.{u3} A (AddCommMonoid.toAddMonoid.{u3} A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u3} A _inst_3))))) (Module.toMulActionWithZero.{u2, u3} R A (CommSemiring.toSemiring.{u2} R _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u3} A _inst_3)) _inst_4)))) (SMulZeroClass.toHasSmul.{u1, u3} S A (AddZeroClass.toHasZero.{u3} A (AddMonoid.toAddZeroClass.{u3} A (AddCommMonoid.toAddMonoid.{u3} A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u3} A _inst_3))))) (DistribSMul.toSmulZeroClass.{u1, u3} S A (AddMonoid.toAddZeroClass.{u3} A (AddCommMonoid.toAddMonoid.{u3} A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u3} A _inst_3)))) (DistribMulAction.toDistribSMul.{u1, u3} S A (MonoidWithZero.toMonoid.{u1} S (Semiring.toMonoidWithZero.{u1} S (CommSemiring.toSemiring.{u1} S _inst_1))) (AddCommMonoid.toAddMonoid.{u3} A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u3} A _inst_3))) _inst_8)))], Eq.{max (succ u1) (succ (max u2 u3))} (RingHom.{u1, max u2 u3} S (Unitization.{u2, u3} R A) (Semiring.toNonAssocSemiring.{u1} S (CommSemiring.toSemiring.{u1} S _inst_1)) (Semiring.toNonAssocSemiring.{max u2 u3} (Unitization.{u2, u3} R A) (Unitization.semiring.{u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_5 _inst_6))) (algebraMap.{u1, max u2 u3} S (Unitization.{u2, u3} R A) _inst_1 (Unitization.semiring.{u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_5 _inst_6) (Unitization.algebra.{u1, u2, u3} S R A _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 _inst_6 _inst_7 _inst_8 _inst_9)) (RingHom.comp.{u1, u2, max u2 u3} S R (Unitization.{u2, u3} R A) (Semiring.toNonAssocSemiring.{u1} S (CommSemiring.toSemiring.{u1} S _inst_1)) (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_2)) (Unitization.nonAssocSemiring.{u2, u3} R A (CommSemiring.toSemiring.{u2} R _inst_2) (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u3} A _inst_3) _inst_4) (Unitization.inlRingHom.{u2, u3} R A (CommSemiring.toSemiring.{u2} R _inst_2) _inst_3 _inst_4) (algebraMap.{u1, u2} S R _inst_1 (CommSemiring.toSemiring.{u2} R _inst_2) _inst_7))
+but is expected to have type
+  forall (S : Type.{u3}) (R : Type.{u2}) (A : Type.{u1}) [_inst_1 : CommSemiring.{u3} S] [_inst_2 : CommSemiring.{u2} R] [_inst_3 : NonUnitalSemiring.{u1} A] [_inst_4 : Module.{u2, u1} R A (CommSemiring.toSemiring.{u2} R _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u1} A _inst_3))] [_inst_5 : IsScalarTower.{u2, u1, u1} R A A (SMulZeroClass.toSMul.{u2, u1} R A (SemigroupWithZero.toZero.{u1} A (NonUnitalSemiring.toSemigroupWithZero.{u1} A _inst_3)) (SMulWithZero.toSMulZeroClass.{u2, u1} R A (CommMonoidWithZero.toZero.{u2} R (CommSemiring.toCommMonoidWithZero.{u2} R _inst_2)) (SemigroupWithZero.toZero.{u1} A (NonUnitalSemiring.toSemigroupWithZero.{u1} A _inst_3)) (MulActionWithZero.toSMulWithZero.{u2, u1} R A (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R _inst_2)) (SemigroupWithZero.toZero.{u1} A (NonUnitalSemiring.toSemigroupWithZero.{u1} A _inst_3)) (Module.toMulActionWithZero.{u2, u1} R A (CommSemiring.toSemiring.{u2} R _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u1} A _inst_3)) _inst_4)))) (SMulZeroClass.toSMul.{u1, u1} A A (SemigroupWithZero.toZero.{u1} A (NonUnitalSemiring.toSemigroupWithZero.{u1} A _inst_3)) (SMulWithZero.toSMulZeroClass.{u1, u1} A A (SemigroupWithZero.toZero.{u1} A (NonUnitalSemiring.toSemigroupWithZero.{u1} A _inst_3)) (SemigroupWithZero.toZero.{u1} A (NonUnitalSemiring.toSemigroupWithZero.{u1} A _inst_3)) (MulZeroClass.toSMulWithZero.{u1} A (NonUnitalNonAssocSemiring.toMulZeroClass.{u1} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u1} A _inst_3))))) (SMulZeroClass.toSMul.{u2, u1} R A (SemigroupWithZero.toZero.{u1} A (NonUnitalSemiring.toSemigroupWithZero.{u1} A _inst_3)) (SMulWithZero.toSMulZeroClass.{u2, u1} R A (CommMonoidWithZero.toZero.{u2} R (CommSemiring.toCommMonoidWithZero.{u2} R _inst_2)) (SemigroupWithZero.toZero.{u1} A (NonUnitalSemiring.toSemigroupWithZero.{u1} A _inst_3)) (MulActionWithZero.toSMulWithZero.{u2, u1} R A (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R _inst_2)) (SemigroupWithZero.toZero.{u1} A (NonUnitalSemiring.toSemigroupWithZero.{u1} A _inst_3)) (Module.toMulActionWithZero.{u2, u1} R A (CommSemiring.toSemiring.{u2} R _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u1} A _inst_3)) _inst_4))))] [_inst_6 : SMulCommClass.{u2, u1, u1} R A A (SMulZeroClass.toSMul.{u2, u1} R A (SemigroupWithZero.toZero.{u1} A (NonUnitalSemiring.toSemigroupWithZero.{u1} A _inst_3)) (SMulWithZero.toSMulZeroClass.{u2, u1} R A (CommMonoidWithZero.toZero.{u2} R (CommSemiring.toCommMonoidWithZero.{u2} R _inst_2)) (SemigroupWithZero.toZero.{u1} A (NonUnitalSemiring.toSemigroupWithZero.{u1} A _inst_3)) (MulActionWithZero.toSMulWithZero.{u2, u1} R A (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R _inst_2)) (SemigroupWithZero.toZero.{u1} A (NonUnitalSemiring.toSemigroupWithZero.{u1} A _inst_3)) (Module.toMulActionWithZero.{u2, u1} R A (CommSemiring.toSemiring.{u2} R _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u1} A _inst_3)) _inst_4)))) (SMulZeroClass.toSMul.{u1, u1} A A (SemigroupWithZero.toZero.{u1} A (NonUnitalSemiring.toSemigroupWithZero.{u1} A _inst_3)) (SMulWithZero.toSMulZeroClass.{u1, u1} A A (SemigroupWithZero.toZero.{u1} A (NonUnitalSemiring.toSemigroupWithZero.{u1} A _inst_3)) (SemigroupWithZero.toZero.{u1} A (NonUnitalSemiring.toSemigroupWithZero.{u1} A _inst_3)) (MulZeroClass.toSMulWithZero.{u1} A (NonUnitalNonAssocSemiring.toMulZeroClass.{u1} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u1} A _inst_3)))))] [_inst_7 : Algebra.{u3, u2} S R _inst_1 (CommSemiring.toSemiring.{u2} R _inst_2)] [_inst_8 : DistribMulAction.{u3, u1} S A (MonoidWithZero.toMonoid.{u3} S (Semiring.toMonoidWithZero.{u3} S (CommSemiring.toSemiring.{u3} S _inst_1))) (AddCommMonoid.toAddMonoid.{u1} A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u1} A _inst_3)))] [_inst_9 : IsScalarTower.{u3, u2, u1} S R A (Algebra.toSMul.{u3, u2} S R _inst_1 (CommSemiring.toSemiring.{u2} R _inst_2) _inst_7) (SMulZeroClass.toSMul.{u2, u1} R A (SemigroupWithZero.toZero.{u1} A (NonUnitalSemiring.toSemigroupWithZero.{u1} A _inst_3)) (SMulWithZero.toSMulZeroClass.{u2, u1} R A (CommMonoidWithZero.toZero.{u2} R (CommSemiring.toCommMonoidWithZero.{u2} R _inst_2)) (SemigroupWithZero.toZero.{u1} A (NonUnitalSemiring.toSemigroupWithZero.{u1} A _inst_3)) (MulActionWithZero.toSMulWithZero.{u2, u1} R A (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R _inst_2)) (SemigroupWithZero.toZero.{u1} A (NonUnitalSemiring.toSemigroupWithZero.{u1} A _inst_3)) (Module.toMulActionWithZero.{u2, u1} R A (CommSemiring.toSemiring.{u2} R _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u1} A _inst_3)) _inst_4)))) (SMulZeroClass.toSMul.{u3, u1} S A (SemigroupWithZero.toZero.{u1} A (NonUnitalSemiring.toSemigroupWithZero.{u1} A _inst_3)) (DistribSMul.toSMulZeroClass.{u3, u1} S A (AddMonoid.toAddZeroClass.{u1} A (AddCommMonoid.toAddMonoid.{u1} A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u1} A _inst_3)))) (DistribMulAction.toDistribSMul.{u3, u1} S A (MonoidWithZero.toMonoid.{u3} S (Semiring.toMonoidWithZero.{u3} S (CommSemiring.toSemiring.{u3} S _inst_1))) (AddCommMonoid.toAddMonoid.{u1} A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u1} A _inst_3))) _inst_8)))], Eq.{max (max (succ u3) (succ u2)) (succ u1)} (RingHom.{u3, max u1 u2} S (Unitization.{u2, u1} R A) (Semiring.toNonAssocSemiring.{u3} S (CommSemiring.toSemiring.{u3} S _inst_1)) (Semiring.toNonAssocSemiring.{max u1 u2} (Unitization.{u2, u1} R A) (Unitization.semiring.{u2, u1} R A _inst_2 _inst_3 _inst_4 _inst_5 _inst_6))) (algebraMap.{u3, max u1 u2} S (Unitization.{u2, u1} R A) _inst_1 (Unitization.semiring.{u2, u1} R A _inst_2 _inst_3 _inst_4 _inst_5 _inst_6) (Unitization.algebra.{u3, u2, u1} S R A _inst_1 _inst_2 _inst_3 _inst_4 _inst_5 _inst_6 _inst_7 _inst_8 _inst_9)) (RingHom.comp.{u3, u2, max u2 u1} S R (Unitization.{u2, u1} R A) (Semiring.toNonAssocSemiring.{u3} S (CommSemiring.toSemiring.{u3} S _inst_1)) (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_2)) (Unitization.nonAssocSemiring.{u2, u1} R A (CommSemiring.toSemiring.{u2} R _inst_2) (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u1} A _inst_3) _inst_4) (Unitization.inlRingHom.{u2, u1} R A (CommSemiring.toSemiring.{u2} R _inst_2) _inst_3 _inst_4) (algebraMap.{u3, u2} S R _inst_1 (CommSemiring.toSemiring.{u2} R _inst_2) _inst_7))
+Case conversion may be inaccurate. Consider using '#align unitization.algebra_map_eq_inl_ring_hom_comp Unitization.algebraMap_eq_inlRingHom_compₓ'. -/
 theorem algebraMap_eq_inlRingHom_comp :
     algebraMap S (Unitization R A) = (inlRingHom R A).comp (algebraMap S R) :=
   rfl
 #align unitization.algebra_map_eq_inl_ring_hom_comp Unitization.algebraMap_eq_inlRingHom_comp
 
+/- warning: unitization.algebra_map_eq_inl -> Unitization.algebraMap_eq_inl is a dubious translation:
+lean 3 declaration is
+  forall (R : Type.{u1}) (A : Type.{u2}) [_inst_2 : CommSemiring.{u1} R] [_inst_3 : NonUnitalSemiring.{u2} A] [_inst_4 : Module.{u1, u2} R A (CommSemiring.toSemiring.{u1} R _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u2} A _inst_3))] [_inst_5 : IsScalarTower.{u1, u2, u2} R A A (SMulZeroClass.toHasSmul.{u1, u2} R A (AddZeroClass.toHasZero.{u2} A (AddMonoid.toAddZeroClass.{u2} A (AddCommMonoid.toAddMonoid.{u2} A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u2} A _inst_3))))) (SMulWithZero.toSmulZeroClass.{u1, u2} R A (MulZeroClass.toHasZero.{u1} R (MulZeroOneClass.toMulZeroClass.{u1} R (MonoidWithZero.toMulZeroOneClass.{u1} R (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R _inst_2))))) (AddZeroClass.toHasZero.{u2} A (AddMonoid.toAddZeroClass.{u2} A (AddCommMonoid.toAddMonoid.{u2} A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u2} A _inst_3))))) (MulActionWithZero.toSMulWithZero.{u1, u2} R A (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R _inst_2)) (AddZeroClass.toHasZero.{u2} A (AddMonoid.toAddZeroClass.{u2} A (AddCommMonoid.toAddMonoid.{u2} A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u2} A _inst_3))))) (Module.toMulActionWithZero.{u1, u2} R A (CommSemiring.toSemiring.{u1} R _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u2} A _inst_3)) _inst_4)))) (Mul.toSMul.{u2} A (Distrib.toHasMul.{u2} A (NonUnitalNonAssocSemiring.toDistrib.{u2} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u2} A _inst_3)))) (SMulZeroClass.toHasSmul.{u1, u2} R A (AddZeroClass.toHasZero.{u2} A (AddMonoid.toAddZeroClass.{u2} A (AddCommMonoid.toAddMonoid.{u2} A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u2} A _inst_3))))) (SMulWithZero.toSmulZeroClass.{u1, u2} R A (MulZeroClass.toHasZero.{u1} R (MulZeroOneClass.toMulZeroClass.{u1} R (MonoidWithZero.toMulZeroOneClass.{u1} R (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R _inst_2))))) (AddZeroClass.toHasZero.{u2} A (AddMonoid.toAddZeroClass.{u2} A (AddCommMonoid.toAddMonoid.{u2} A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u2} A _inst_3))))) (MulActionWithZero.toSMulWithZero.{u1, u2} R A (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R _inst_2)) (AddZeroClass.toHasZero.{u2} A (AddMonoid.toAddZeroClass.{u2} A (AddCommMonoid.toAddMonoid.{u2} A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u2} A _inst_3))))) (Module.toMulActionWithZero.{u1, u2} R A (CommSemiring.toSemiring.{u1} R _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u2} A _inst_3)) _inst_4))))] [_inst_6 : SMulCommClass.{u1, u2, u2} R A A (SMulZeroClass.toHasSmul.{u1, u2} R A (AddZeroClass.toHasZero.{u2} A (AddMonoid.toAddZeroClass.{u2} A (AddCommMonoid.toAddMonoid.{u2} A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u2} A _inst_3))))) (SMulWithZero.toSmulZeroClass.{u1, u2} R A (MulZeroClass.toHasZero.{u1} R (MulZeroOneClass.toMulZeroClass.{u1} R (MonoidWithZero.toMulZeroOneClass.{u1} R (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R _inst_2))))) (AddZeroClass.toHasZero.{u2} A (AddMonoid.toAddZeroClass.{u2} A (AddCommMonoid.toAddMonoid.{u2} A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u2} A _inst_3))))) (MulActionWithZero.toSMulWithZero.{u1, u2} R A (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R _inst_2)) (AddZeroClass.toHasZero.{u2} A (AddMonoid.toAddZeroClass.{u2} A (AddCommMonoid.toAddMonoid.{u2} A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u2} A _inst_3))))) (Module.toMulActionWithZero.{u1, u2} R A (CommSemiring.toSemiring.{u1} R _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u2} A _inst_3)) _inst_4)))) (Mul.toSMul.{u2} A (Distrib.toHasMul.{u2} A (NonUnitalNonAssocSemiring.toDistrib.{u2} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u2} A _inst_3))))], Eq.{max (succ u1) (succ (max u1 u2))} (R -> (Unitization.{u1, u2} R A)) (coeFn.{max (succ u1) (succ (max u1 u2)), max (succ u1) (succ (max u1 u2))} (RingHom.{u1, max u1 u2} R (Unitization.{u1, u2} R A) (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R _inst_2)) (Semiring.toNonAssocSemiring.{max u1 u2} (Unitization.{u1, u2} R A) (Unitization.semiring.{u1, u2} R A _inst_2 _inst_3 _inst_4 _inst_5 _inst_6))) (fun (_x : RingHom.{u1, max u1 u2} R (Unitization.{u1, u2} R A) (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R _inst_2)) (Semiring.toNonAssocSemiring.{max u1 u2} (Unitization.{u1, u2} R A) (Unitization.semiring.{u1, u2} R A _inst_2 _inst_3 _inst_4 _inst_5 _inst_6))) => R -> (Unitization.{u1, u2} R A)) (RingHom.hasCoeToFun.{u1, max u1 u2} R (Unitization.{u1, u2} R A) (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R _inst_2)) (Semiring.toNonAssocSemiring.{max u1 u2} (Unitization.{u1, u2} R A) (Unitization.semiring.{u1, u2} R A _inst_2 _inst_3 _inst_4 _inst_5 _inst_6))) (algebraMap.{u1, max u1 u2} R (Unitization.{u1, u2} R A) _inst_2 (Unitization.semiring.{u1, u2} R A _inst_2 _inst_3 _inst_4 _inst_5 _inst_6) (Unitization.algebra.{u1, u1, u2} R R A _inst_2 _inst_2 _inst_3 _inst_4 _inst_5 _inst_6 (Algebra.id.{u1} R _inst_2) (Module.toDistribMulAction.{u1, u2} R A (CommSemiring.toSemiring.{u1} R _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u2} A _inst_3)) _inst_4) (IsScalarTower.left.{u1, u2} R A (MonoidWithZero.toMonoid.{u1} R (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R _inst_2))) (MulActionWithZero.toMulAction.{u1, u2} R A (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R _inst_2)) (AddZeroClass.toHasZero.{u2} A (AddMonoid.toAddZeroClass.{u2} A (AddCommMonoid.toAddMonoid.{u2} A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u2} A _inst_3))))) (Module.toMulActionWithZero.{u1, u2} R A (CommSemiring.toSemiring.{u1} R _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u2} A _inst_3)) _inst_4)))))) (Unitization.inl.{u1, u2} R A (MulZeroClass.toHasZero.{u2} A (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u2} A _inst_3))))
+but is expected to have type
+  forall (R : Type.{u2}) (A : Type.{u1}) [_inst_2 : CommSemiring.{u2} R] [_inst_3 : NonUnitalSemiring.{u1} A] [_inst_4 : Module.{u2, u1} R A (CommSemiring.toSemiring.{u2} R _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u1} A _inst_3))] [_inst_5 : IsScalarTower.{u2, u1, u1} R A A (SMulZeroClass.toSMul.{u2, u1} R A (SemigroupWithZero.toZero.{u1} A (NonUnitalSemiring.toSemigroupWithZero.{u1} A _inst_3)) (SMulWithZero.toSMulZeroClass.{u2, u1} R A (CommMonoidWithZero.toZero.{u2} R (CommSemiring.toCommMonoidWithZero.{u2} R _inst_2)) (SemigroupWithZero.toZero.{u1} A (NonUnitalSemiring.toSemigroupWithZero.{u1} A _inst_3)) (MulActionWithZero.toSMulWithZero.{u2, u1} R A (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R _inst_2)) (SemigroupWithZero.toZero.{u1} A (NonUnitalSemiring.toSemigroupWithZero.{u1} A _inst_3)) (Module.toMulActionWithZero.{u2, u1} R A (CommSemiring.toSemiring.{u2} R _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u1} A _inst_3)) _inst_4)))) (SMulZeroClass.toSMul.{u1, u1} A A (SemigroupWithZero.toZero.{u1} A (NonUnitalSemiring.toSemigroupWithZero.{u1} A _inst_3)) (SMulWithZero.toSMulZeroClass.{u1, u1} A A (SemigroupWithZero.toZero.{u1} A (NonUnitalSemiring.toSemigroupWithZero.{u1} A _inst_3)) (SemigroupWithZero.toZero.{u1} A (NonUnitalSemiring.toSemigroupWithZero.{u1} A _inst_3)) (MulZeroClass.toSMulWithZero.{u1} A (NonUnitalNonAssocSemiring.toMulZeroClass.{u1} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u1} A _inst_3))))) (SMulZeroClass.toSMul.{u2, u1} R A (SemigroupWithZero.toZero.{u1} A (NonUnitalSemiring.toSemigroupWithZero.{u1} A _inst_3)) (SMulWithZero.toSMulZeroClass.{u2, u1} R A (CommMonoidWithZero.toZero.{u2} R (CommSemiring.toCommMonoidWithZero.{u2} R _inst_2)) (SemigroupWithZero.toZero.{u1} A (NonUnitalSemiring.toSemigroupWithZero.{u1} A _inst_3)) (MulActionWithZero.toSMulWithZero.{u2, u1} R A (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R _inst_2)) (SemigroupWithZero.toZero.{u1} A (NonUnitalSemiring.toSemigroupWithZero.{u1} A _inst_3)) (Module.toMulActionWithZero.{u2, u1} R A (CommSemiring.toSemiring.{u2} R _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u1} A _inst_3)) _inst_4))))] [_inst_6 : SMulCommClass.{u2, u1, u1} R A A (SMulZeroClass.toSMul.{u2, u1} R A (SemigroupWithZero.toZero.{u1} A (NonUnitalSemiring.toSemigroupWithZero.{u1} A _inst_3)) (SMulWithZero.toSMulZeroClass.{u2, u1} R A (CommMonoidWithZero.toZero.{u2} R (CommSemiring.toCommMonoidWithZero.{u2} R _inst_2)) (SemigroupWithZero.toZero.{u1} A (NonUnitalSemiring.toSemigroupWithZero.{u1} A _inst_3)) (MulActionWithZero.toSMulWithZero.{u2, u1} R A (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R _inst_2)) (SemigroupWithZero.toZero.{u1} A (NonUnitalSemiring.toSemigroupWithZero.{u1} A _inst_3)) (Module.toMulActionWithZero.{u2, u1} R A (CommSemiring.toSemiring.{u2} R _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u1} A _inst_3)) _inst_4)))) (SMulZeroClass.toSMul.{u1, u1} A A (SemigroupWithZero.toZero.{u1} A (NonUnitalSemiring.toSemigroupWithZero.{u1} A _inst_3)) (SMulWithZero.toSMulZeroClass.{u1, u1} A A (SemigroupWithZero.toZero.{u1} A (NonUnitalSemiring.toSemigroupWithZero.{u1} A _inst_3)) (SemigroupWithZero.toZero.{u1} A (NonUnitalSemiring.toSemigroupWithZero.{u1} A _inst_3)) (MulZeroClass.toSMulWithZero.{u1} A (NonUnitalNonAssocSemiring.toMulZeroClass.{u1} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u1} A _inst_3)))))], Eq.{max (succ u2) (succ u1)} (forall (ᾰ : R), (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : R) => Unitization.{u2, u1} R A) ᾰ) (FunLike.coe.{max (succ u2) (succ u1), succ u2, max (succ u2) (succ u1)} (RingHom.{u2, max u1 u2} R (Unitization.{u2, u1} R A) (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_2)) (Semiring.toNonAssocSemiring.{max u1 u2} (Unitization.{u2, u1} R A) (Unitization.semiring.{u2, u1} R A _inst_2 _inst_3 _inst_4 _inst_5 _inst_6))) R (fun (_x : R) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : R) => Unitization.{u2, u1} R A) _x) (MulHomClass.toFunLike.{max u2 u1, u2, max u2 u1} (RingHom.{u2, max u1 u2} R (Unitization.{u2, u1} R A) (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_2)) (Semiring.toNonAssocSemiring.{max u1 u2} (Unitization.{u2, u1} R A) (Unitization.semiring.{u2, u1} R A _inst_2 _inst_3 _inst_4 _inst_5 _inst_6))) R (Unitization.{u2, u1} R A) (NonUnitalNonAssocSemiring.toMul.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_2)))) (NonUnitalNonAssocSemiring.toMul.{max u2 u1} (Unitization.{u2, u1} R A) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{max u2 u1} (Unitization.{u2, u1} R A) (Semiring.toNonAssocSemiring.{max u1 u2} (Unitization.{u2, u1} R A) (Unitization.semiring.{u2, u1} R A _inst_2 _inst_3 _inst_4 _inst_5 _inst_6)))) (NonUnitalRingHomClass.toMulHomClass.{max u2 u1, u2, max u2 u1} (RingHom.{u2, max u1 u2} R (Unitization.{u2, u1} R A) (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_2)) (Semiring.toNonAssocSemiring.{max u1 u2} (Unitization.{u2, u1} R A) (Unitization.semiring.{u2, u1} R A _inst_2 _inst_3 _inst_4 _inst_5 _inst_6))) R (Unitization.{u2, u1} R A) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_2))) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{max u2 u1} (Unitization.{u2, u1} R A) (Semiring.toNonAssocSemiring.{max u1 u2} (Unitization.{u2, u1} R A) (Unitization.semiring.{u2, u1} R A _inst_2 _inst_3 _inst_4 _inst_5 _inst_6))) (RingHomClass.toNonUnitalRingHomClass.{max u2 u1, u2, max u2 u1} (RingHom.{u2, max u1 u2} R (Unitization.{u2, u1} R A) (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_2)) (Semiring.toNonAssocSemiring.{max u1 u2} (Unitization.{u2, u1} R A) (Unitization.semiring.{u2, u1} R A _inst_2 _inst_3 _inst_4 _inst_5 _inst_6))) R (Unitization.{u2, u1} R A) (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_2)) (Semiring.toNonAssocSemiring.{max u1 u2} (Unitization.{u2, u1} R A) (Unitization.semiring.{u2, u1} R A _inst_2 _inst_3 _inst_4 _inst_5 _inst_6)) (RingHom.instRingHomClassRingHom.{u2, max u2 u1} R (Unitization.{u2, u1} R A) (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_2)) (Semiring.toNonAssocSemiring.{max u1 u2} (Unitization.{u2, u1} R A) (Unitization.semiring.{u2, u1} R A _inst_2 _inst_3 _inst_4 _inst_5 _inst_6)))))) (algebraMap.{u2, max u1 u2} R (Unitization.{u2, u1} R A) _inst_2 (Unitization.semiring.{u2, u1} R A _inst_2 _inst_3 _inst_4 _inst_5 _inst_6) (Unitization.algebra.{u2, u2, u1} R R A _inst_2 _inst_2 _inst_3 _inst_4 _inst_5 _inst_6 (Algebra.id.{u2} R _inst_2) (Module.toDistribMulAction.{u2, u1} R A (CommSemiring.toSemiring.{u2} R _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u1} A _inst_3)) _inst_4) (IsScalarTower.left.{u2, u1} R A (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R _inst_2))) (MulActionWithZero.toMulAction.{u2, u1} R A (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R _inst_2)) (SemigroupWithZero.toZero.{u1} A (NonUnitalSemiring.toSemigroupWithZero.{u1} A _inst_3)) (Module.toMulActionWithZero.{u2, u1} R A (CommSemiring.toSemiring.{u2} R _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u1} A _inst_3)) _inst_4)))))) (Unitization.inl.{u2, u1} R A (SemigroupWithZero.toZero.{u1} A (NonUnitalSemiring.toSemigroupWithZero.{u1} A _inst_3)))
+Case conversion may be inaccurate. Consider using '#align unitization.algebra_map_eq_inl Unitization.algebraMap_eq_inlₓ'. -/
 theorem algebraMap_eq_inl : ⇑(algebraMap R (Unitization R A)) = inl :=
   rfl
 #align unitization.algebra_map_eq_inl Unitization.algebraMap_eq_inl
 
+/- warning: unitization.algebra_map_eq_inl_hom -> Unitization.algebraMap_eq_inl_hom is a dubious translation:
+lean 3 declaration is
+  forall (R : Type.{u1}) (A : Type.{u2}) [_inst_2 : CommSemiring.{u1} R] [_inst_3 : NonUnitalSemiring.{u2} A] [_inst_4 : Module.{u1, u2} R A (CommSemiring.toSemiring.{u1} R _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u2} A _inst_3))] [_inst_5 : IsScalarTower.{u1, u2, u2} R A A (SMulZeroClass.toHasSmul.{u1, u2} R A (AddZeroClass.toHasZero.{u2} A (AddMonoid.toAddZeroClass.{u2} A (AddCommMonoid.toAddMonoid.{u2} A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u2} A _inst_3))))) (SMulWithZero.toSmulZeroClass.{u1, u2} R A (MulZeroClass.toHasZero.{u1} R (MulZeroOneClass.toMulZeroClass.{u1} R (MonoidWithZero.toMulZeroOneClass.{u1} R (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R _inst_2))))) (AddZeroClass.toHasZero.{u2} A (AddMonoid.toAddZeroClass.{u2} A (AddCommMonoid.toAddMonoid.{u2} A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u2} A _inst_3))))) (MulActionWithZero.toSMulWithZero.{u1, u2} R A (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R _inst_2)) (AddZeroClass.toHasZero.{u2} A (AddMonoid.toAddZeroClass.{u2} A (AddCommMonoid.toAddMonoid.{u2} A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u2} A _inst_3))))) (Module.toMulActionWithZero.{u1, u2} R A (CommSemiring.toSemiring.{u1} R _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u2} A _inst_3)) _inst_4)))) (Mul.toSMul.{u2} A (Distrib.toHasMul.{u2} A (NonUnitalNonAssocSemiring.toDistrib.{u2} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u2} A _inst_3)))) (SMulZeroClass.toHasSmul.{u1, u2} R A (AddZeroClass.toHasZero.{u2} A (AddMonoid.toAddZeroClass.{u2} A (AddCommMonoid.toAddMonoid.{u2} A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u2} A _inst_3))))) (SMulWithZero.toSmulZeroClass.{u1, u2} R A (MulZeroClass.toHasZero.{u1} R (MulZeroOneClass.toMulZeroClass.{u1} R (MonoidWithZero.toMulZeroOneClass.{u1} R (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R _inst_2))))) (AddZeroClass.toHasZero.{u2} A (AddMonoid.toAddZeroClass.{u2} A (AddCommMonoid.toAddMonoid.{u2} A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u2} A _inst_3))))) (MulActionWithZero.toSMulWithZero.{u1, u2} R A (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R _inst_2)) (AddZeroClass.toHasZero.{u2} A (AddMonoid.toAddZeroClass.{u2} A (AddCommMonoid.toAddMonoid.{u2} A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u2} A _inst_3))))) (Module.toMulActionWithZero.{u1, u2} R A (CommSemiring.toSemiring.{u1} R _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u2} A _inst_3)) _inst_4))))] [_inst_6 : SMulCommClass.{u1, u2, u2} R A A (SMulZeroClass.toHasSmul.{u1, u2} R A (AddZeroClass.toHasZero.{u2} A (AddMonoid.toAddZeroClass.{u2} A (AddCommMonoid.toAddMonoid.{u2} A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u2} A _inst_3))))) (SMulWithZero.toSmulZeroClass.{u1, u2} R A (MulZeroClass.toHasZero.{u1} R (MulZeroOneClass.toMulZeroClass.{u1} R (MonoidWithZero.toMulZeroOneClass.{u1} R (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R _inst_2))))) (AddZeroClass.toHasZero.{u2} A (AddMonoid.toAddZeroClass.{u2} A (AddCommMonoid.toAddMonoid.{u2} A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u2} A _inst_3))))) (MulActionWithZero.toSMulWithZero.{u1, u2} R A (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R _inst_2)) (AddZeroClass.toHasZero.{u2} A (AddMonoid.toAddZeroClass.{u2} A (AddCommMonoid.toAddMonoid.{u2} A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u2} A _inst_3))))) (Module.toMulActionWithZero.{u1, u2} R A (CommSemiring.toSemiring.{u1} R _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u2} A _inst_3)) _inst_4)))) (Mul.toSMul.{u2} A (Distrib.toHasMul.{u2} A (NonUnitalNonAssocSemiring.toDistrib.{u2} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u2} A _inst_3))))], Eq.{max (succ u1) (succ (max u1 u2))} (RingHom.{u1, max u1 u2} R (Unitization.{u1, u2} R A) (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R _inst_2)) (Semiring.toNonAssocSemiring.{max u1 u2} (Unitization.{u1, u2} R A) (Unitization.semiring.{u1, u2} R A _inst_2 _inst_3 _inst_4 _inst_5 _inst_6))) (algebraMap.{u1, max u1 u2} R (Unitization.{u1, u2} R A) _inst_2 (Unitization.semiring.{u1, u2} R A _inst_2 _inst_3 _inst_4 _inst_5 _inst_6) (Unitization.algebra.{u1, u1, u2} R R A _inst_2 _inst_2 _inst_3 _inst_4 _inst_5 _inst_6 (Algebra.id.{u1} R _inst_2) (Module.toDistribMulAction.{u1, u2} R A (CommSemiring.toSemiring.{u1} R _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u2} A _inst_3)) _inst_4) (IsScalarTower.left.{u1, u2} R A (MonoidWithZero.toMonoid.{u1} R (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R _inst_2))) (MulActionWithZero.toMulAction.{u1, u2} R A (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R _inst_2)) (AddZeroClass.toHasZero.{u2} A (AddMonoid.toAddZeroClass.{u2} A (AddCommMonoid.toAddMonoid.{u2} A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u2} A _inst_3))))) (Module.toMulActionWithZero.{u1, u2} R A (CommSemiring.toSemiring.{u1} R _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u2} A _inst_3)) _inst_4))))) (Unitization.inlRingHom.{u1, u2} R A (CommSemiring.toSemiring.{u1} R _inst_2) _inst_3 _inst_4)
+but is expected to have type
+  forall (R : Type.{u2}) (A : Type.{u1}) [_inst_2 : CommSemiring.{u2} R] [_inst_3 : NonUnitalSemiring.{u1} A] [_inst_4 : Module.{u2, u1} R A (CommSemiring.toSemiring.{u2} R _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u1} A _inst_3))] [_inst_5 : IsScalarTower.{u2, u1, u1} R A A (SMulZeroClass.toSMul.{u2, u1} R A (SemigroupWithZero.toZero.{u1} A (NonUnitalSemiring.toSemigroupWithZero.{u1} A _inst_3)) (SMulWithZero.toSMulZeroClass.{u2, u1} R A (CommMonoidWithZero.toZero.{u2} R (CommSemiring.toCommMonoidWithZero.{u2} R _inst_2)) (SemigroupWithZero.toZero.{u1} A (NonUnitalSemiring.toSemigroupWithZero.{u1} A _inst_3)) (MulActionWithZero.toSMulWithZero.{u2, u1} R A (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R _inst_2)) (SemigroupWithZero.toZero.{u1} A (NonUnitalSemiring.toSemigroupWithZero.{u1} A _inst_3)) (Module.toMulActionWithZero.{u2, u1} R A (CommSemiring.toSemiring.{u2} R _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u1} A _inst_3)) _inst_4)))) (SMulZeroClass.toSMul.{u1, u1} A A (SemigroupWithZero.toZero.{u1} A (NonUnitalSemiring.toSemigroupWithZero.{u1} A _inst_3)) (SMulWithZero.toSMulZeroClass.{u1, u1} A A (SemigroupWithZero.toZero.{u1} A (NonUnitalSemiring.toSemigroupWithZero.{u1} A _inst_3)) (SemigroupWithZero.toZero.{u1} A (NonUnitalSemiring.toSemigroupWithZero.{u1} A _inst_3)) (MulZeroClass.toSMulWithZero.{u1} A (NonUnitalNonAssocSemiring.toMulZeroClass.{u1} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u1} A _inst_3))))) (SMulZeroClass.toSMul.{u2, u1} R A (SemigroupWithZero.toZero.{u1} A (NonUnitalSemiring.toSemigroupWithZero.{u1} A _inst_3)) (SMulWithZero.toSMulZeroClass.{u2, u1} R A (CommMonoidWithZero.toZero.{u2} R (CommSemiring.toCommMonoidWithZero.{u2} R _inst_2)) (SemigroupWithZero.toZero.{u1} A (NonUnitalSemiring.toSemigroupWithZero.{u1} A _inst_3)) (MulActionWithZero.toSMulWithZero.{u2, u1} R A (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R _inst_2)) (SemigroupWithZero.toZero.{u1} A (NonUnitalSemiring.toSemigroupWithZero.{u1} A _inst_3)) (Module.toMulActionWithZero.{u2, u1} R A (CommSemiring.toSemiring.{u2} R _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u1} A _inst_3)) _inst_4))))] [_inst_6 : SMulCommClass.{u2, u1, u1} R A A (SMulZeroClass.toSMul.{u2, u1} R A (SemigroupWithZero.toZero.{u1} A (NonUnitalSemiring.toSemigroupWithZero.{u1} A _inst_3)) (SMulWithZero.toSMulZeroClass.{u2, u1} R A (CommMonoidWithZero.toZero.{u2} R (CommSemiring.toCommMonoidWithZero.{u2} R _inst_2)) (SemigroupWithZero.toZero.{u1} A (NonUnitalSemiring.toSemigroupWithZero.{u1} A _inst_3)) (MulActionWithZero.toSMulWithZero.{u2, u1} R A (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R _inst_2)) (SemigroupWithZero.toZero.{u1} A (NonUnitalSemiring.toSemigroupWithZero.{u1} A _inst_3)) (Module.toMulActionWithZero.{u2, u1} R A (CommSemiring.toSemiring.{u2} R _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u1} A _inst_3)) _inst_4)))) (SMulZeroClass.toSMul.{u1, u1} A A (SemigroupWithZero.toZero.{u1} A (NonUnitalSemiring.toSemigroupWithZero.{u1} A _inst_3)) (SMulWithZero.toSMulZeroClass.{u1, u1} A A (SemigroupWithZero.toZero.{u1} A (NonUnitalSemiring.toSemigroupWithZero.{u1} A _inst_3)) (SemigroupWithZero.toZero.{u1} A (NonUnitalSemiring.toSemigroupWithZero.{u1} A _inst_3)) (MulZeroClass.toSMulWithZero.{u1} A (NonUnitalNonAssocSemiring.toMulZeroClass.{u1} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u1} A _inst_3)))))], Eq.{max (succ u2) (succ u1)} (RingHom.{u2, max u1 u2} R (Unitization.{u2, u1} R A) (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_2)) (Semiring.toNonAssocSemiring.{max u1 u2} (Unitization.{u2, u1} R A) (Unitization.semiring.{u2, u1} R A _inst_2 _inst_3 _inst_4 _inst_5 _inst_6))) (algebraMap.{u2, max u1 u2} R (Unitization.{u2, u1} R A) _inst_2 (Unitization.semiring.{u2, u1} R A _inst_2 _inst_3 _inst_4 _inst_5 _inst_6) (Unitization.algebra.{u2, u2, u1} R R A _inst_2 _inst_2 _inst_3 _inst_4 _inst_5 _inst_6 (Algebra.id.{u2} R _inst_2) (Module.toDistribMulAction.{u2, u1} R A (CommSemiring.toSemiring.{u2} R _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u1} A _inst_3)) _inst_4) (IsScalarTower.left.{u2, u1} R A (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R _inst_2))) (MulActionWithZero.toMulAction.{u2, u1} R A (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R _inst_2)) (SemigroupWithZero.toZero.{u1} A (NonUnitalSemiring.toSemigroupWithZero.{u1} A _inst_3)) (Module.toMulActionWithZero.{u2, u1} R A (CommSemiring.toSemiring.{u2} R _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u1} A _inst_3)) _inst_4))))) (Unitization.inlRingHom.{u2, u1} R A (CommSemiring.toSemiring.{u2} R _inst_2) _inst_3 _inst_4)
+Case conversion may be inaccurate. Consider using '#align unitization.algebra_map_eq_inl_hom Unitization.algebraMap_eq_inl_homₓ'. -/
 theorem algebraMap_eq_inl_hom : algebraMap R (Unitization R A) = inlRingHom R A :=
   rfl
 #align unitization.algebra_map_eq_inl_hom Unitization.algebraMap_eq_inl_hom
 
+/- warning: unitization.fst_hom -> Unitization.fstHom is a dubious translation:
+lean 3 declaration is
+  forall (R : Type.{u1}) (A : Type.{u2}) [_inst_2 : CommSemiring.{u1} R] [_inst_3 : NonUnitalSemiring.{u2} A] [_inst_4 : Module.{u1, u2} R A (CommSemiring.toSemiring.{u1} R _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u2} A _inst_3))] [_inst_5 : IsScalarTower.{u1, u2, u2} R A A (SMulZeroClass.toHasSmul.{u1, u2} R A (AddZeroClass.toHasZero.{u2} A (AddMonoid.toAddZeroClass.{u2} A (AddCommMonoid.toAddMonoid.{u2} A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u2} A _inst_3))))) (SMulWithZero.toSmulZeroClass.{u1, u2} R A (MulZeroClass.toHasZero.{u1} R (MulZeroOneClass.toMulZeroClass.{u1} R (MonoidWithZero.toMulZeroOneClass.{u1} R (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R _inst_2))))) (AddZeroClass.toHasZero.{u2} A (AddMonoid.toAddZeroClass.{u2} A (AddCommMonoid.toAddMonoid.{u2} A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u2} A _inst_3))))) (MulActionWithZero.toSMulWithZero.{u1, u2} R A (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R _inst_2)) (AddZeroClass.toHasZero.{u2} A (AddMonoid.toAddZeroClass.{u2} A (AddCommMonoid.toAddMonoid.{u2} A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u2} A _inst_3))))) (Module.toMulActionWithZero.{u1, u2} R A (CommSemiring.toSemiring.{u1} R _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u2} A _inst_3)) _inst_4)))) (Mul.toSMul.{u2} A (Distrib.toHasMul.{u2} A (NonUnitalNonAssocSemiring.toDistrib.{u2} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u2} A _inst_3)))) (SMulZeroClass.toHasSmul.{u1, u2} R A (AddZeroClass.toHasZero.{u2} A (AddMonoid.toAddZeroClass.{u2} A (AddCommMonoid.toAddMonoid.{u2} A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u2} A _inst_3))))) (SMulWithZero.toSmulZeroClass.{u1, u2} R A (MulZeroClass.toHasZero.{u1} R (MulZeroOneClass.toMulZeroClass.{u1} R (MonoidWithZero.toMulZeroOneClass.{u1} R (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R _inst_2))))) (AddZeroClass.toHasZero.{u2} A (AddMonoid.toAddZeroClass.{u2} A (AddCommMonoid.toAddMonoid.{u2} A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u2} A _inst_3))))) (MulActionWithZero.toSMulWithZero.{u1, u2} R A (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R _inst_2)) (AddZeroClass.toHasZero.{u2} A (AddMonoid.toAddZeroClass.{u2} A (AddCommMonoid.toAddMonoid.{u2} A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u2} A _inst_3))))) (Module.toMulActionWithZero.{u1, u2} R A (CommSemiring.toSemiring.{u1} R _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u2} A _inst_3)) _inst_4))))] [_inst_6 : SMulCommClass.{u1, u2, u2} R A A (SMulZeroClass.toHasSmul.{u1, u2} R A (AddZeroClass.toHasZero.{u2} A (AddMonoid.toAddZeroClass.{u2} A (AddCommMonoid.toAddMonoid.{u2} A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u2} A _inst_3))))) (SMulWithZero.toSmulZeroClass.{u1, u2} R A (MulZeroClass.toHasZero.{u1} R (MulZeroOneClass.toMulZeroClass.{u1} R (MonoidWithZero.toMulZeroOneClass.{u1} R (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R _inst_2))))) (AddZeroClass.toHasZero.{u2} A (AddMonoid.toAddZeroClass.{u2} A (AddCommMonoid.toAddMonoid.{u2} A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u2} A _inst_3))))) (MulActionWithZero.toSMulWithZero.{u1, u2} R A (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R _inst_2)) (AddZeroClass.toHasZero.{u2} A (AddMonoid.toAddZeroClass.{u2} A (AddCommMonoid.toAddMonoid.{u2} A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u2} A _inst_3))))) (Module.toMulActionWithZero.{u1, u2} R A (CommSemiring.toSemiring.{u1} R _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u2} A _inst_3)) _inst_4)))) (Mul.toSMul.{u2} A (Distrib.toHasMul.{u2} A (NonUnitalNonAssocSemiring.toDistrib.{u2} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u2} A _inst_3))))], AlgHom.{u1, max u1 u2, u1} R (Unitization.{u1, u2} R A) R _inst_2 (Unitization.semiring.{u1, u2} R A _inst_2 _inst_3 _inst_4 _inst_5 _inst_6) (CommSemiring.toSemiring.{u1} R _inst_2) (Unitization.algebra.{u1, u1, u2} R R A _inst_2 _inst_2 _inst_3 _inst_4 _inst_5 _inst_6 (Algebra.id.{u1} R _inst_2) (Module.toDistribMulAction.{u1, u2} R A (CommSemiring.toSemiring.{u1} R _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u2} A _inst_3)) _inst_4) (Unitization.fstHom._proof_1.{u1, u2} R A _inst_2 _inst_3 _inst_4)) (Algebra.id.{u1} R _inst_2)
+but is expected to have type
+  forall (R : Type.{u1}) (A : Type.{u2}) [_inst_2 : CommSemiring.{u1} R] [_inst_3 : NonUnitalSemiring.{u2} A] [_inst_4 : Module.{u1, u2} R A (CommSemiring.toSemiring.{u1} R _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u2} A _inst_3))] [_inst_5 : IsScalarTower.{u1, u2, u2} R A A (SMulZeroClass.toSMul.{u1, u2} R A (SemigroupWithZero.toZero.{u2} A (NonUnitalSemiring.toSemigroupWithZero.{u2} A _inst_3)) (SMulWithZero.toSMulZeroClass.{u1, u2} R A (CommMonoidWithZero.toZero.{u1} R (CommSemiring.toCommMonoidWithZero.{u1} R _inst_2)) (SemigroupWithZero.toZero.{u2} A (NonUnitalSemiring.toSemigroupWithZero.{u2} A _inst_3)) (MulActionWithZero.toSMulWithZero.{u1, u2} R A (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R _inst_2)) (SemigroupWithZero.toZero.{u2} A (NonUnitalSemiring.toSemigroupWithZero.{u2} A _inst_3)) (Module.toMulActionWithZero.{u1, u2} R A (CommSemiring.toSemiring.{u1} R _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u2} A _inst_3)) _inst_4)))) (SMulZeroClass.toSMul.{u2, u2} A A (SemigroupWithZero.toZero.{u2} A (NonUnitalSemiring.toSemigroupWithZero.{u2} A _inst_3)) (SMulWithZero.toSMulZeroClass.{u2, u2} A A (SemigroupWithZero.toZero.{u2} A (NonUnitalSemiring.toSemigroupWithZero.{u2} A _inst_3)) (SemigroupWithZero.toZero.{u2} A (NonUnitalSemiring.toSemigroupWithZero.{u2} A _inst_3)) (MulZeroClass.toSMulWithZero.{u2} A (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u2} A _inst_3))))) (SMulZeroClass.toSMul.{u1, u2} R A (SemigroupWithZero.toZero.{u2} A (NonUnitalSemiring.toSemigroupWithZero.{u2} A _inst_3)) (SMulWithZero.toSMulZeroClass.{u1, u2} R A (CommMonoidWithZero.toZero.{u1} R (CommSemiring.toCommMonoidWithZero.{u1} R _inst_2)) (SemigroupWithZero.toZero.{u2} A (NonUnitalSemiring.toSemigroupWithZero.{u2} A _inst_3)) (MulActionWithZero.toSMulWithZero.{u1, u2} R A (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R _inst_2)) (SemigroupWithZero.toZero.{u2} A (NonUnitalSemiring.toSemigroupWithZero.{u2} A _inst_3)) (Module.toMulActionWithZero.{u1, u2} R A (CommSemiring.toSemiring.{u1} R _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u2} A _inst_3)) _inst_4))))] [_inst_6 : SMulCommClass.{u1, u2, u2} R A A (SMulZeroClass.toSMul.{u1, u2} R A (SemigroupWithZero.toZero.{u2} A (NonUnitalSemiring.toSemigroupWithZero.{u2} A _inst_3)) (SMulWithZero.toSMulZeroClass.{u1, u2} R A (CommMonoidWithZero.toZero.{u1} R (CommSemiring.toCommMonoidWithZero.{u1} R _inst_2)) (SemigroupWithZero.toZero.{u2} A (NonUnitalSemiring.toSemigroupWithZero.{u2} A _inst_3)) (MulActionWithZero.toSMulWithZero.{u1, u2} R A (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R _inst_2)) (SemigroupWithZero.toZero.{u2} A (NonUnitalSemiring.toSemigroupWithZero.{u2} A _inst_3)) (Module.toMulActionWithZero.{u1, u2} R A (CommSemiring.toSemiring.{u1} R _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u2} A _inst_3)) _inst_4)))) (SMulZeroClass.toSMul.{u2, u2} A A (SemigroupWithZero.toZero.{u2} A (NonUnitalSemiring.toSemigroupWithZero.{u2} A _inst_3)) (SMulWithZero.toSMulZeroClass.{u2, u2} A A (SemigroupWithZero.toZero.{u2} A (NonUnitalSemiring.toSemigroupWithZero.{u2} A _inst_3)) (SemigroupWithZero.toZero.{u2} A (NonUnitalSemiring.toSemigroupWithZero.{u2} A _inst_3)) (MulZeroClass.toSMulWithZero.{u2} A (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u2} A _inst_3)))))], AlgHom.{u1, max u2 u1, u1} R (Unitization.{u1, u2} R A) R _inst_2 (Unitization.semiring.{u1, u2} R A _inst_2 _inst_3 _inst_4 _inst_5 _inst_6) (CommSemiring.toSemiring.{u1} R _inst_2) (Unitization.algebra.{u1, u1, u2} R R A _inst_2 _inst_2 _inst_3 _inst_4 _inst_5 _inst_6 (Algebra.id.{u1} R _inst_2) (Module.toDistribMulAction.{u1, u2} R A (CommSemiring.toSemiring.{u1} R _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u2} A _inst_3)) _inst_4) (IsScalarTower.left.{u1, u2} R A (MonoidWithZero.toMonoid.{u1} R (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R _inst_2))) (MulActionWithZero.toMulAction.{u1, u2} R A (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R _inst_2)) (SemigroupWithZero.toZero.{u2} A (NonUnitalSemiring.toSemigroupWithZero.{u2} A _inst_3)) (Module.toMulActionWithZero.{u1, u2} R A (CommSemiring.toSemiring.{u1} R _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u2} A _inst_3)) _inst_4)))) (Algebra.id.{u1} R _inst_2)
+Case conversion may be inaccurate. Consider using '#align unitization.fst_hom Unitization.fstHomₓ'. -/
 /-- The canonical `R`-algebra projection `unitization R A → R`. -/
 @[simps]
 def fstHom : Unitization R A →ₐ[R] R where
@@ -615,17 +895,19 @@ end Algebra
 
 section coe
 
+#print Unitization.inrNonUnitalAlgHom /-
 /-- The coercion from a non-unital `R`-algebra `A` to its unitization `unitization R A`
 realized as a non-unital algebra homomorphism. -/
 @[simps]
-def coeNonUnitalAlgHom (R A : Type _) [CommSemiring R] [NonUnitalSemiring A] [Module R A] :
+def inrNonUnitalAlgHom (R A : Type _) [CommSemiring R] [NonUnitalSemiring A] [Module R A] :
     A →ₙₐ[R] Unitization R A where
   toFun := coe
-  map_smul' := coe_smul R
-  map_zero' := coe_zero R
-  map_add' := coe_add R
-  map_mul' := coe_mul R
-#align unitization.coe_non_unital_alg_hom Unitization.coeNonUnitalAlgHom
+  map_smul' := inr_smul R
+  map_zero' := inr_zero R
+  map_add' := inr_add R
+  map_mul' := inr_mul R
+#align unitization.coe_non_unital_alg_hom Unitization.inrNonUnitalAlgHom
+-/
 
 end coe
 
@@ -635,6 +917,12 @@ variable {S R A : Type _} [CommSemiring S] [CommSemiring R] [NonUnitalSemiring A
   [SMulCommClass R A A] [IsScalarTower R A A] {B : Type _} [Semiring B] [Algebra S B] [Algebra S R]
   [DistribMulAction S A] [IsScalarTower S R A] {C : Type _} [Ring C] [Algebra R C]
 
+/- warning: unitization.alg_hom_ext -> Unitization.algHom_ext is a dubious translation:
+lean 3 declaration is
+  forall {S : Type.{u1}} {R : Type.{u2}} {A : Type.{u3}} [_inst_1 : CommSemiring.{u1} S] [_inst_2 : CommSemiring.{u2} R] [_inst_3 : NonUnitalSemiring.{u3} A] [_inst_4 : Module.{u2, u3} R A (CommSemiring.toSemiring.{u2} R _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u3} A _inst_3))] [_inst_5 : SMulCommClass.{u2, u3, u3} R A A (SMulZeroClass.toHasSmul.{u2, u3} R A (AddZeroClass.toHasZero.{u3} A (AddMonoid.toAddZeroClass.{u3} A (AddCommMonoid.toAddMonoid.{u3} A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u3} A _inst_3))))) (SMulWithZero.toSmulZeroClass.{u2, u3} R A (MulZeroClass.toHasZero.{u2} R (MulZeroOneClass.toMulZeroClass.{u2} R (MonoidWithZero.toMulZeroOneClass.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R _inst_2))))) (AddZeroClass.toHasZero.{u3} A (AddMonoid.toAddZeroClass.{u3} A (AddCommMonoid.toAddMonoid.{u3} A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u3} A _inst_3))))) (MulActionWithZero.toSMulWithZero.{u2, u3} R A (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R _inst_2)) (AddZeroClass.toHasZero.{u3} A (AddMonoid.toAddZeroClass.{u3} A (AddCommMonoid.toAddMonoid.{u3} A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u3} A _inst_3))))) (Module.toMulActionWithZero.{u2, u3} R A (CommSemiring.toSemiring.{u2} R _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u3} A _inst_3)) _inst_4)))) (Mul.toSMul.{u3} A (Distrib.toHasMul.{u3} A (NonUnitalNonAssocSemiring.toDistrib.{u3} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u3} A _inst_3))))] [_inst_6 : IsScalarTower.{u2, u3, u3} R A A (SMulZeroClass.toHasSmul.{u2, u3} R A (AddZeroClass.toHasZero.{u3} A (AddMonoid.toAddZeroClass.{u3} A (AddCommMonoid.toAddMonoid.{u3} A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u3} A _inst_3))))) (SMulWithZero.toSmulZeroClass.{u2, u3} R A (MulZeroClass.toHasZero.{u2} R (MulZeroOneClass.toMulZeroClass.{u2} R (MonoidWithZero.toMulZeroOneClass.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R _inst_2))))) (AddZeroClass.toHasZero.{u3} A (AddMonoid.toAddZeroClass.{u3} A (AddCommMonoid.toAddMonoid.{u3} A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u3} A _inst_3))))) (MulActionWithZero.toSMulWithZero.{u2, u3} R A (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R _inst_2)) (AddZeroClass.toHasZero.{u3} A (AddMonoid.toAddZeroClass.{u3} A (AddCommMonoid.toAddMonoid.{u3} A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u3} A _inst_3))))) (Module.toMulActionWithZero.{u2, u3} R A (CommSemiring.toSemiring.{u2} R _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u3} A _inst_3)) _inst_4)))) (Mul.toSMul.{u3} A (Distrib.toHasMul.{u3} A (NonUnitalNonAssocSemiring.toDistrib.{u3} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u3} A _inst_3)))) (SMulZeroClass.toHasSmul.{u2, u3} R A (AddZeroClass.toHasZero.{u3} A (AddMonoid.toAddZeroClass.{u3} A (AddCommMonoid.toAddMonoid.{u3} A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u3} A _inst_3))))) (SMulWithZero.toSmulZeroClass.{u2, u3} R A (MulZeroClass.toHasZero.{u2} R (MulZeroOneClass.toMulZeroClass.{u2} R (MonoidWithZero.toMulZeroOneClass.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R _inst_2))))) (AddZeroClass.toHasZero.{u3} A (AddMonoid.toAddZeroClass.{u3} A (AddCommMonoid.toAddMonoid.{u3} A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u3} A _inst_3))))) (MulActionWithZero.toSMulWithZero.{u2, u3} R A (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R _inst_2)) (AddZeroClass.toHasZero.{u3} A (AddMonoid.toAddZeroClass.{u3} A (AddCommMonoid.toAddMonoid.{u3} A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u3} A _inst_3))))) (Module.toMulActionWithZero.{u2, u3} R A (CommSemiring.toSemiring.{u2} R _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u3} A _inst_3)) _inst_4))))] {B : Type.{u4}} [_inst_7 : Semiring.{u4} B] [_inst_8 : Algebra.{u1, u4} S B _inst_1 _inst_7] [_inst_9 : Algebra.{u1, u2} S R _inst_1 (CommSemiring.toSemiring.{u2} R _inst_2)] [_inst_10 : DistribMulAction.{u1, u3} S A (MonoidWithZero.toMonoid.{u1} S (Semiring.toMonoidWithZero.{u1} S (CommSemiring.toSemiring.{u1} S _inst_1))) (AddCommMonoid.toAddMonoid.{u3} A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u3} A _inst_3)))] [_inst_11 : IsScalarTower.{u1, u2, u3} S R A (SMulZeroClass.toHasSmul.{u1, u2} S R (AddZeroClass.toHasZero.{u2} R (AddMonoid.toAddZeroClass.{u2} R (AddCommMonoid.toAddMonoid.{u2} R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_2))))))) (SMulWithZero.toSmulZeroClass.{u1, u2} S R (MulZeroClass.toHasZero.{u1} S (MulZeroOneClass.toMulZeroClass.{u1} S (MonoidWithZero.toMulZeroOneClass.{u1} S (Semiring.toMonoidWithZero.{u1} S (CommSemiring.toSemiring.{u1} S _inst_1))))) (AddZeroClass.toHasZero.{u2} R (AddMonoid.toAddZeroClass.{u2} R (AddCommMonoid.toAddMonoid.{u2} R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_2))))))) (MulActionWithZero.toSMulWithZero.{u1, u2} S R (Semiring.toMonoidWithZero.{u1} S (CommSemiring.toSemiring.{u1} S _inst_1)) (AddZeroClass.toHasZero.{u2} R (AddMonoid.toAddZeroClass.{u2} R (AddCommMonoid.toAddMonoid.{u2} R (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_2))))))) (Module.toMulActionWithZero.{u1, u2} S R (CommSemiring.toSemiring.{u1} S _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_2)))) (Algebra.toModule.{u1, u2} S R _inst_1 (CommSemiring.toSemiring.{u2} R _inst_2) _inst_9))))) (SMulZeroClass.toHasSmul.{u2, u3} R A (AddZeroClass.toHasZero.{u3} A (AddMonoid.toAddZeroClass.{u3} A (AddCommMonoid.toAddMonoid.{u3} A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u3} A _inst_3))))) (SMulWithZero.toSmulZeroClass.{u2, u3} R A (MulZeroClass.toHasZero.{u2} R (MulZeroOneClass.toMulZeroClass.{u2} R (MonoidWithZero.toMulZeroOneClass.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R _inst_2))))) (AddZeroClass.toHasZero.{u3} A (AddMonoid.toAddZeroClass.{u3} A (AddCommMonoid.toAddMonoid.{u3} A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u3} A _inst_3))))) (MulActionWithZero.toSMulWithZero.{u2, u3} R A (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R _inst_2)) (AddZeroClass.toHasZero.{u3} A (AddMonoid.toAddZeroClass.{u3} A (AddCommMonoid.toAddMonoid.{u3} A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u3} A _inst_3))))) (Module.toMulActionWithZero.{u2, u3} R A (CommSemiring.toSemiring.{u2} R _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u3} A _inst_3)) _inst_4)))) (SMulZeroClass.toHasSmul.{u1, u3} S A (AddZeroClass.toHasZero.{u3} A (AddMonoid.toAddZeroClass.{u3} A (AddCommMonoid.toAddMonoid.{u3} A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u3} A _inst_3))))) (DistribSMul.toSmulZeroClass.{u1, u3} S A (AddMonoid.toAddZeroClass.{u3} A (AddCommMonoid.toAddMonoid.{u3} A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u3} A _inst_3)))) (DistribMulAction.toDistribSMul.{u1, u3} S A (MonoidWithZero.toMonoid.{u1} S (Semiring.toMonoidWithZero.{u1} S (CommSemiring.toSemiring.{u1} S _inst_1))) (AddCommMonoid.toAddMonoid.{u3} A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u3} A _inst_3))) _inst_10)))] {φ : AlgHom.{u1, max u2 u3, u4} S (Unitization.{u2, u3} R A) B _inst_1 (Unitization.semiring.{u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5) _inst_7 (Unitization.algebra.{u1, u2, u3} S R A _inst_1 _inst_2 _inst_3 _inst_4 _inst_6 _inst_5 _inst_9 _inst_10 _inst_11) _inst_8} {ψ : AlgHom.{u1, max u2 u3, u4} S (Unitization.{u2, u3} R A) B _inst_1 (Unitization.semiring.{u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5) _inst_7 (Unitization.algebra.{u1, u2, u3} S R A _inst_1 _inst_2 _inst_3 _inst_4 _inst_6 _inst_5 _inst_9 _inst_10 _inst_11) _inst_8}, (forall (a : A), Eq.{succ u4} B (coeFn.{max (succ (max u2 u3)) (succ u4), max (succ (max u2 u3)) (succ u4)} (AlgHom.{u1, max u2 u3, u4} S (Unitization.{u2, u3} R A) B _inst_1 (Unitization.semiring.{u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5) _inst_7 (Unitization.algebra.{u1, u2, u3} S R A _inst_1 _inst_2 _inst_3 _inst_4 _inst_6 _inst_5 _inst_9 _inst_10 _inst_11) _inst_8) (fun (_x : AlgHom.{u1, max u2 u3, u4} S (Unitization.{u2, u3} R A) B _inst_1 (Unitization.semiring.{u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5) _inst_7 (Unitization.algebra.{u1, u2, u3} S R A _inst_1 _inst_2 _inst_3 _inst_4 _inst_6 _inst_5 _inst_9 _inst_10 _inst_11) _inst_8) => (Unitization.{u2, u3} R A) -> B) ([anonymous].{u1, max u2 u3, u4} S (Unitization.{u2, u3} R A) B _inst_1 (Unitization.semiring.{u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5) _inst_7 (Unitization.algebra.{u1, u2, u3} S R A _inst_1 _inst_2 _inst_3 _inst_4 _inst_6 _inst_5 _inst_9 _inst_10 _inst_11) _inst_8) φ ((fun (a : Type.{u3}) (b : Sort.{max (succ u2) (succ u3)}) [self : HasLiftT.{succ u3, max (succ u2) (succ u3)} a b] => self.0) A (Unitization.{u2, u3} R A) (HasLiftT.mk.{succ u3, max (succ u2) (succ u3)} A (Unitization.{u2, u3} R A) (CoeTCₓ.coe.{succ u3, max (succ u2) (succ u3)} A (Unitization.{u2, u3} R A) (Unitization.hasCoeT.{u2, u3} R A (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_2)))))))) a)) (coeFn.{max (succ (max u2 u3)) (succ u4), max (succ (max u2 u3)) (succ u4)} (AlgHom.{u1, max u2 u3, u4} S (Unitization.{u2, u3} R A) B _inst_1 (Unitization.semiring.{u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5) _inst_7 (Unitization.algebra.{u1, u2, u3} S R A _inst_1 _inst_2 _inst_3 _inst_4 _inst_6 _inst_5 _inst_9 _inst_10 _inst_11) _inst_8) (fun (_x : AlgHom.{u1, max u2 u3, u4} S (Unitization.{u2, u3} R A) B _inst_1 (Unitization.semiring.{u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5) _inst_7 (Unitization.algebra.{u1, u2, u3} S R A _inst_1 _inst_2 _inst_3 _inst_4 _inst_6 _inst_5 _inst_9 _inst_10 _inst_11) _inst_8) => (Unitization.{u2, u3} R A) -> B) ([anonymous].{u1, max u2 u3, u4} S (Unitization.{u2, u3} R A) B _inst_1 (Unitization.semiring.{u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5) _inst_7 (Unitization.algebra.{u1, u2, u3} S R A _inst_1 _inst_2 _inst_3 _inst_4 _inst_6 _inst_5 _inst_9 _inst_10 _inst_11) _inst_8) ψ ((fun (a : Type.{u3}) (b : Sort.{max (succ u2) (succ u3)}) [self : HasLiftT.{succ u3, max (succ u2) (succ u3)} a b] => self.0) A (Unitization.{u2, u3} R A) (HasLiftT.mk.{succ u3, max (succ u2) (succ u3)} A (Unitization.{u2, u3} R A) (CoeTCₓ.coe.{succ u3, max (succ u2) (succ u3)} A (Unitization.{u2, u3} R A) (Unitization.hasCoeT.{u2, u3} R A (MulZeroClass.toHasZero.{u2} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_2)))))))) a))) -> (forall (r : R), Eq.{succ u4} B (coeFn.{max (succ (max u2 u3)) (succ u4), max (succ (max u2 u3)) (succ u4)} (AlgHom.{u1, max u2 u3, u4} S (Unitization.{u2, u3} R A) B _inst_1 (Unitization.semiring.{u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5) _inst_7 (Unitization.algebra.{u1, u2, u3} S R A _inst_1 _inst_2 _inst_3 _inst_4 _inst_6 _inst_5 _inst_9 _inst_10 _inst_11) _inst_8) (fun (_x : AlgHom.{u1, max u2 u3, u4} S (Unitization.{u2, u3} R A) B _inst_1 (Unitization.semiring.{u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5) _inst_7 (Unitization.algebra.{u1, u2, u3} S R A _inst_1 _inst_2 _inst_3 _inst_4 _inst_6 _inst_5 _inst_9 _inst_10 _inst_11) _inst_8) => (Unitization.{u2, u3} R A) -> B) ([anonymous].{u1, max u2 u3, u4} S (Unitization.{u2, u3} R A) B _inst_1 (Unitization.semiring.{u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5) _inst_7 (Unitization.algebra.{u1, u2, u3} S R A _inst_1 _inst_2 _inst_3 _inst_4 _inst_6 _inst_5 _inst_9 _inst_10 _inst_11) _inst_8) φ (coeFn.{max (succ u2) (succ (max u2 u3)), max (succ u2) (succ (max u2 u3))} (RingHom.{u2, max u2 u3} R (Unitization.{u2, u3} R A) (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_2)) (Semiring.toNonAssocSemiring.{max u2 u3} (Unitization.{u2, u3} R A) (Unitization.semiring.{u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5))) (fun (_x : RingHom.{u2, max u2 u3} R (Unitization.{u2, u3} R A) (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_2)) (Semiring.toNonAssocSemiring.{max u2 u3} (Unitization.{u2, u3} R A) (Unitization.semiring.{u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5))) => R -> (Unitization.{u2, u3} R A)) (RingHom.hasCoeToFun.{u2, max u2 u3} R (Unitization.{u2, u3} R A) (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_2)) (Semiring.toNonAssocSemiring.{max u2 u3} (Unitization.{u2, u3} R A) (Unitization.semiring.{u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5))) (algebraMap.{u2, max u2 u3} R (Unitization.{u2, u3} R A) _inst_2 (Unitization.semiring.{u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5) (Unitization.algebra.{u2, u2, u3} R R A _inst_2 _inst_2 _inst_3 _inst_4 _inst_6 _inst_5 (Algebra.id.{u2} R _inst_2) (Module.toDistribMulAction.{u2, u3} R A (CommSemiring.toSemiring.{u2} R _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u3} A _inst_3)) _inst_4) (IsScalarTower.left.{u2, u3} R A (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R _inst_2))) (MulActionWithZero.toMulAction.{u2, u3} R A (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R _inst_2)) (AddZeroClass.toHasZero.{u3} A (AddMonoid.toAddZeroClass.{u3} A (AddCommMonoid.toAddMonoid.{u3} A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u3} A _inst_3))))) (Module.toMulActionWithZero.{u2, u3} R A (CommSemiring.toSemiring.{u2} R _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u3} A _inst_3)) _inst_4))))) r)) (coeFn.{max (succ (max u2 u3)) (succ u4), max (succ (max u2 u3)) (succ u4)} (AlgHom.{u1, max u2 u3, u4} S (Unitization.{u2, u3} R A) B _inst_1 (Unitization.semiring.{u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5) _inst_7 (Unitization.algebra.{u1, u2, u3} S R A _inst_1 _inst_2 _inst_3 _inst_4 _inst_6 _inst_5 _inst_9 _inst_10 _inst_11) _inst_8) (fun (_x : AlgHom.{u1, max u2 u3, u4} S (Unitization.{u2, u3} R A) B _inst_1 (Unitization.semiring.{u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5) _inst_7 (Unitization.algebra.{u1, u2, u3} S R A _inst_1 _inst_2 _inst_3 _inst_4 _inst_6 _inst_5 _inst_9 _inst_10 _inst_11) _inst_8) => (Unitization.{u2, u3} R A) -> B) ([anonymous].{u1, max u2 u3, u4} S (Unitization.{u2, u3} R A) B _inst_1 (Unitization.semiring.{u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5) _inst_7 (Unitization.algebra.{u1, u2, u3} S R A _inst_1 _inst_2 _inst_3 _inst_4 _inst_6 _inst_5 _inst_9 _inst_10 _inst_11) _inst_8) ψ (coeFn.{max (succ u2) (succ (max u2 u3)), max (succ u2) (succ (max u2 u3))} (RingHom.{u2, max u2 u3} R (Unitization.{u2, u3} R A) (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_2)) (Semiring.toNonAssocSemiring.{max u2 u3} (Unitization.{u2, u3} R A) (Unitization.semiring.{u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5))) (fun (_x : RingHom.{u2, max u2 u3} R (Unitization.{u2, u3} R A) (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_2)) (Semiring.toNonAssocSemiring.{max u2 u3} (Unitization.{u2, u3} R A) (Unitization.semiring.{u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5))) => R -> (Unitization.{u2, u3} R A)) (RingHom.hasCoeToFun.{u2, max u2 u3} R (Unitization.{u2, u3} R A) (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_2)) (Semiring.toNonAssocSemiring.{max u2 u3} (Unitization.{u2, u3} R A) (Unitization.semiring.{u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5))) (algebraMap.{u2, max u2 u3} R (Unitization.{u2, u3} R A) _inst_2 (Unitization.semiring.{u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5) (Unitization.algebra.{u2, u2, u3} R R A _inst_2 _inst_2 _inst_3 _inst_4 _inst_6 _inst_5 (Algebra.id.{u2} R _inst_2) (Module.toDistribMulAction.{u2, u3} R A (CommSemiring.toSemiring.{u2} R _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u3} A _inst_3)) _inst_4) (IsScalarTower.left.{u2, u3} R A (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R _inst_2))) (MulActionWithZero.toMulAction.{u2, u3} R A (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R _inst_2)) (AddZeroClass.toHasZero.{u3} A (AddMonoid.toAddZeroClass.{u3} A (AddCommMonoid.toAddMonoid.{u3} A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u3} A _inst_3))))) (Module.toMulActionWithZero.{u2, u3} R A (CommSemiring.toSemiring.{u2} R _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u3} A _inst_3)) _inst_4))))) r))) -> (Eq.{max (succ (max u2 u3)) (succ u4)} (AlgHom.{u1, max u2 u3, u4} S (Unitization.{u2, u3} R A) B _inst_1 (Unitization.semiring.{u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5) _inst_7 (Unitization.algebra.{u1, u2, u3} S R A _inst_1 _inst_2 _inst_3 _inst_4 _inst_6 _inst_5 _inst_9 _inst_10 _inst_11) _inst_8) φ ψ)
+but is expected to have type
+  forall {S : Type.{u4}} {R : Type.{u2}} {A : Type.{u3}} [_inst_1 : CommSemiring.{u4} S] [_inst_2 : CommSemiring.{u2} R] [_inst_3 : NonUnitalSemiring.{u3} A] [_inst_4 : Module.{u2, u3} R A (CommSemiring.toSemiring.{u2} R _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u3} A _inst_3))] [_inst_5 : SMulCommClass.{u2, u3, u3} R A A (SMulZeroClass.toSMul.{u2, u3} R A (SemigroupWithZero.toZero.{u3} A (NonUnitalSemiring.toSemigroupWithZero.{u3} A _inst_3)) (SMulWithZero.toSMulZeroClass.{u2, u3} R A (CommMonoidWithZero.toZero.{u2} R (CommSemiring.toCommMonoidWithZero.{u2} R _inst_2)) (SemigroupWithZero.toZero.{u3} A (NonUnitalSemiring.toSemigroupWithZero.{u3} A _inst_3)) (MulActionWithZero.toSMulWithZero.{u2, u3} R A (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R _inst_2)) (SemigroupWithZero.toZero.{u3} A (NonUnitalSemiring.toSemigroupWithZero.{u3} A _inst_3)) (Module.toMulActionWithZero.{u2, u3} R A (CommSemiring.toSemiring.{u2} R _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u3} A _inst_3)) _inst_4)))) (SMulZeroClass.toSMul.{u3, u3} A A (SemigroupWithZero.toZero.{u3} A (NonUnitalSemiring.toSemigroupWithZero.{u3} A _inst_3)) (SMulWithZero.toSMulZeroClass.{u3, u3} A A (SemigroupWithZero.toZero.{u3} A (NonUnitalSemiring.toSemigroupWithZero.{u3} A _inst_3)) (SemigroupWithZero.toZero.{u3} A (NonUnitalSemiring.toSemigroupWithZero.{u3} A _inst_3)) (MulZeroClass.toSMulWithZero.{u3} A (NonUnitalNonAssocSemiring.toMulZeroClass.{u3} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u3} A _inst_3)))))] [_inst_6 : IsScalarTower.{u2, u3, u3} R A A (SMulZeroClass.toSMul.{u2, u3} R A (SemigroupWithZero.toZero.{u3} A (NonUnitalSemiring.toSemigroupWithZero.{u3} A _inst_3)) (SMulWithZero.toSMulZeroClass.{u2, u3} R A (CommMonoidWithZero.toZero.{u2} R (CommSemiring.toCommMonoidWithZero.{u2} R _inst_2)) (SemigroupWithZero.toZero.{u3} A (NonUnitalSemiring.toSemigroupWithZero.{u3} A _inst_3)) (MulActionWithZero.toSMulWithZero.{u2, u3} R A (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R _inst_2)) (SemigroupWithZero.toZero.{u3} A (NonUnitalSemiring.toSemigroupWithZero.{u3} A _inst_3)) (Module.toMulActionWithZero.{u2, u3} R A (CommSemiring.toSemiring.{u2} R _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u3} A _inst_3)) _inst_4)))) (SMulZeroClass.toSMul.{u3, u3} A A (SemigroupWithZero.toZero.{u3} A (NonUnitalSemiring.toSemigroupWithZero.{u3} A _inst_3)) (SMulWithZero.toSMulZeroClass.{u3, u3} A A (SemigroupWithZero.toZero.{u3} A (NonUnitalSemiring.toSemigroupWithZero.{u3} A _inst_3)) (SemigroupWithZero.toZero.{u3} A (NonUnitalSemiring.toSemigroupWithZero.{u3} A _inst_3)) (MulZeroClass.toSMulWithZero.{u3} A (NonUnitalNonAssocSemiring.toMulZeroClass.{u3} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u3} A _inst_3))))) (SMulZeroClass.toSMul.{u2, u3} R A (SemigroupWithZero.toZero.{u3} A (NonUnitalSemiring.toSemigroupWithZero.{u3} A _inst_3)) (SMulWithZero.toSMulZeroClass.{u2, u3} R A (CommMonoidWithZero.toZero.{u2} R (CommSemiring.toCommMonoidWithZero.{u2} R _inst_2)) (SemigroupWithZero.toZero.{u3} A (NonUnitalSemiring.toSemigroupWithZero.{u3} A _inst_3)) (MulActionWithZero.toSMulWithZero.{u2, u3} R A (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R _inst_2)) (SemigroupWithZero.toZero.{u3} A (NonUnitalSemiring.toSemigroupWithZero.{u3} A _inst_3)) (Module.toMulActionWithZero.{u2, u3} R A (CommSemiring.toSemiring.{u2} R _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u3} A _inst_3)) _inst_4))))] {B : Type.{u1}} [_inst_7 : Semiring.{u1} B] [_inst_8 : Algebra.{u4, u1} S B _inst_1 _inst_7] [_inst_9 : Algebra.{u4, u2} S R _inst_1 (CommSemiring.toSemiring.{u2} R _inst_2)] [_inst_10 : DistribMulAction.{u4, u3} S A (MonoidWithZero.toMonoid.{u4} S (Semiring.toMonoidWithZero.{u4} S (CommSemiring.toSemiring.{u4} S _inst_1))) (AddCommMonoid.toAddMonoid.{u3} A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u3} A _inst_3)))] [_inst_11 : IsScalarTower.{u4, u2, u3} S R A (Algebra.toSMul.{u4, u2} S R _inst_1 (CommSemiring.toSemiring.{u2} R _inst_2) _inst_9) (SMulZeroClass.toSMul.{u2, u3} R A (SemigroupWithZero.toZero.{u3} A (NonUnitalSemiring.toSemigroupWithZero.{u3} A _inst_3)) (SMulWithZero.toSMulZeroClass.{u2, u3} R A (CommMonoidWithZero.toZero.{u2} R (CommSemiring.toCommMonoidWithZero.{u2} R _inst_2)) (SemigroupWithZero.toZero.{u3} A (NonUnitalSemiring.toSemigroupWithZero.{u3} A _inst_3)) (MulActionWithZero.toSMulWithZero.{u2, u3} R A (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R _inst_2)) (SemigroupWithZero.toZero.{u3} A (NonUnitalSemiring.toSemigroupWithZero.{u3} A _inst_3)) (Module.toMulActionWithZero.{u2, u3} R A (CommSemiring.toSemiring.{u2} R _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u3} A _inst_3)) _inst_4)))) (SMulZeroClass.toSMul.{u4, u3} S A (SemigroupWithZero.toZero.{u3} A (NonUnitalSemiring.toSemigroupWithZero.{u3} A _inst_3)) (DistribSMul.toSMulZeroClass.{u4, u3} S A (AddMonoid.toAddZeroClass.{u3} A (AddCommMonoid.toAddMonoid.{u3} A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u3} A _inst_3)))) (DistribMulAction.toDistribSMul.{u4, u3} S A (MonoidWithZero.toMonoid.{u4} S (Semiring.toMonoidWithZero.{u4} S (CommSemiring.toSemiring.{u4} S _inst_1))) (AddCommMonoid.toAddMonoid.{u3} A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u3} A _inst_3))) _inst_10)))] {φ : AlgHom.{u4, max u3 u2, u1} S (Unitization.{u2, u3} R A) B _inst_1 (Unitization.semiring.{u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5) _inst_7 (Unitization.algebra.{u4, u2, u3} S R A _inst_1 _inst_2 _inst_3 _inst_4 _inst_6 _inst_5 _inst_9 _inst_10 _inst_11) _inst_8} {ψ : AlgHom.{u4, max u3 u2, u1} S (Unitization.{u2, u3} R A) B _inst_1 (Unitization.semiring.{u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5) _inst_7 (Unitization.algebra.{u4, u2, u3} S R A _inst_1 _inst_2 _inst_3 _inst_4 _inst_6 _inst_5 _inst_9 _inst_10 _inst_11) _inst_8}, (forall (a : A), Eq.{succ u1} ((fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : Unitization.{u2, u3} R A) => B) (Unitization.inr.{u2, u3} R A (CommMonoidWithZero.toZero.{u2} R (CommSemiring.toCommMonoidWithZero.{u2} R _inst_2)) a)) (FunLike.coe.{max (max (succ u2) (succ u3)) (succ u1), max (succ u2) (succ u3), succ u1} (AlgHom.{u4, max u3 u2, u1} S (Unitization.{u2, u3} R A) B _inst_1 (Unitization.semiring.{u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5) _inst_7 (Unitization.algebra.{u4, u2, u3} S R A _inst_1 _inst_2 _inst_3 _inst_4 _inst_6 _inst_5 _inst_9 _inst_10 _inst_11) _inst_8) (Unitization.{u2, u3} R A) (fun (_x : Unitization.{u2, u3} R A) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : Unitization.{u2, u3} R A) => B) _x) (SMulHomClass.toFunLike.{max (max u2 u3) u1, u4, max u2 u3, u1} (AlgHom.{u4, max u3 u2, u1} S (Unitization.{u2, u3} R A) B _inst_1 (Unitization.semiring.{u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5) _inst_7 (Unitization.algebra.{u4, u2, u3} S R A _inst_1 _inst_2 _inst_3 _inst_4 _inst_6 _inst_5 _inst_9 _inst_10 _inst_11) _inst_8) S (Unitization.{u2, u3} R A) B (SMulZeroClass.toSMul.{u4, max u2 u3} S (Unitization.{u2, u3} R A) (AddMonoid.toZero.{max u2 u3} (Unitization.{u2, u3} R A) (AddCommMonoid.toAddMonoid.{max u2 u3} (Unitization.{u2, u3} R A) (NonUnitalNonAssocSemiring.toAddCommMonoid.{max u2 u3} (Unitization.{u2, u3} R A) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{max u2 u3} (Unitization.{u2, u3} R A) (Semiring.toNonAssocSemiring.{max u2 u3} (Unitization.{u2, u3} R A) (Unitization.semiring.{u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5)))))) (DistribSMul.toSMulZeroClass.{u4, max u2 u3} S (Unitization.{u2, u3} R A) (AddMonoid.toAddZeroClass.{max u2 u3} (Unitization.{u2, u3} R A) (AddCommMonoid.toAddMonoid.{max u2 u3} (Unitization.{u2, u3} R A) (NonUnitalNonAssocSemiring.toAddCommMonoid.{max u2 u3} (Unitization.{u2, u3} R A) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{max u2 u3} (Unitization.{u2, u3} R A) (Semiring.toNonAssocSemiring.{max u2 u3} (Unitization.{u2, u3} R A) (Unitization.semiring.{u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5)))))) (DistribMulAction.toDistribSMul.{u4, max u2 u3} S (Unitization.{u2, u3} R A) (MonoidWithZero.toMonoid.{u4} S (Semiring.toMonoidWithZero.{u4} S (CommSemiring.toSemiring.{u4} S _inst_1))) (AddCommMonoid.toAddMonoid.{max u2 u3} (Unitization.{u2, u3} R A) (NonUnitalNonAssocSemiring.toAddCommMonoid.{max u2 u3} (Unitization.{u2, u3} R A) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{max u2 u3} (Unitization.{u2, u3} R A) (Semiring.toNonAssocSemiring.{max u2 u3} (Unitization.{u2, u3} R A) (Unitization.semiring.{u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5))))) (Module.toDistribMulAction.{u4, max u2 u3} S (Unitization.{u2, u3} R A) (CommSemiring.toSemiring.{u4} S _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{max u2 u3} (Unitization.{u2, u3} R A) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{max u2 u3} (Unitization.{u2, u3} R A) (Semiring.toNonAssocSemiring.{max u2 u3} (Unitization.{u2, u3} R A) (Unitization.semiring.{u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5)))) (Algebra.toModule.{u4, max u2 u3} S (Unitization.{u2, u3} R A) _inst_1 (Unitization.semiring.{u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5) (Unitization.algebra.{u4, u2, u3} S R A _inst_1 _inst_2 _inst_3 _inst_4 _inst_6 _inst_5 _inst_9 _inst_10 _inst_11)))))) (SMulZeroClass.toSMul.{u4, u1} S B (AddMonoid.toZero.{u1} B (AddCommMonoid.toAddMonoid.{u1} B (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} B (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} B (Semiring.toNonAssocSemiring.{u1} B _inst_7))))) (DistribSMul.toSMulZeroClass.{u4, u1} S B (AddMonoid.toAddZeroClass.{u1} B (AddCommMonoid.toAddMonoid.{u1} B (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} B (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} B (Semiring.toNonAssocSemiring.{u1} B _inst_7))))) (DistribMulAction.toDistribSMul.{u4, u1} S B (MonoidWithZero.toMonoid.{u4} S (Semiring.toMonoidWithZero.{u4} S (CommSemiring.toSemiring.{u4} S _inst_1))) (AddCommMonoid.toAddMonoid.{u1} B (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} B (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} B (Semiring.toNonAssocSemiring.{u1} B _inst_7)))) (Module.toDistribMulAction.{u4, u1} S B (CommSemiring.toSemiring.{u4} S _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} B (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} B (Semiring.toNonAssocSemiring.{u1} B _inst_7))) (Algebra.toModule.{u4, u1} S B _inst_1 _inst_7 _inst_8))))) (DistribMulActionHomClass.toSMulHomClass.{max (max u2 u3) u1, u4, max u2 u3, u1} (AlgHom.{u4, max u3 u2, u1} S (Unitization.{u2, u3} R A) B _inst_1 (Unitization.semiring.{u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5) _inst_7 (Unitization.algebra.{u4, u2, u3} S R A _inst_1 _inst_2 _inst_3 _inst_4 _inst_6 _inst_5 _inst_9 _inst_10 _inst_11) _inst_8) S (Unitization.{u2, u3} R A) B (MonoidWithZero.toMonoid.{u4} S (Semiring.toMonoidWithZero.{u4} S (CommSemiring.toSemiring.{u4} S _inst_1))) (AddCommMonoid.toAddMonoid.{max u2 u3} (Unitization.{u2, u3} R A) (NonUnitalNonAssocSemiring.toAddCommMonoid.{max u2 u3} (Unitization.{u2, u3} R A) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{max u2 u3} (Unitization.{u2, u3} R A) (Semiring.toNonAssocSemiring.{max u2 u3} (Unitization.{u2, u3} R A) (Unitization.semiring.{u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5))))) (AddCommMonoid.toAddMonoid.{u1} B (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} B (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} B (Semiring.toNonAssocSemiring.{u1} B _inst_7)))) (Module.toDistribMulAction.{u4, max u2 u3} S (Unitization.{u2, u3} R A) (CommSemiring.toSemiring.{u4} S _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{max u2 u3} (Unitization.{u2, u3} R A) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{max u2 u3} (Unitization.{u2, u3} R A) (Semiring.toNonAssocSemiring.{max u2 u3} (Unitization.{u2, u3} R A) (Unitization.semiring.{u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5)))) (Algebra.toModule.{u4, max u2 u3} S (Unitization.{u2, u3} R A) _inst_1 (Unitization.semiring.{u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5) (Unitization.algebra.{u4, u2, u3} S R A _inst_1 _inst_2 _inst_3 _inst_4 _inst_6 _inst_5 _inst_9 _inst_10 _inst_11))) (Module.toDistribMulAction.{u4, u1} S B (CommSemiring.toSemiring.{u4} S _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} B (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} B (Semiring.toNonAssocSemiring.{u1} B _inst_7))) (Algebra.toModule.{u4, u1} S B _inst_1 _inst_7 _inst_8)) (NonUnitalAlgHomClass.toDistribMulActionHomClass.{max (max u2 u3) u1, u4, max u2 u3, u1} (AlgHom.{u4, max u3 u2, u1} S (Unitization.{u2, u3} R A) B _inst_1 (Unitization.semiring.{u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5) _inst_7 (Unitization.algebra.{u4, u2, u3} S R A _inst_1 _inst_2 _inst_3 _inst_4 _inst_6 _inst_5 _inst_9 _inst_10 _inst_11) _inst_8) S (Unitization.{u2, u3} R A) B (MonoidWithZero.toMonoid.{u4} S (Semiring.toMonoidWithZero.{u4} S (CommSemiring.toSemiring.{u4} S _inst_1))) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{max u2 u3} (Unitization.{u2, u3} R A) (Semiring.toNonAssocSemiring.{max u2 u3} (Unitization.{u2, u3} R A) (Unitization.semiring.{u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5))) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} B (Semiring.toNonAssocSemiring.{u1} B _inst_7)) (Module.toDistribMulAction.{u4, max u2 u3} S (Unitization.{u2, u3} R A) (CommSemiring.toSemiring.{u4} S _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{max u2 u3} (Unitization.{u2, u3} R A) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{max u2 u3} (Unitization.{u2, u3} R A) (Semiring.toNonAssocSemiring.{max u2 u3} (Unitization.{u2, u3} R A) (Unitization.semiring.{u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5)))) (Algebra.toModule.{u4, max u2 u3} S (Unitization.{u2, u3} R A) _inst_1 (Unitization.semiring.{u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5) (Unitization.algebra.{u4, u2, u3} S R A _inst_1 _inst_2 _inst_3 _inst_4 _inst_6 _inst_5 _inst_9 _inst_10 _inst_11))) (Module.toDistribMulAction.{u4, u1} S B (CommSemiring.toSemiring.{u4} S _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} B (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} B (Semiring.toNonAssocSemiring.{u1} B _inst_7))) (Algebra.toModule.{u4, u1} S B _inst_1 _inst_7 _inst_8)) (AlgHom.instNonUnitalAlgHomClassToMonoidToMonoidWithZeroToSemiringToNonUnitalNonAssocSemiringToNonAssocSemiringToNonUnitalNonAssocSemiringToNonAssocSemiringToDistribMulActionToAddCommMonoidToModuleToDistribMulActionToAddCommMonoidToModule.{u4, max u2 u3, u1, max (max u2 u3) u1} S (Unitization.{u2, u3} R A) B _inst_1 (Unitization.semiring.{u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5) _inst_7 (Unitization.algebra.{u4, u2, u3} S R A _inst_1 _inst_2 _inst_3 _inst_4 _inst_6 _inst_5 _inst_9 _inst_10 _inst_11) _inst_8 (AlgHom.{u4, max u3 u2, u1} S (Unitization.{u2, u3} R A) B _inst_1 (Unitization.semiring.{u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5) _inst_7 (Unitization.algebra.{u4, u2, u3} S R A _inst_1 _inst_2 _inst_3 _inst_4 _inst_6 _inst_5 _inst_9 _inst_10 _inst_11) _inst_8) (AlgHom.algHomClass.{u4, max u2 u3, u1} S (Unitization.{u2, u3} R A) B _inst_1 (Unitization.semiring.{u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5) _inst_7 (Unitization.algebra.{u4, u2, u3} S R A _inst_1 _inst_2 _inst_3 _inst_4 _inst_6 _inst_5 _inst_9 _inst_10 _inst_11) _inst_8))))) φ (Unitization.inr.{u2, u3} R A (CommMonoidWithZero.toZero.{u2} R (CommSemiring.toCommMonoidWithZero.{u2} R _inst_2)) a)) (FunLike.coe.{max (max (succ u2) (succ u3)) (succ u1), max (succ u2) (succ u3), succ u1} (AlgHom.{u4, max u3 u2, u1} S (Unitization.{u2, u3} R A) B _inst_1 (Unitization.semiring.{u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5) _inst_7 (Unitization.algebra.{u4, u2, u3} S R A _inst_1 _inst_2 _inst_3 _inst_4 _inst_6 _inst_5 _inst_9 _inst_10 _inst_11) _inst_8) (Unitization.{u2, u3} R A) (fun (_x : Unitization.{u2, u3} R A) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : Unitization.{u2, u3} R A) => B) _x) (SMulHomClass.toFunLike.{max (max u2 u3) u1, u4, max u2 u3, u1} (AlgHom.{u4, max u3 u2, u1} S (Unitization.{u2, u3} R A) B _inst_1 (Unitization.semiring.{u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5) _inst_7 (Unitization.algebra.{u4, u2, u3} S R A _inst_1 _inst_2 _inst_3 _inst_4 _inst_6 _inst_5 _inst_9 _inst_10 _inst_11) _inst_8) S (Unitization.{u2, u3} R A) B (SMulZeroClass.toSMul.{u4, max u2 u3} S (Unitization.{u2, u3} R A) (AddMonoid.toZero.{max u2 u3} (Unitization.{u2, u3} R A) (AddCommMonoid.toAddMonoid.{max u2 u3} (Unitization.{u2, u3} R A) (NonUnitalNonAssocSemiring.toAddCommMonoid.{max u2 u3} (Unitization.{u2, u3} R A) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{max u2 u3} (Unitization.{u2, u3} R A) (Semiring.toNonAssocSemiring.{max u2 u3} (Unitization.{u2, u3} R A) (Unitization.semiring.{u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5)))))) (DistribSMul.toSMulZeroClass.{u4, max u2 u3} S (Unitization.{u2, u3} R A) (AddMonoid.toAddZeroClass.{max u2 u3} (Unitization.{u2, u3} R A) (AddCommMonoid.toAddMonoid.{max u2 u3} (Unitization.{u2, u3} R A) (NonUnitalNonAssocSemiring.toAddCommMonoid.{max u2 u3} (Unitization.{u2, u3} R A) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{max u2 u3} (Unitization.{u2, u3} R A) (Semiring.toNonAssocSemiring.{max u2 u3} (Unitization.{u2, u3} R A) (Unitization.semiring.{u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5)))))) (DistribMulAction.toDistribSMul.{u4, max u2 u3} S (Unitization.{u2, u3} R A) (MonoidWithZero.toMonoid.{u4} S (Semiring.toMonoidWithZero.{u4} S (CommSemiring.toSemiring.{u4} S _inst_1))) (AddCommMonoid.toAddMonoid.{max u2 u3} (Unitization.{u2, u3} R A) (NonUnitalNonAssocSemiring.toAddCommMonoid.{max u2 u3} (Unitization.{u2, u3} R A) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{max u2 u3} (Unitization.{u2, u3} R A) (Semiring.toNonAssocSemiring.{max u2 u3} (Unitization.{u2, u3} R A) (Unitization.semiring.{u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5))))) (Module.toDistribMulAction.{u4, max u2 u3} S (Unitization.{u2, u3} R A) (CommSemiring.toSemiring.{u4} S _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{max u2 u3} (Unitization.{u2, u3} R A) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{max u2 u3} (Unitization.{u2, u3} R A) (Semiring.toNonAssocSemiring.{max u2 u3} (Unitization.{u2, u3} R A) (Unitization.semiring.{u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5)))) (Algebra.toModule.{u4, max u2 u3} S (Unitization.{u2, u3} R A) _inst_1 (Unitization.semiring.{u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5) (Unitization.algebra.{u4, u2, u3} S R A _inst_1 _inst_2 _inst_3 _inst_4 _inst_6 _inst_5 _inst_9 _inst_10 _inst_11)))))) (SMulZeroClass.toSMul.{u4, u1} S B (AddMonoid.toZero.{u1} B (AddCommMonoid.toAddMonoid.{u1} B (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} B (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} B (Semiring.toNonAssocSemiring.{u1} B _inst_7))))) (DistribSMul.toSMulZeroClass.{u4, u1} S B (AddMonoid.toAddZeroClass.{u1} B (AddCommMonoid.toAddMonoid.{u1} B (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} B (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} B (Semiring.toNonAssocSemiring.{u1} B _inst_7))))) (DistribMulAction.toDistribSMul.{u4, u1} S B (MonoidWithZero.toMonoid.{u4} S (Semiring.toMonoidWithZero.{u4} S (CommSemiring.toSemiring.{u4} S _inst_1))) (AddCommMonoid.toAddMonoid.{u1} B (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} B (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} B (Semiring.toNonAssocSemiring.{u1} B _inst_7)))) (Module.toDistribMulAction.{u4, u1} S B (CommSemiring.toSemiring.{u4} S _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} B (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} B (Semiring.toNonAssocSemiring.{u1} B _inst_7))) (Algebra.toModule.{u4, u1} S B _inst_1 _inst_7 _inst_8))))) (DistribMulActionHomClass.toSMulHomClass.{max (max u2 u3) u1, u4, max u2 u3, u1} (AlgHom.{u4, max u3 u2, u1} S (Unitization.{u2, u3} R A) B _inst_1 (Unitization.semiring.{u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5) _inst_7 (Unitization.algebra.{u4, u2, u3} S R A _inst_1 _inst_2 _inst_3 _inst_4 _inst_6 _inst_5 _inst_9 _inst_10 _inst_11) _inst_8) S (Unitization.{u2, u3} R A) B (MonoidWithZero.toMonoid.{u4} S (Semiring.toMonoidWithZero.{u4} S (CommSemiring.toSemiring.{u4} S _inst_1))) (AddCommMonoid.toAddMonoid.{max u2 u3} (Unitization.{u2, u3} R A) (NonUnitalNonAssocSemiring.toAddCommMonoid.{max u2 u3} (Unitization.{u2, u3} R A) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{max u2 u3} (Unitization.{u2, u3} R A) (Semiring.toNonAssocSemiring.{max u2 u3} (Unitization.{u2, u3} R A) (Unitization.semiring.{u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5))))) (AddCommMonoid.toAddMonoid.{u1} B (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} B (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} B (Semiring.toNonAssocSemiring.{u1} B _inst_7)))) (Module.toDistribMulAction.{u4, max u2 u3} S (Unitization.{u2, u3} R A) (CommSemiring.toSemiring.{u4} S _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{max u2 u3} (Unitization.{u2, u3} R A) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{max u2 u3} (Unitization.{u2, u3} R A) (Semiring.toNonAssocSemiring.{max u2 u3} (Unitization.{u2, u3} R A) (Unitization.semiring.{u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5)))) (Algebra.toModule.{u4, max u2 u3} S (Unitization.{u2, u3} R A) _inst_1 (Unitization.semiring.{u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5) (Unitization.algebra.{u4, u2, u3} S R A _inst_1 _inst_2 _inst_3 _inst_4 _inst_6 _inst_5 _inst_9 _inst_10 _inst_11))) (Module.toDistribMulAction.{u4, u1} S B (CommSemiring.toSemiring.{u4} S _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} B (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} B (Semiring.toNonAssocSemiring.{u1} B _inst_7))) (Algebra.toModule.{u4, u1} S B _inst_1 _inst_7 _inst_8)) (NonUnitalAlgHomClass.toDistribMulActionHomClass.{max (max u2 u3) u1, u4, max u2 u3, u1} (AlgHom.{u4, max u3 u2, u1} S (Unitization.{u2, u3} R A) B _inst_1 (Unitization.semiring.{u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5) _inst_7 (Unitization.algebra.{u4, u2, u3} S R A _inst_1 _inst_2 _inst_3 _inst_4 _inst_6 _inst_5 _inst_9 _inst_10 _inst_11) _inst_8) S (Unitization.{u2, u3} R A) B (MonoidWithZero.toMonoid.{u4} S (Semiring.toMonoidWithZero.{u4} S (CommSemiring.toSemiring.{u4} S _inst_1))) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{max u2 u3} (Unitization.{u2, u3} R A) (Semiring.toNonAssocSemiring.{max u2 u3} (Unitization.{u2, u3} R A) (Unitization.semiring.{u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5))) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} B (Semiring.toNonAssocSemiring.{u1} B _inst_7)) (Module.toDistribMulAction.{u4, max u2 u3} S (Unitization.{u2, u3} R A) (CommSemiring.toSemiring.{u4} S _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{max u2 u3} (Unitization.{u2, u3} R A) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{max u2 u3} (Unitization.{u2, u3} R A) (Semiring.toNonAssocSemiring.{max u2 u3} (Unitization.{u2, u3} R A) (Unitization.semiring.{u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5)))) (Algebra.toModule.{u4, max u2 u3} S (Unitization.{u2, u3} R A) _inst_1 (Unitization.semiring.{u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5) (Unitization.algebra.{u4, u2, u3} S R A _inst_1 _inst_2 _inst_3 _inst_4 _inst_6 _inst_5 _inst_9 _inst_10 _inst_11))) (Module.toDistribMulAction.{u4, u1} S B (CommSemiring.toSemiring.{u4} S _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} B (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} B (Semiring.toNonAssocSemiring.{u1} B _inst_7))) (Algebra.toModule.{u4, u1} S B _inst_1 _inst_7 _inst_8)) (AlgHom.instNonUnitalAlgHomClassToMonoidToMonoidWithZeroToSemiringToNonUnitalNonAssocSemiringToNonAssocSemiringToNonUnitalNonAssocSemiringToNonAssocSemiringToDistribMulActionToAddCommMonoidToModuleToDistribMulActionToAddCommMonoidToModule.{u4, max u2 u3, u1, max (max u2 u3) u1} S (Unitization.{u2, u3} R A) B _inst_1 (Unitization.semiring.{u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5) _inst_7 (Unitization.algebra.{u4, u2, u3} S R A _inst_1 _inst_2 _inst_3 _inst_4 _inst_6 _inst_5 _inst_9 _inst_10 _inst_11) _inst_8 (AlgHom.{u4, max u3 u2, u1} S (Unitization.{u2, u3} R A) B _inst_1 (Unitization.semiring.{u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5) _inst_7 (Unitization.algebra.{u4, u2, u3} S R A _inst_1 _inst_2 _inst_3 _inst_4 _inst_6 _inst_5 _inst_9 _inst_10 _inst_11) _inst_8) (AlgHom.algHomClass.{u4, max u2 u3, u1} S (Unitization.{u2, u3} R A) B _inst_1 (Unitization.semiring.{u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5) _inst_7 (Unitization.algebra.{u4, u2, u3} S R A _inst_1 _inst_2 _inst_3 _inst_4 _inst_6 _inst_5 _inst_9 _inst_10 _inst_11) _inst_8))))) ψ (Unitization.inr.{u2, u3} R A (CommMonoidWithZero.toZero.{u2} R (CommSemiring.toCommMonoidWithZero.{u2} R _inst_2)) a))) -> (forall (r : R), Eq.{succ u1} ((fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : Unitization.{u2, u3} R A) => B) (FunLike.coe.{max (succ u2) (succ u3), succ u2, max (succ u2) (succ u3)} (RingHom.{u2, max u3 u2} R (Unitization.{u2, u3} R A) (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_2)) (Semiring.toNonAssocSemiring.{max u3 u2} (Unitization.{u2, u3} R A) (Unitization.semiring.{u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5))) R (fun (a : R) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : R) => Unitization.{u2, u3} R A) a) (MulHomClass.toFunLike.{max u2 u3, u2, max u2 u3} (RingHom.{u2, max u3 u2} R (Unitization.{u2, u3} R A) (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_2)) (Semiring.toNonAssocSemiring.{max u3 u2} (Unitization.{u2, u3} R A) (Unitization.semiring.{u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5))) R (Unitization.{u2, u3} R A) (NonUnitalNonAssocSemiring.toMul.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_2)))) (NonUnitalNonAssocSemiring.toMul.{max u2 u3} (Unitization.{u2, u3} R A) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{max u2 u3} (Unitization.{u2, u3} R A) (Semiring.toNonAssocSemiring.{max u3 u2} (Unitization.{u2, u3} R A) (Unitization.semiring.{u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5)))) (NonUnitalRingHomClass.toMulHomClass.{max u2 u3, u2, max u2 u3} (RingHom.{u2, max u3 u2} R (Unitization.{u2, u3} R A) (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_2)) (Semiring.toNonAssocSemiring.{max u3 u2} (Unitization.{u2, u3} R A) (Unitization.semiring.{u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5))) R (Unitization.{u2, u3} R A) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_2))) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{max u2 u3} (Unitization.{u2, u3} R A) (Semiring.toNonAssocSemiring.{max u3 u2} (Unitization.{u2, u3} R A) (Unitization.semiring.{u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5))) (RingHomClass.toNonUnitalRingHomClass.{max u2 u3, u2, max u2 u3} (RingHom.{u2, max u3 u2} R (Unitization.{u2, u3} R A) (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_2)) (Semiring.toNonAssocSemiring.{max u3 u2} (Unitization.{u2, u3} R A) (Unitization.semiring.{u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5))) R (Unitization.{u2, u3} R A) (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_2)) (Semiring.toNonAssocSemiring.{max u3 u2} (Unitization.{u2, u3} R A) (Unitization.semiring.{u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5)) (RingHom.instRingHomClassRingHom.{u2, max u2 u3} R (Unitization.{u2, u3} R A) (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_2)) (Semiring.toNonAssocSemiring.{max u3 u2} (Unitization.{u2, u3} R A) (Unitization.semiring.{u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5)))))) (algebraMap.{u2, max u3 u2} R (Unitization.{u2, u3} R A) _inst_2 (Unitization.semiring.{u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5) (Unitization.algebra.{u2, u2, u3} R R A _inst_2 _inst_2 _inst_3 _inst_4 _inst_6 _inst_5 (Algebra.id.{u2} R _inst_2) (Module.toDistribMulAction.{u2, u3} R A (CommSemiring.toSemiring.{u2} R _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u3} A _inst_3)) _inst_4) (IsScalarTower.left.{u2, u3} R A (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R _inst_2))) (MulActionWithZero.toMulAction.{u2, u3} R A (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R _inst_2)) (SemigroupWithZero.toZero.{u3} A (NonUnitalSemiring.toSemigroupWithZero.{u3} A _inst_3)) (Module.toMulActionWithZero.{u2, u3} R A (CommSemiring.toSemiring.{u2} R _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u3} A _inst_3)) _inst_4))))) r)) (FunLike.coe.{max (max (succ u2) (succ u3)) (succ u1), max (succ u2) (succ u3), succ u1} (AlgHom.{u4, max u3 u2, u1} S (Unitization.{u2, u3} R A) B _inst_1 (Unitization.semiring.{u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5) _inst_7 (Unitization.algebra.{u4, u2, u3} S R A _inst_1 _inst_2 _inst_3 _inst_4 _inst_6 _inst_5 _inst_9 _inst_10 _inst_11) _inst_8) (Unitization.{u2, u3} R A) (fun (_x : Unitization.{u2, u3} R A) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : Unitization.{u2, u3} R A) => B) _x) (SMulHomClass.toFunLike.{max (max u2 u3) u1, u4, max u2 u3, u1} (AlgHom.{u4, max u3 u2, u1} S (Unitization.{u2, u3} R A) B _inst_1 (Unitization.semiring.{u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5) _inst_7 (Unitization.algebra.{u4, u2, u3} S R A _inst_1 _inst_2 _inst_3 _inst_4 _inst_6 _inst_5 _inst_9 _inst_10 _inst_11) _inst_8) S (Unitization.{u2, u3} R A) B (SMulZeroClass.toSMul.{u4, max u2 u3} S (Unitization.{u2, u3} R A) (AddMonoid.toZero.{max u2 u3} (Unitization.{u2, u3} R A) (AddCommMonoid.toAddMonoid.{max u2 u3} (Unitization.{u2, u3} R A) (NonUnitalNonAssocSemiring.toAddCommMonoid.{max u2 u3} (Unitization.{u2, u3} R A) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{max u2 u3} (Unitization.{u2, u3} R A) (Semiring.toNonAssocSemiring.{max u2 u3} (Unitization.{u2, u3} R A) (Unitization.semiring.{u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5)))))) (DistribSMul.toSMulZeroClass.{u4, max u2 u3} S (Unitization.{u2, u3} R A) (AddMonoid.toAddZeroClass.{max u2 u3} (Unitization.{u2, u3} R A) (AddCommMonoid.toAddMonoid.{max u2 u3} (Unitization.{u2, u3} R A) (NonUnitalNonAssocSemiring.toAddCommMonoid.{max u2 u3} (Unitization.{u2, u3} R A) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{max u2 u3} (Unitization.{u2, u3} R A) (Semiring.toNonAssocSemiring.{max u2 u3} (Unitization.{u2, u3} R A) (Unitization.semiring.{u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5)))))) (DistribMulAction.toDistribSMul.{u4, max u2 u3} S (Unitization.{u2, u3} R A) (MonoidWithZero.toMonoid.{u4} S (Semiring.toMonoidWithZero.{u4} S (CommSemiring.toSemiring.{u4} S _inst_1))) (AddCommMonoid.toAddMonoid.{max u2 u3} (Unitization.{u2, u3} R A) (NonUnitalNonAssocSemiring.toAddCommMonoid.{max u2 u3} (Unitization.{u2, u3} R A) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{max u2 u3} (Unitization.{u2, u3} R A) (Semiring.toNonAssocSemiring.{max u2 u3} (Unitization.{u2, u3} R A) (Unitization.semiring.{u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5))))) (Module.toDistribMulAction.{u4, max u2 u3} S (Unitization.{u2, u3} R A) (CommSemiring.toSemiring.{u4} S _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{max u2 u3} (Unitization.{u2, u3} R A) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{max u2 u3} (Unitization.{u2, u3} R A) (Semiring.toNonAssocSemiring.{max u2 u3} (Unitization.{u2, u3} R A) (Unitization.semiring.{u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5)))) (Algebra.toModule.{u4, max u2 u3} S (Unitization.{u2, u3} R A) _inst_1 (Unitization.semiring.{u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5) (Unitization.algebra.{u4, u2, u3} S R A _inst_1 _inst_2 _inst_3 _inst_4 _inst_6 _inst_5 _inst_9 _inst_10 _inst_11)))))) (SMulZeroClass.toSMul.{u4, u1} S B (AddMonoid.toZero.{u1} B (AddCommMonoid.toAddMonoid.{u1} B (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} B (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} B (Semiring.toNonAssocSemiring.{u1} B _inst_7))))) (DistribSMul.toSMulZeroClass.{u4, u1} S B (AddMonoid.toAddZeroClass.{u1} B (AddCommMonoid.toAddMonoid.{u1} B (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} B (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} B (Semiring.toNonAssocSemiring.{u1} B _inst_7))))) (DistribMulAction.toDistribSMul.{u4, u1} S B (MonoidWithZero.toMonoid.{u4} S (Semiring.toMonoidWithZero.{u4} S (CommSemiring.toSemiring.{u4} S _inst_1))) (AddCommMonoid.toAddMonoid.{u1} B (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} B (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} B (Semiring.toNonAssocSemiring.{u1} B _inst_7)))) (Module.toDistribMulAction.{u4, u1} S B (CommSemiring.toSemiring.{u4} S _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} B (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} B (Semiring.toNonAssocSemiring.{u1} B _inst_7))) (Algebra.toModule.{u4, u1} S B _inst_1 _inst_7 _inst_8))))) (DistribMulActionHomClass.toSMulHomClass.{max (max u2 u3) u1, u4, max u2 u3, u1} (AlgHom.{u4, max u3 u2, u1} S (Unitization.{u2, u3} R A) B _inst_1 (Unitization.semiring.{u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5) _inst_7 (Unitization.algebra.{u4, u2, u3} S R A _inst_1 _inst_2 _inst_3 _inst_4 _inst_6 _inst_5 _inst_9 _inst_10 _inst_11) _inst_8) S (Unitization.{u2, u3} R A) B (MonoidWithZero.toMonoid.{u4} S (Semiring.toMonoidWithZero.{u4} S (CommSemiring.toSemiring.{u4} S _inst_1))) (AddCommMonoid.toAddMonoid.{max u2 u3} (Unitization.{u2, u3} R A) (NonUnitalNonAssocSemiring.toAddCommMonoid.{max u2 u3} (Unitization.{u2, u3} R A) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{max u2 u3} (Unitization.{u2, u3} R A) (Semiring.toNonAssocSemiring.{max u2 u3} (Unitization.{u2, u3} R A) (Unitization.semiring.{u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5))))) (AddCommMonoid.toAddMonoid.{u1} B (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} B (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} B (Semiring.toNonAssocSemiring.{u1} B _inst_7)))) (Module.toDistribMulAction.{u4, max u2 u3} S (Unitization.{u2, u3} R A) (CommSemiring.toSemiring.{u4} S _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{max u2 u3} (Unitization.{u2, u3} R A) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{max u2 u3} (Unitization.{u2, u3} R A) (Semiring.toNonAssocSemiring.{max u2 u3} (Unitization.{u2, u3} R A) (Unitization.semiring.{u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5)))) (Algebra.toModule.{u4, max u2 u3} S (Unitization.{u2, u3} R A) _inst_1 (Unitization.semiring.{u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5) (Unitization.algebra.{u4, u2, u3} S R A _inst_1 _inst_2 _inst_3 _inst_4 _inst_6 _inst_5 _inst_9 _inst_10 _inst_11))) (Module.toDistribMulAction.{u4, u1} S B (CommSemiring.toSemiring.{u4} S _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} B (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} B (Semiring.toNonAssocSemiring.{u1} B _inst_7))) (Algebra.toModule.{u4, u1} S B _inst_1 _inst_7 _inst_8)) (NonUnitalAlgHomClass.toDistribMulActionHomClass.{max (max u2 u3) u1, u4, max u2 u3, u1} (AlgHom.{u4, max u3 u2, u1} S (Unitization.{u2, u3} R A) B _inst_1 (Unitization.semiring.{u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5) _inst_7 (Unitization.algebra.{u4, u2, u3} S R A _inst_1 _inst_2 _inst_3 _inst_4 _inst_6 _inst_5 _inst_9 _inst_10 _inst_11) _inst_8) S (Unitization.{u2, u3} R A) B (MonoidWithZero.toMonoid.{u4} S (Semiring.toMonoidWithZero.{u4} S (CommSemiring.toSemiring.{u4} S _inst_1))) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{max u2 u3} (Unitization.{u2, u3} R A) (Semiring.toNonAssocSemiring.{max u2 u3} (Unitization.{u2, u3} R A) (Unitization.semiring.{u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5))) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} B (Semiring.toNonAssocSemiring.{u1} B _inst_7)) (Module.toDistribMulAction.{u4, max u2 u3} S (Unitization.{u2, u3} R A) (CommSemiring.toSemiring.{u4} S _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{max u2 u3} (Unitization.{u2, u3} R A) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{max u2 u3} (Unitization.{u2, u3} R A) (Semiring.toNonAssocSemiring.{max u2 u3} (Unitization.{u2, u3} R A) (Unitization.semiring.{u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5)))) (Algebra.toModule.{u4, max u2 u3} S (Unitization.{u2, u3} R A) _inst_1 (Unitization.semiring.{u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5) (Unitization.algebra.{u4, u2, u3} S R A _inst_1 _inst_2 _inst_3 _inst_4 _inst_6 _inst_5 _inst_9 _inst_10 _inst_11))) (Module.toDistribMulAction.{u4, u1} S B (CommSemiring.toSemiring.{u4} S _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} B (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} B (Semiring.toNonAssocSemiring.{u1} B _inst_7))) (Algebra.toModule.{u4, u1} S B _inst_1 _inst_7 _inst_8)) (AlgHom.instNonUnitalAlgHomClassToMonoidToMonoidWithZeroToSemiringToNonUnitalNonAssocSemiringToNonAssocSemiringToNonUnitalNonAssocSemiringToNonAssocSemiringToDistribMulActionToAddCommMonoidToModuleToDistribMulActionToAddCommMonoidToModule.{u4, max u2 u3, u1, max (max u2 u3) u1} S (Unitization.{u2, u3} R A) B _inst_1 (Unitization.semiring.{u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5) _inst_7 (Unitization.algebra.{u4, u2, u3} S R A _inst_1 _inst_2 _inst_3 _inst_4 _inst_6 _inst_5 _inst_9 _inst_10 _inst_11) _inst_8 (AlgHom.{u4, max u3 u2, u1} S (Unitization.{u2, u3} R A) B _inst_1 (Unitization.semiring.{u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5) _inst_7 (Unitization.algebra.{u4, u2, u3} S R A _inst_1 _inst_2 _inst_3 _inst_4 _inst_6 _inst_5 _inst_9 _inst_10 _inst_11) _inst_8) (AlgHom.algHomClass.{u4, max u2 u3, u1} S (Unitization.{u2, u3} R A) B _inst_1 (Unitization.semiring.{u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5) _inst_7 (Unitization.algebra.{u4, u2, u3} S R A _inst_1 _inst_2 _inst_3 _inst_4 _inst_6 _inst_5 _inst_9 _inst_10 _inst_11) _inst_8))))) φ (FunLike.coe.{max (succ u2) (succ u3), succ u2, max (succ u2) (succ u3)} (RingHom.{u2, max u3 u2} R (Unitization.{u2, u3} R A) (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_2)) (Semiring.toNonAssocSemiring.{max u3 u2} (Unitization.{u2, u3} R A) (Unitization.semiring.{u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5))) R (fun (_x : R) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : R) => Unitization.{u2, u3} R A) _x) (MulHomClass.toFunLike.{max u2 u3, u2, max u2 u3} (RingHom.{u2, max u3 u2} R (Unitization.{u2, u3} R A) (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_2)) (Semiring.toNonAssocSemiring.{max u3 u2} (Unitization.{u2, u3} R A) (Unitization.semiring.{u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5))) R (Unitization.{u2, u3} R A) (NonUnitalNonAssocSemiring.toMul.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_2)))) (NonUnitalNonAssocSemiring.toMul.{max u2 u3} (Unitization.{u2, u3} R A) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{max u2 u3} (Unitization.{u2, u3} R A) (Semiring.toNonAssocSemiring.{max u3 u2} (Unitization.{u2, u3} R A) (Unitization.semiring.{u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5)))) (NonUnitalRingHomClass.toMulHomClass.{max u2 u3, u2, max u2 u3} (RingHom.{u2, max u3 u2} R (Unitization.{u2, u3} R A) (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_2)) (Semiring.toNonAssocSemiring.{max u3 u2} (Unitization.{u2, u3} R A) (Unitization.semiring.{u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5))) R (Unitization.{u2, u3} R A) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_2))) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{max u2 u3} (Unitization.{u2, u3} R A) (Semiring.toNonAssocSemiring.{max u3 u2} (Unitization.{u2, u3} R A) (Unitization.semiring.{u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5))) (RingHomClass.toNonUnitalRingHomClass.{max u2 u3, u2, max u2 u3} (RingHom.{u2, max u3 u2} R (Unitization.{u2, u3} R A) (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_2)) (Semiring.toNonAssocSemiring.{max u3 u2} (Unitization.{u2, u3} R A) (Unitization.semiring.{u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5))) R (Unitization.{u2, u3} R A) (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_2)) (Semiring.toNonAssocSemiring.{max u3 u2} (Unitization.{u2, u3} R A) (Unitization.semiring.{u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5)) (RingHom.instRingHomClassRingHom.{u2, max u2 u3} R (Unitization.{u2, u3} R A) (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_2)) (Semiring.toNonAssocSemiring.{max u3 u2} (Unitization.{u2, u3} R A) (Unitization.semiring.{u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5)))))) (algebraMap.{u2, max u3 u2} R (Unitization.{u2, u3} R A) _inst_2 (Unitization.semiring.{u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5) (Unitization.algebra.{u2, u2, u3} R R A _inst_2 _inst_2 _inst_3 _inst_4 _inst_6 _inst_5 (Algebra.id.{u2} R _inst_2) (Module.toDistribMulAction.{u2, u3} R A (CommSemiring.toSemiring.{u2} R _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u3} A _inst_3)) _inst_4) (IsScalarTower.left.{u2, u3} R A (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R _inst_2))) (MulActionWithZero.toMulAction.{u2, u3} R A (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R _inst_2)) (SemigroupWithZero.toZero.{u3} A (NonUnitalSemiring.toSemigroupWithZero.{u3} A _inst_3)) (Module.toMulActionWithZero.{u2, u3} R A (CommSemiring.toSemiring.{u2} R _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u3} A _inst_3)) _inst_4))))) r)) (FunLike.coe.{max (max (succ u2) (succ u3)) (succ u1), max (succ u2) (succ u3), succ u1} (AlgHom.{u4, max u3 u2, u1} S (Unitization.{u2, u3} R A) B _inst_1 (Unitization.semiring.{u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5) _inst_7 (Unitization.algebra.{u4, u2, u3} S R A _inst_1 _inst_2 _inst_3 _inst_4 _inst_6 _inst_5 _inst_9 _inst_10 _inst_11) _inst_8) (Unitization.{u2, u3} R A) (fun (_x : Unitization.{u2, u3} R A) => (fun (x._@.Mathlib.Algebra.Hom.GroupAction._hyg.2186 : Unitization.{u2, u3} R A) => B) _x) (SMulHomClass.toFunLike.{max (max u2 u3) u1, u4, max u2 u3, u1} (AlgHom.{u4, max u3 u2, u1} S (Unitization.{u2, u3} R A) B _inst_1 (Unitization.semiring.{u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5) _inst_7 (Unitization.algebra.{u4, u2, u3} S R A _inst_1 _inst_2 _inst_3 _inst_4 _inst_6 _inst_5 _inst_9 _inst_10 _inst_11) _inst_8) S (Unitization.{u2, u3} R A) B (SMulZeroClass.toSMul.{u4, max u2 u3} S (Unitization.{u2, u3} R A) (AddMonoid.toZero.{max u2 u3} (Unitization.{u2, u3} R A) (AddCommMonoid.toAddMonoid.{max u2 u3} (Unitization.{u2, u3} R A) (NonUnitalNonAssocSemiring.toAddCommMonoid.{max u2 u3} (Unitization.{u2, u3} R A) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{max u2 u3} (Unitization.{u2, u3} R A) (Semiring.toNonAssocSemiring.{max u2 u3} (Unitization.{u2, u3} R A) (Unitization.semiring.{u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5)))))) (DistribSMul.toSMulZeroClass.{u4, max u2 u3} S (Unitization.{u2, u3} R A) (AddMonoid.toAddZeroClass.{max u2 u3} (Unitization.{u2, u3} R A) (AddCommMonoid.toAddMonoid.{max u2 u3} (Unitization.{u2, u3} R A) (NonUnitalNonAssocSemiring.toAddCommMonoid.{max u2 u3} (Unitization.{u2, u3} R A) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{max u2 u3} (Unitization.{u2, u3} R A) (Semiring.toNonAssocSemiring.{max u2 u3} (Unitization.{u2, u3} R A) (Unitization.semiring.{u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5)))))) (DistribMulAction.toDistribSMul.{u4, max u2 u3} S (Unitization.{u2, u3} R A) (MonoidWithZero.toMonoid.{u4} S (Semiring.toMonoidWithZero.{u4} S (CommSemiring.toSemiring.{u4} S _inst_1))) (AddCommMonoid.toAddMonoid.{max u2 u3} (Unitization.{u2, u3} R A) (NonUnitalNonAssocSemiring.toAddCommMonoid.{max u2 u3} (Unitization.{u2, u3} R A) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{max u2 u3} (Unitization.{u2, u3} R A) (Semiring.toNonAssocSemiring.{max u2 u3} (Unitization.{u2, u3} R A) (Unitization.semiring.{u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5))))) (Module.toDistribMulAction.{u4, max u2 u3} S (Unitization.{u2, u3} R A) (CommSemiring.toSemiring.{u4} S _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{max u2 u3} (Unitization.{u2, u3} R A) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{max u2 u3} (Unitization.{u2, u3} R A) (Semiring.toNonAssocSemiring.{max u2 u3} (Unitization.{u2, u3} R A) (Unitization.semiring.{u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5)))) (Algebra.toModule.{u4, max u2 u3} S (Unitization.{u2, u3} R A) _inst_1 (Unitization.semiring.{u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5) (Unitization.algebra.{u4, u2, u3} S R A _inst_1 _inst_2 _inst_3 _inst_4 _inst_6 _inst_5 _inst_9 _inst_10 _inst_11)))))) (SMulZeroClass.toSMul.{u4, u1} S B (AddMonoid.toZero.{u1} B (AddCommMonoid.toAddMonoid.{u1} B (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} B (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} B (Semiring.toNonAssocSemiring.{u1} B _inst_7))))) (DistribSMul.toSMulZeroClass.{u4, u1} S B (AddMonoid.toAddZeroClass.{u1} B (AddCommMonoid.toAddMonoid.{u1} B (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} B (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} B (Semiring.toNonAssocSemiring.{u1} B _inst_7))))) (DistribMulAction.toDistribSMul.{u4, u1} S B (MonoidWithZero.toMonoid.{u4} S (Semiring.toMonoidWithZero.{u4} S (CommSemiring.toSemiring.{u4} S _inst_1))) (AddCommMonoid.toAddMonoid.{u1} B (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} B (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} B (Semiring.toNonAssocSemiring.{u1} B _inst_7)))) (Module.toDistribMulAction.{u4, u1} S B (CommSemiring.toSemiring.{u4} S _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} B (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} B (Semiring.toNonAssocSemiring.{u1} B _inst_7))) (Algebra.toModule.{u4, u1} S B _inst_1 _inst_7 _inst_8))))) (DistribMulActionHomClass.toSMulHomClass.{max (max u2 u3) u1, u4, max u2 u3, u1} (AlgHom.{u4, max u3 u2, u1} S (Unitization.{u2, u3} R A) B _inst_1 (Unitization.semiring.{u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5) _inst_7 (Unitization.algebra.{u4, u2, u3} S R A _inst_1 _inst_2 _inst_3 _inst_4 _inst_6 _inst_5 _inst_9 _inst_10 _inst_11) _inst_8) S (Unitization.{u2, u3} R A) B (MonoidWithZero.toMonoid.{u4} S (Semiring.toMonoidWithZero.{u4} S (CommSemiring.toSemiring.{u4} S _inst_1))) (AddCommMonoid.toAddMonoid.{max u2 u3} (Unitization.{u2, u3} R A) (NonUnitalNonAssocSemiring.toAddCommMonoid.{max u2 u3} (Unitization.{u2, u3} R A) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{max u2 u3} (Unitization.{u2, u3} R A) (Semiring.toNonAssocSemiring.{max u2 u3} (Unitization.{u2, u3} R A) (Unitization.semiring.{u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5))))) (AddCommMonoid.toAddMonoid.{u1} B (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} B (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} B (Semiring.toNonAssocSemiring.{u1} B _inst_7)))) (Module.toDistribMulAction.{u4, max u2 u3} S (Unitization.{u2, u3} R A) (CommSemiring.toSemiring.{u4} S _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{max u2 u3} (Unitization.{u2, u3} R A) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{max u2 u3} (Unitization.{u2, u3} R A) (Semiring.toNonAssocSemiring.{max u2 u3} (Unitization.{u2, u3} R A) (Unitization.semiring.{u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5)))) (Algebra.toModule.{u4, max u2 u3} S (Unitization.{u2, u3} R A) _inst_1 (Unitization.semiring.{u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5) (Unitization.algebra.{u4, u2, u3} S R A _inst_1 _inst_2 _inst_3 _inst_4 _inst_6 _inst_5 _inst_9 _inst_10 _inst_11))) (Module.toDistribMulAction.{u4, u1} S B (CommSemiring.toSemiring.{u4} S _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} B (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} B (Semiring.toNonAssocSemiring.{u1} B _inst_7))) (Algebra.toModule.{u4, u1} S B _inst_1 _inst_7 _inst_8)) (NonUnitalAlgHomClass.toDistribMulActionHomClass.{max (max u2 u3) u1, u4, max u2 u3, u1} (AlgHom.{u4, max u3 u2, u1} S (Unitization.{u2, u3} R A) B _inst_1 (Unitization.semiring.{u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5) _inst_7 (Unitization.algebra.{u4, u2, u3} S R A _inst_1 _inst_2 _inst_3 _inst_4 _inst_6 _inst_5 _inst_9 _inst_10 _inst_11) _inst_8) S (Unitization.{u2, u3} R A) B (MonoidWithZero.toMonoid.{u4} S (Semiring.toMonoidWithZero.{u4} S (CommSemiring.toSemiring.{u4} S _inst_1))) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{max u2 u3} (Unitization.{u2, u3} R A) (Semiring.toNonAssocSemiring.{max u2 u3} (Unitization.{u2, u3} R A) (Unitization.semiring.{u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5))) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} B (Semiring.toNonAssocSemiring.{u1} B _inst_7)) (Module.toDistribMulAction.{u4, max u2 u3} S (Unitization.{u2, u3} R A) (CommSemiring.toSemiring.{u4} S _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{max u2 u3} (Unitization.{u2, u3} R A) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{max u2 u3} (Unitization.{u2, u3} R A) (Semiring.toNonAssocSemiring.{max u2 u3} (Unitization.{u2, u3} R A) (Unitization.semiring.{u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5)))) (Algebra.toModule.{u4, max u2 u3} S (Unitization.{u2, u3} R A) _inst_1 (Unitization.semiring.{u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5) (Unitization.algebra.{u4, u2, u3} S R A _inst_1 _inst_2 _inst_3 _inst_4 _inst_6 _inst_5 _inst_9 _inst_10 _inst_11))) (Module.toDistribMulAction.{u4, u1} S B (CommSemiring.toSemiring.{u4} S _inst_1) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} B (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} B (Semiring.toNonAssocSemiring.{u1} B _inst_7))) (Algebra.toModule.{u4, u1} S B _inst_1 _inst_7 _inst_8)) (AlgHom.instNonUnitalAlgHomClassToMonoidToMonoidWithZeroToSemiringToNonUnitalNonAssocSemiringToNonAssocSemiringToNonUnitalNonAssocSemiringToNonAssocSemiringToDistribMulActionToAddCommMonoidToModuleToDistribMulActionToAddCommMonoidToModule.{u4, max u2 u3, u1, max (max u2 u3) u1} S (Unitization.{u2, u3} R A) B _inst_1 (Unitization.semiring.{u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5) _inst_7 (Unitization.algebra.{u4, u2, u3} S R A _inst_1 _inst_2 _inst_3 _inst_4 _inst_6 _inst_5 _inst_9 _inst_10 _inst_11) _inst_8 (AlgHom.{u4, max u3 u2, u1} S (Unitization.{u2, u3} R A) B _inst_1 (Unitization.semiring.{u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5) _inst_7 (Unitization.algebra.{u4, u2, u3} S R A _inst_1 _inst_2 _inst_3 _inst_4 _inst_6 _inst_5 _inst_9 _inst_10 _inst_11) _inst_8) (AlgHom.algHomClass.{u4, max u2 u3, u1} S (Unitization.{u2, u3} R A) B _inst_1 (Unitization.semiring.{u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5) _inst_7 (Unitization.algebra.{u4, u2, u3} S R A _inst_1 _inst_2 _inst_3 _inst_4 _inst_6 _inst_5 _inst_9 _inst_10 _inst_11) _inst_8))))) ψ (FunLike.coe.{max (succ u2) (succ u3), succ u2, max (succ u2) (succ u3)} (RingHom.{u2, max u3 u2} R (Unitization.{u2, u3} R A) (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_2)) (Semiring.toNonAssocSemiring.{max u3 u2} (Unitization.{u2, u3} R A) (Unitization.semiring.{u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5))) R (fun (_x : R) => (fun (x._@.Mathlib.Algebra.Hom.Group._hyg.2391 : R) => Unitization.{u2, u3} R A) _x) (MulHomClass.toFunLike.{max u2 u3, u2, max u2 u3} (RingHom.{u2, max u3 u2} R (Unitization.{u2, u3} R A) (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_2)) (Semiring.toNonAssocSemiring.{max u3 u2} (Unitization.{u2, u3} R A) (Unitization.semiring.{u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5))) R (Unitization.{u2, u3} R A) (NonUnitalNonAssocSemiring.toMul.{u2} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_2)))) (NonUnitalNonAssocSemiring.toMul.{max u2 u3} (Unitization.{u2, u3} R A) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{max u2 u3} (Unitization.{u2, u3} R A) (Semiring.toNonAssocSemiring.{max u3 u2} (Unitization.{u2, u3} R A) (Unitization.semiring.{u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5)))) (NonUnitalRingHomClass.toMulHomClass.{max u2 u3, u2, max u2 u3} (RingHom.{u2, max u3 u2} R (Unitization.{u2, u3} R A) (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_2)) (Semiring.toNonAssocSemiring.{max u3 u2} (Unitization.{u2, u3} R A) (Unitization.semiring.{u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5))) R (Unitization.{u2, u3} R A) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u2} R (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_2))) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{max u2 u3} (Unitization.{u2, u3} R A) (Semiring.toNonAssocSemiring.{max u3 u2} (Unitization.{u2, u3} R A) (Unitization.semiring.{u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5))) (RingHomClass.toNonUnitalRingHomClass.{max u2 u3, u2, max u2 u3} (RingHom.{u2, max u3 u2} R (Unitization.{u2, u3} R A) (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_2)) (Semiring.toNonAssocSemiring.{max u3 u2} (Unitization.{u2, u3} R A) (Unitization.semiring.{u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5))) R (Unitization.{u2, u3} R A) (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_2)) (Semiring.toNonAssocSemiring.{max u3 u2} (Unitization.{u2, u3} R A) (Unitization.semiring.{u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5)) (RingHom.instRingHomClassRingHom.{u2, max u2 u3} R (Unitization.{u2, u3} R A) (Semiring.toNonAssocSemiring.{u2} R (CommSemiring.toSemiring.{u2} R _inst_2)) (Semiring.toNonAssocSemiring.{max u3 u2} (Unitization.{u2, u3} R A) (Unitization.semiring.{u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5)))))) (algebraMap.{u2, max u3 u2} R (Unitization.{u2, u3} R A) _inst_2 (Unitization.semiring.{u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5) (Unitization.algebra.{u2, u2, u3} R R A _inst_2 _inst_2 _inst_3 _inst_4 _inst_6 _inst_5 (Algebra.id.{u2} R _inst_2) (Module.toDistribMulAction.{u2, u3} R A (CommSemiring.toSemiring.{u2} R _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u3} A _inst_3)) _inst_4) (IsScalarTower.left.{u2, u3} R A (MonoidWithZero.toMonoid.{u2} R (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R _inst_2))) (MulActionWithZero.toMulAction.{u2, u3} R A (Semiring.toMonoidWithZero.{u2} R (CommSemiring.toSemiring.{u2} R _inst_2)) (SemigroupWithZero.toZero.{u3} A (NonUnitalSemiring.toSemigroupWithZero.{u3} A _inst_3)) (Module.toMulActionWithZero.{u2, u3} R A (CommSemiring.toSemiring.{u2} R _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u3} A _inst_3)) _inst_4))))) r))) -> (Eq.{max (max (succ u2) (succ u3)) (succ u1)} (AlgHom.{u4, max u3 u2, u1} S (Unitization.{u2, u3} R A) B _inst_1 (Unitization.semiring.{u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5) _inst_7 (Unitization.algebra.{u4, u2, u3} S R A _inst_1 _inst_2 _inst_3 _inst_4 _inst_6 _inst_5 _inst_9 _inst_10 _inst_11) _inst_8) φ ψ)
+Case conversion may be inaccurate. Consider using '#align unitization.alg_hom_ext Unitization.algHom_extₓ'. -/
 theorem algHom_ext {φ ψ : Unitization R A →ₐ[S] B} (h : ∀ a : A, φ a = ψ a)
     (h' : ∀ r, φ (algebraMap R (Unitization R A) r) = ψ (algebraMap R (Unitization R A) r)) :
     φ = ψ := by
@@ -643,16 +931,28 @@ theorem algHom_ext {φ ψ : Unitization R A →ₐ[S] B} (h : ∀ a : A, φ a =
   simp only [map_add, ← algebra_map_eq_inl, h, h']
 #align unitization.alg_hom_ext Unitization.algHom_ext
 
+/- warning: unitization.alg_hom_ext' -> Unitization.algHom_ext' is a dubious translation:
+lean 3 declaration is
+  forall {R : Type.{u1}} {A : Type.{u2}} [_inst_2 : CommSemiring.{u1} R] [_inst_3 : NonUnitalSemiring.{u2} A] [_inst_4 : Module.{u1, u2} R A (CommSemiring.toSemiring.{u1} R _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u2} A _inst_3))] [_inst_5 : SMulCommClass.{u1, u2, u2} R A A (SMulZeroClass.toHasSmul.{u1, u2} R A (AddZeroClass.toHasZero.{u2} A (AddMonoid.toAddZeroClass.{u2} A (AddCommMonoid.toAddMonoid.{u2} A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u2} A _inst_3))))) (SMulWithZero.toSmulZeroClass.{u1, u2} R A (MulZeroClass.toHasZero.{u1} R (MulZeroOneClass.toMulZeroClass.{u1} R (MonoidWithZero.toMulZeroOneClass.{u1} R (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R _inst_2))))) (AddZeroClass.toHasZero.{u2} A (AddMonoid.toAddZeroClass.{u2} A (AddCommMonoid.toAddMonoid.{u2} A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u2} A _inst_3))))) (MulActionWithZero.toSMulWithZero.{u1, u2} R A (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R _inst_2)) (AddZeroClass.toHasZero.{u2} A (AddMonoid.toAddZeroClass.{u2} A (AddCommMonoid.toAddMonoid.{u2} A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u2} A _inst_3))))) (Module.toMulActionWithZero.{u1, u2} R A (CommSemiring.toSemiring.{u1} R _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u2} A _inst_3)) _inst_4)))) (Mul.toSMul.{u2} A (Distrib.toHasMul.{u2} A (NonUnitalNonAssocSemiring.toDistrib.{u2} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u2} A _inst_3))))] [_inst_6 : IsScalarTower.{u1, u2, u2} R A A (SMulZeroClass.toHasSmul.{u1, u2} R A (AddZeroClass.toHasZero.{u2} A (AddMonoid.toAddZeroClass.{u2} A (AddCommMonoid.toAddMonoid.{u2} A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u2} A _inst_3))))) (SMulWithZero.toSmulZeroClass.{u1, u2} R A (MulZeroClass.toHasZero.{u1} R (MulZeroOneClass.toMulZeroClass.{u1} R (MonoidWithZero.toMulZeroOneClass.{u1} R (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R _inst_2))))) (AddZeroClass.toHasZero.{u2} A (AddMonoid.toAddZeroClass.{u2} A (AddCommMonoid.toAddMonoid.{u2} A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u2} A _inst_3))))) (MulActionWithZero.toSMulWithZero.{u1, u2} R A (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R _inst_2)) (AddZeroClass.toHasZero.{u2} A (AddMonoid.toAddZeroClass.{u2} A (AddCommMonoid.toAddMonoid.{u2} A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u2} A _inst_3))))) (Module.toMulActionWithZero.{u1, u2} R A (CommSemiring.toSemiring.{u1} R _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u2} A _inst_3)) _inst_4)))) (Mul.toSMul.{u2} A (Distrib.toHasMul.{u2} A (NonUnitalNonAssocSemiring.toDistrib.{u2} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u2} A _inst_3)))) (SMulZeroClass.toHasSmul.{u1, u2} R A (AddZeroClass.toHasZero.{u2} A (AddMonoid.toAddZeroClass.{u2} A (AddCommMonoid.toAddMonoid.{u2} A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u2} A _inst_3))))) (SMulWithZero.toSmulZeroClass.{u1, u2} R A (MulZeroClass.toHasZero.{u1} R (MulZeroOneClass.toMulZeroClass.{u1} R (MonoidWithZero.toMulZeroOneClass.{u1} R (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R _inst_2))))) (AddZeroClass.toHasZero.{u2} A (AddMonoid.toAddZeroClass.{u2} A (AddCommMonoid.toAddMonoid.{u2} A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u2} A _inst_3))))) (MulActionWithZero.toSMulWithZero.{u1, u2} R A (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R _inst_2)) (AddZeroClass.toHasZero.{u2} A (AddMonoid.toAddZeroClass.{u2} A (AddCommMonoid.toAddMonoid.{u2} A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u2} A _inst_3))))) (Module.toMulActionWithZero.{u1, u2} R A (CommSemiring.toSemiring.{u1} R _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u2} A _inst_3)) _inst_4))))] {C : Type.{u3}} [_inst_12 : Ring.{u3} C] [_inst_13 : Algebra.{u1, u3} R C _inst_2 (Ring.toSemiring.{u3} C _inst_12)] {φ : AlgHom.{u1, max u1 u2, u3} R (Unitization.{u1, u2} R A) C _inst_2 (Unitization.semiring.{u1, u2} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5) (Ring.toSemiring.{u3} C _inst_12) (Unitization.algebra.{u1, u1, u2} R R A _inst_2 _inst_2 _inst_3 _inst_4 _inst_6 _inst_5 (Algebra.id.{u1} R _inst_2) (Module.toDistribMulAction.{u1, u2} R A (CommSemiring.toSemiring.{u1} R _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u2} A _inst_3)) _inst_4) (IsScalarTower.left.{u1, u2} R A (MonoidWithZero.toMonoid.{u1} R (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R _inst_2))) (MulActionWithZero.toMulAction.{u1, u2} R A (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R _inst_2)) (AddZeroClass.toHasZero.{u2} A (AddMonoid.toAddZeroClass.{u2} A (AddCommMonoid.toAddMonoid.{u2} A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u2} A _inst_3))))) (Module.toMulActionWithZero.{u1, u2} R A (CommSemiring.toSemiring.{u1} R _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u2} A _inst_3)) _inst_4)))) _inst_13} {ψ : AlgHom.{u1, max u1 u2, u3} R (Unitization.{u1, u2} R A) C _inst_2 (Unitization.semiring.{u1, u2} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5) (Ring.toSemiring.{u3} C _inst_12) (Unitization.algebra.{u1, u1, u2} R R A _inst_2 _inst_2 _inst_3 _inst_4 _inst_6 _inst_5 (Algebra.id.{u1} R _inst_2) (Module.toDistribMulAction.{u1, u2} R A (CommSemiring.toSemiring.{u1} R _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u2} A _inst_3)) _inst_4) (IsScalarTower.left.{u1, u2} R A (MonoidWithZero.toMonoid.{u1} R (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R _inst_2))) (MulActionWithZero.toMulAction.{u1, u2} R A (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R _inst_2)) (AddZeroClass.toHasZero.{u2} A (AddMonoid.toAddZeroClass.{u2} A (AddCommMonoid.toAddMonoid.{u2} A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u2} A _inst_3))))) (Module.toMulActionWithZero.{u1, u2} R A (CommSemiring.toSemiring.{u1} R _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u2} A _inst_3)) _inst_4)))) _inst_13}, (Eq.{max (succ u2) (succ u3)} (NonUnitalAlgHom.{u1, u2, u3} R A C (MonoidWithZero.toMonoid.{u1} R (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R _inst_2))) (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u2} A _inst_3) (Module.toDistribMulAction.{u1, u2} R A (CommSemiring.toSemiring.{u1} R _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u2} A _inst_3)) _inst_4) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} C (Semiring.toNonAssocSemiring.{u3} C (Ring.toSemiring.{u3} C _inst_12))) (Module.toDistribMulAction.{u1, u3} R C (CommSemiring.toSemiring.{u1} R _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} C (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} C (Semiring.toNonAssocSemiring.{u3} C (Ring.toSemiring.{u3} C _inst_12)))) (Algebra.toModule.{u1, u3} R C _inst_2 (Ring.toSemiring.{u3} C _inst_12) _inst_13))) (NonUnitalAlgHom.comp.{u1, u2, max u1 u2, u3} R A (Unitization.{u1, u2} R A) C (MonoidWithZero.toMonoid.{u1} R (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R _inst_2))) (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u2} A _inst_3) (Module.toDistribMulAction.{u1, u2} R A (CommSemiring.toSemiring.{u1} R _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u2} A _inst_3)) _inst_4) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{max u1 u2} (Unitization.{u1, u2} R A) (Semiring.toNonAssocSemiring.{max u1 u2} (Unitization.{u1, u2} R A) (Unitization.semiring.{u1, u2} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5))) (Module.toDistribMulAction.{u1, max u1 u2} R (Unitization.{u1, u2} R A) (CommSemiring.toSemiring.{u1} R _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{max u1 u2} (Unitization.{u1, u2} R A) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{max u1 u2} (Unitization.{u1, u2} R A) (Semiring.toNonAssocSemiring.{max u1 u2} (Unitization.{u1, u2} R A) (Unitization.semiring.{u1, u2} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5)))) (Algebra.toModule.{u1, max u1 u2} R (Unitization.{u1, u2} R A) _inst_2 (Unitization.semiring.{u1, u2} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5) (Unitization.algebra.{u1, u1, u2} R R A _inst_2 _inst_2 _inst_3 _inst_4 _inst_6 _inst_5 (Algebra.id.{u1} R _inst_2) (Module.toDistribMulAction.{u1, u2} R A (CommSemiring.toSemiring.{u1} R _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u2} A _inst_3)) _inst_4) (IsScalarTower.left.{u1, u2} R A (MonoidWithZero.toMonoid.{u1} R (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R _inst_2))) (MulActionWithZero.toMulAction.{u1, u2} R A (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R _inst_2)) (AddZeroClass.toHasZero.{u2} A (AddMonoid.toAddZeroClass.{u2} A (AddCommMonoid.toAddMonoid.{u2} A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u2} A _inst_3))))) (Module.toMulActionWithZero.{u1, u2} R A (CommSemiring.toSemiring.{u1} R _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u2} A _inst_3)) _inst_4)))))) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} C (Semiring.toNonAssocSemiring.{u3} C (Ring.toSemiring.{u3} C _inst_12))) (Module.toDistribMulAction.{u1, u3} R C (CommSemiring.toSemiring.{u1} R _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} C (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} C (Semiring.toNonAssocSemiring.{u3} C (Ring.toSemiring.{u3} C _inst_12)))) (Algebra.toModule.{u1, u3} R C _inst_2 (Ring.toSemiring.{u3} C _inst_12) _inst_13)) (AlgHom.toNonUnitalAlgHom.{u1, max u1 u2, u3} R (Unitization.{u1, u2} R A) C _inst_2 (Unitization.semiring.{u1, u2} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5) (Ring.toSemiring.{u3} C _inst_12) (Unitization.algebra.{u1, u1, u2} R R A _inst_2 _inst_2 _inst_3 _inst_4 _inst_6 _inst_5 (Algebra.id.{u1} R _inst_2) (Module.toDistribMulAction.{u1, u2} R A (CommSemiring.toSemiring.{u1} R _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u2} A _inst_3)) _inst_4) (IsScalarTower.left.{u1, u2} R A (MonoidWithZero.toMonoid.{u1} R (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R _inst_2))) (MulActionWithZero.toMulAction.{u1, u2} R A (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R _inst_2)) (AddZeroClass.toHasZero.{u2} A (AddMonoid.toAddZeroClass.{u2} A (AddCommMonoid.toAddMonoid.{u2} A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u2} A _inst_3))))) (Module.toMulActionWithZero.{u1, u2} R A (CommSemiring.toSemiring.{u1} R _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u2} A _inst_3)) _inst_4)))) _inst_13 φ) (Unitization.inrNonUnitalAlgHom.{u1, u2} R A _inst_2 _inst_3 _inst_4)) (NonUnitalAlgHom.comp.{u1, u2, max u1 u2, u3} R A (Unitization.{u1, u2} R A) C (MonoidWithZero.toMonoid.{u1} R (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R _inst_2))) (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u2} A _inst_3) (Module.toDistribMulAction.{u1, u2} R A (CommSemiring.toSemiring.{u1} R _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u2} A _inst_3)) _inst_4) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{max u1 u2} (Unitization.{u1, u2} R A) (Semiring.toNonAssocSemiring.{max u1 u2} (Unitization.{u1, u2} R A) (Unitization.semiring.{u1, u2} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5))) (Module.toDistribMulAction.{u1, max u1 u2} R (Unitization.{u1, u2} R A) (CommSemiring.toSemiring.{u1} R _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{max u1 u2} (Unitization.{u1, u2} R A) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{max u1 u2} (Unitization.{u1, u2} R A) (Semiring.toNonAssocSemiring.{max u1 u2} (Unitization.{u1, u2} R A) (Unitization.semiring.{u1, u2} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5)))) (Algebra.toModule.{u1, max u1 u2} R (Unitization.{u1, u2} R A) _inst_2 (Unitization.semiring.{u1, u2} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5) (Unitization.algebra.{u1, u1, u2} R R A _inst_2 _inst_2 _inst_3 _inst_4 _inst_6 _inst_5 (Algebra.id.{u1} R _inst_2) (Module.toDistribMulAction.{u1, u2} R A (CommSemiring.toSemiring.{u1} R _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u2} A _inst_3)) _inst_4) (IsScalarTower.left.{u1, u2} R A (MonoidWithZero.toMonoid.{u1} R (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R _inst_2))) (MulActionWithZero.toMulAction.{u1, u2} R A (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R _inst_2)) (AddZeroClass.toHasZero.{u2} A (AddMonoid.toAddZeroClass.{u2} A (AddCommMonoid.toAddMonoid.{u2} A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u2} A _inst_3))))) (Module.toMulActionWithZero.{u1, u2} R A (CommSemiring.toSemiring.{u1} R _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u2} A _inst_3)) _inst_4)))))) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} C (Semiring.toNonAssocSemiring.{u3} C (Ring.toSemiring.{u3} C _inst_12))) (Module.toDistribMulAction.{u1, u3} R C (CommSemiring.toSemiring.{u1} R _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} C (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} C (Semiring.toNonAssocSemiring.{u3} C (Ring.toSemiring.{u3} C _inst_12)))) (Algebra.toModule.{u1, u3} R C _inst_2 (Ring.toSemiring.{u3} C _inst_12) _inst_13)) (AlgHom.toNonUnitalAlgHom.{u1, max u1 u2, u3} R (Unitization.{u1, u2} R A) C _inst_2 (Unitization.semiring.{u1, u2} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5) (Ring.toSemiring.{u3} C _inst_12) (Unitization.algebra.{u1, u1, u2} R R A _inst_2 _inst_2 _inst_3 _inst_4 _inst_6 _inst_5 (Algebra.id.{u1} R _inst_2) (Module.toDistribMulAction.{u1, u2} R A (CommSemiring.toSemiring.{u1} R _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u2} A _inst_3)) _inst_4) (IsScalarTower.left.{u1, u2} R A (MonoidWithZero.toMonoid.{u1} R (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R _inst_2))) (MulActionWithZero.toMulAction.{u1, u2} R A (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R _inst_2)) (AddZeroClass.toHasZero.{u2} A (AddMonoid.toAddZeroClass.{u2} A (AddCommMonoid.toAddMonoid.{u2} A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u2} A _inst_3))))) (Module.toMulActionWithZero.{u1, u2} R A (CommSemiring.toSemiring.{u1} R _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u2} A _inst_3)) _inst_4)))) _inst_13 ψ) (Unitization.inrNonUnitalAlgHom.{u1, u2} R A _inst_2 _inst_3 _inst_4))) -> (Eq.{max (succ (max u1 u2)) (succ u3)} (AlgHom.{u1, max u1 u2, u3} R (Unitization.{u1, u2} R A) C _inst_2 (Unitization.semiring.{u1, u2} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5) (Ring.toSemiring.{u3} C _inst_12) (Unitization.algebra.{u1, u1, u2} R R A _inst_2 _inst_2 _inst_3 _inst_4 _inst_6 _inst_5 (Algebra.id.{u1} R _inst_2) (Module.toDistribMulAction.{u1, u2} R A (CommSemiring.toSemiring.{u1} R _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u2} A _inst_3)) _inst_4) (IsScalarTower.left.{u1, u2} R A (MonoidWithZero.toMonoid.{u1} R (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R _inst_2))) (MulActionWithZero.toMulAction.{u1, u2} R A (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R _inst_2)) (AddZeroClass.toHasZero.{u2} A (AddMonoid.toAddZeroClass.{u2} A (AddCommMonoid.toAddMonoid.{u2} A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u2} A _inst_3))))) (Module.toMulActionWithZero.{u1, u2} R A (CommSemiring.toSemiring.{u1} R _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u2} A _inst_3)) _inst_4)))) _inst_13) φ ψ)
+but is expected to have type
+  forall {R : Type.{u3}} {A : Type.{u2}} [_inst_2 : CommSemiring.{u3} R] [_inst_3 : NonUnitalSemiring.{u2} A] [_inst_4 : Module.{u3, u2} R A (CommSemiring.toSemiring.{u3} R _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u2} A _inst_3))] [_inst_5 : SMulCommClass.{u3, u2, u2} R A A (SMulZeroClass.toSMul.{u3, u2} R A (SemigroupWithZero.toZero.{u2} A (NonUnitalSemiring.toSemigroupWithZero.{u2} A _inst_3)) (SMulWithZero.toSMulZeroClass.{u3, u2} R A (CommMonoidWithZero.toZero.{u3} R (CommSemiring.toCommMonoidWithZero.{u3} R _inst_2)) (SemigroupWithZero.toZero.{u2} A (NonUnitalSemiring.toSemigroupWithZero.{u2} A _inst_3)) (MulActionWithZero.toSMulWithZero.{u3, u2} R A (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R _inst_2)) (SemigroupWithZero.toZero.{u2} A (NonUnitalSemiring.toSemigroupWithZero.{u2} A _inst_3)) (Module.toMulActionWithZero.{u3, u2} R A (CommSemiring.toSemiring.{u3} R _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u2} A _inst_3)) _inst_4)))) (SMulZeroClass.toSMul.{u2, u2} A A (SemigroupWithZero.toZero.{u2} A (NonUnitalSemiring.toSemigroupWithZero.{u2} A _inst_3)) (SMulWithZero.toSMulZeroClass.{u2, u2} A A (SemigroupWithZero.toZero.{u2} A (NonUnitalSemiring.toSemigroupWithZero.{u2} A _inst_3)) (SemigroupWithZero.toZero.{u2} A (NonUnitalSemiring.toSemigroupWithZero.{u2} A _inst_3)) (MulZeroClass.toSMulWithZero.{u2} A (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u2} A _inst_3)))))] [_inst_6 : IsScalarTower.{u3, u2, u2} R A A (SMulZeroClass.toSMul.{u3, u2} R A (SemigroupWithZero.toZero.{u2} A (NonUnitalSemiring.toSemigroupWithZero.{u2} A _inst_3)) (SMulWithZero.toSMulZeroClass.{u3, u2} R A (CommMonoidWithZero.toZero.{u3} R (CommSemiring.toCommMonoidWithZero.{u3} R _inst_2)) (SemigroupWithZero.toZero.{u2} A (NonUnitalSemiring.toSemigroupWithZero.{u2} A _inst_3)) (MulActionWithZero.toSMulWithZero.{u3, u2} R A (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R _inst_2)) (SemigroupWithZero.toZero.{u2} A (NonUnitalSemiring.toSemigroupWithZero.{u2} A _inst_3)) (Module.toMulActionWithZero.{u3, u2} R A (CommSemiring.toSemiring.{u3} R _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u2} A _inst_3)) _inst_4)))) (SMulZeroClass.toSMul.{u2, u2} A A (SemigroupWithZero.toZero.{u2} A (NonUnitalSemiring.toSemigroupWithZero.{u2} A _inst_3)) (SMulWithZero.toSMulZeroClass.{u2, u2} A A (SemigroupWithZero.toZero.{u2} A (NonUnitalSemiring.toSemigroupWithZero.{u2} A _inst_3)) (SemigroupWithZero.toZero.{u2} A (NonUnitalSemiring.toSemigroupWithZero.{u2} A _inst_3)) (MulZeroClass.toSMulWithZero.{u2} A (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u2} A _inst_3))))) (SMulZeroClass.toSMul.{u3, u2} R A (SemigroupWithZero.toZero.{u2} A (NonUnitalSemiring.toSemigroupWithZero.{u2} A _inst_3)) (SMulWithZero.toSMulZeroClass.{u3, u2} R A (CommMonoidWithZero.toZero.{u3} R (CommSemiring.toCommMonoidWithZero.{u3} R _inst_2)) (SemigroupWithZero.toZero.{u2} A (NonUnitalSemiring.toSemigroupWithZero.{u2} A _inst_3)) (MulActionWithZero.toSMulWithZero.{u3, u2} R A (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R _inst_2)) (SemigroupWithZero.toZero.{u2} A (NonUnitalSemiring.toSemigroupWithZero.{u2} A _inst_3)) (Module.toMulActionWithZero.{u3, u2} R A (CommSemiring.toSemiring.{u3} R _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u2} A _inst_3)) _inst_4))))] {C : Type.{u1}} [_inst_12 : Semiring.{u1} C] [_inst_13 : Algebra.{u3, u1} R C _inst_2 _inst_12] {φ : AlgHom.{u3, max u2 u3, u1} R (Unitization.{u3, u2} R A) C _inst_2 (Unitization.semiring.{u3, u2} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5) _inst_12 (Unitization.algebra.{u3, u3, u2} R R A _inst_2 _inst_2 _inst_3 _inst_4 _inst_6 _inst_5 (Algebra.id.{u3} R _inst_2) (Module.toDistribMulAction.{u3, u2} R A (CommSemiring.toSemiring.{u3} R _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u2} A _inst_3)) _inst_4) (IsScalarTower.left.{u3, u2} R A (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R _inst_2))) (MulActionWithZero.toMulAction.{u3, u2} R A (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R _inst_2)) (SemigroupWithZero.toZero.{u2} A (NonUnitalSemiring.toSemigroupWithZero.{u2} A _inst_3)) (Module.toMulActionWithZero.{u3, u2} R A (CommSemiring.toSemiring.{u3} R _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u2} A _inst_3)) _inst_4)))) _inst_13} {ψ : AlgHom.{u3, max u2 u3, u1} R (Unitization.{u3, u2} R A) C _inst_2 (Unitization.semiring.{u3, u2} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5) _inst_12 (Unitization.algebra.{u3, u3, u2} R R A _inst_2 _inst_2 _inst_3 _inst_4 _inst_6 _inst_5 (Algebra.id.{u3} R _inst_2) (Module.toDistribMulAction.{u3, u2} R A (CommSemiring.toSemiring.{u3} R _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u2} A _inst_3)) _inst_4) (IsScalarTower.left.{u3, u2} R A (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R _inst_2))) (MulActionWithZero.toMulAction.{u3, u2} R A (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R _inst_2)) (SemigroupWithZero.toZero.{u2} A (NonUnitalSemiring.toSemigroupWithZero.{u2} A _inst_3)) (Module.toMulActionWithZero.{u3, u2} R A (CommSemiring.toSemiring.{u3} R _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u2} A _inst_3)) _inst_4)))) _inst_13}, (Eq.{max (succ u2) (succ u1)} (NonUnitalAlgHom.{u3, u2, u1} R A C (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R _inst_2))) (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u2} A _inst_3) (Module.toDistribMulAction.{u3, u2} R A (CommSemiring.toSemiring.{u3} R _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u2} A _inst_3)) _inst_4) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} C (Semiring.toNonAssocSemiring.{u1} C _inst_12)) (Module.toDistribMulAction.{u3, u1} R C (CommSemiring.toSemiring.{u3} R _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} C (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} C (Semiring.toNonAssocSemiring.{u1} C _inst_12))) (Algebra.toModule.{u3, u1} R C _inst_2 _inst_12 _inst_13))) (NonUnitalAlgHom.comp.{u3, u2, max u3 u2, u1} R A (Unitization.{u3, u2} R A) C (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R _inst_2))) (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u2} A _inst_3) (Module.toDistribMulAction.{u3, u2} R A (CommSemiring.toSemiring.{u3} R _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u2} A _inst_3)) _inst_4) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{max u3 u2} (Unitization.{u3, u2} R A) (Semiring.toNonAssocSemiring.{max u3 u2} (Unitization.{u3, u2} R A) (Unitization.semiring.{u3, u2} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5))) (Module.toDistribMulAction.{u3, max u3 u2} R (Unitization.{u3, u2} R A) (CommSemiring.toSemiring.{u3} R _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{max u3 u2} (Unitization.{u3, u2} R A) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{max u3 u2} (Unitization.{u3, u2} R A) (Semiring.toNonAssocSemiring.{max u3 u2} (Unitization.{u3, u2} R A) (Unitization.semiring.{u3, u2} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5)))) (Algebra.toModule.{u3, max u3 u2} R (Unitization.{u3, u2} R A) _inst_2 (Unitization.semiring.{u3, u2} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5) (Unitization.algebra.{u3, u3, u2} R R A _inst_2 _inst_2 _inst_3 _inst_4 _inst_6 _inst_5 (Algebra.id.{u3} R _inst_2) (Module.toDistribMulAction.{u3, u2} R A (CommSemiring.toSemiring.{u3} R _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u2} A _inst_3)) _inst_4) (IsScalarTower.left.{u3, u2} R A (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R _inst_2))) (MulActionWithZero.toMulAction.{u3, u2} R A (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R _inst_2)) (SemigroupWithZero.toZero.{u2} A (NonUnitalSemiring.toSemigroupWithZero.{u2} A _inst_3)) (Module.toMulActionWithZero.{u3, u2} R A (CommSemiring.toSemiring.{u3} R _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u2} A _inst_3)) _inst_4)))))) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} C (Semiring.toNonAssocSemiring.{u1} C _inst_12)) (Module.toDistribMulAction.{u3, u1} R C (CommSemiring.toSemiring.{u3} R _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} C (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} C (Semiring.toNonAssocSemiring.{u1} C _inst_12))) (Algebra.toModule.{u3, u1} R C _inst_2 _inst_12 _inst_13)) (AlgHom.toNonUnitalAlgHom.{u3, max u3 u2, u1} R (Unitization.{u3, u2} R A) C _inst_2 (Unitization.semiring.{u3, u2} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5) _inst_12 (Unitization.algebra.{u3, u3, u2} R R A _inst_2 _inst_2 _inst_3 _inst_4 _inst_6 _inst_5 (Algebra.id.{u3} R _inst_2) (Module.toDistribMulAction.{u3, u2} R A (CommSemiring.toSemiring.{u3} R _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u2} A _inst_3)) _inst_4) (IsScalarTower.left.{u3, u2} R A (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R _inst_2))) (MulActionWithZero.toMulAction.{u3, u2} R A (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R _inst_2)) (SemigroupWithZero.toZero.{u2} A (NonUnitalSemiring.toSemigroupWithZero.{u2} A _inst_3)) (Module.toMulActionWithZero.{u3, u2} R A (CommSemiring.toSemiring.{u3} R _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u2} A _inst_3)) _inst_4)))) _inst_13 φ) (Unitization.inrNonUnitalAlgHom.{u3, u2} R A _inst_2 _inst_3 _inst_4)) (NonUnitalAlgHom.comp.{u3, u2, max u3 u2, u1} R A (Unitization.{u3, u2} R A) C (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R _inst_2))) (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u2} A _inst_3) (Module.toDistribMulAction.{u3, u2} R A (CommSemiring.toSemiring.{u3} R _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u2} A _inst_3)) _inst_4) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{max u3 u2} (Unitization.{u3, u2} R A) (Semiring.toNonAssocSemiring.{max u3 u2} (Unitization.{u3, u2} R A) (Unitization.semiring.{u3, u2} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5))) (Module.toDistribMulAction.{u3, max u3 u2} R (Unitization.{u3, u2} R A) (CommSemiring.toSemiring.{u3} R _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{max u3 u2} (Unitization.{u3, u2} R A) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{max u3 u2} (Unitization.{u3, u2} R A) (Semiring.toNonAssocSemiring.{max u3 u2} (Unitization.{u3, u2} R A) (Unitization.semiring.{u3, u2} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5)))) (Algebra.toModule.{u3, max u3 u2} R (Unitization.{u3, u2} R A) _inst_2 (Unitization.semiring.{u3, u2} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5) (Unitization.algebra.{u3, u3, u2} R R A _inst_2 _inst_2 _inst_3 _inst_4 _inst_6 _inst_5 (Algebra.id.{u3} R _inst_2) (Module.toDistribMulAction.{u3, u2} R A (CommSemiring.toSemiring.{u3} R _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u2} A _inst_3)) _inst_4) (IsScalarTower.left.{u3, u2} R A (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R _inst_2))) (MulActionWithZero.toMulAction.{u3, u2} R A (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R _inst_2)) (SemigroupWithZero.toZero.{u2} A (NonUnitalSemiring.toSemigroupWithZero.{u2} A _inst_3)) (Module.toMulActionWithZero.{u3, u2} R A (CommSemiring.toSemiring.{u3} R _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u2} A _inst_3)) _inst_4)))))) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} C (Semiring.toNonAssocSemiring.{u1} C _inst_12)) (Module.toDistribMulAction.{u3, u1} R C (CommSemiring.toSemiring.{u3} R _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u1} C (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} C (Semiring.toNonAssocSemiring.{u1} C _inst_12))) (Algebra.toModule.{u3, u1} R C _inst_2 _inst_12 _inst_13)) (AlgHom.toNonUnitalAlgHom.{u3, max u3 u2, u1} R (Unitization.{u3, u2} R A) C _inst_2 (Unitization.semiring.{u3, u2} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5) _inst_12 (Unitization.algebra.{u3, u3, u2} R R A _inst_2 _inst_2 _inst_3 _inst_4 _inst_6 _inst_5 (Algebra.id.{u3} R _inst_2) (Module.toDistribMulAction.{u3, u2} R A (CommSemiring.toSemiring.{u3} R _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u2} A _inst_3)) _inst_4) (IsScalarTower.left.{u3, u2} R A (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R _inst_2))) (MulActionWithZero.toMulAction.{u3, u2} R A (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R _inst_2)) (SemigroupWithZero.toZero.{u2} A (NonUnitalSemiring.toSemigroupWithZero.{u2} A _inst_3)) (Module.toMulActionWithZero.{u3, u2} R A (CommSemiring.toSemiring.{u3} R _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u2} A _inst_3)) _inst_4)))) _inst_13 ψ) (Unitization.inrNonUnitalAlgHom.{u3, u2} R A _inst_2 _inst_3 _inst_4))) -> (Eq.{max (max (succ u3) (succ u2)) (succ u1)} (AlgHom.{u3, max u2 u3, u1} R (Unitization.{u3, u2} R A) C _inst_2 (Unitization.semiring.{u3, u2} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5) _inst_12 (Unitization.algebra.{u3, u3, u2} R R A _inst_2 _inst_2 _inst_3 _inst_4 _inst_6 _inst_5 (Algebra.id.{u3} R _inst_2) (Module.toDistribMulAction.{u3, u2} R A (CommSemiring.toSemiring.{u3} R _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u2} A _inst_3)) _inst_4) (IsScalarTower.left.{u3, u2} R A (MonoidWithZero.toMonoid.{u3} R (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R _inst_2))) (MulActionWithZero.toMulAction.{u3, u2} R A (Semiring.toMonoidWithZero.{u3} R (CommSemiring.toSemiring.{u3} R _inst_2)) (SemigroupWithZero.toZero.{u2} A (NonUnitalSemiring.toSemigroupWithZero.{u2} A _inst_3)) (Module.toMulActionWithZero.{u3, u2} R A (CommSemiring.toSemiring.{u3} R _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u2} A _inst_3)) _inst_4)))) _inst_13) φ ψ)
+Case conversion may be inaccurate. Consider using '#align unitization.alg_hom_ext' Unitization.algHom_ext'ₓ'. -/
 /-- See note [partially-applied ext lemmas] -/
 @[ext]
 theorem algHom_ext' {φ ψ : Unitization R A →ₐ[R] C}
     (h :
-      φ.toNonUnitalAlgHom.comp (coeNonUnitalAlgHom R A) =
-        ψ.toNonUnitalAlgHom.comp (coeNonUnitalAlgHom R A)) :
+      φ.toNonUnitalAlgHom.comp (inrNonUnitalAlgHom R A) =
+        ψ.toNonUnitalAlgHom.comp (inrNonUnitalAlgHom R A)) :
     φ = ψ :=
   algHom_ext (NonUnitalAlgHom.congr_fun h) (by simp [AlgHom.commutes])
 #align unitization.alg_hom_ext' Unitization.algHom_ext'
 
+/- warning: unitization.lift -> Unitization.lift is a dubious translation:
+lean 3 declaration is
+  forall {R : Type.{u1}} {A : Type.{u2}} [_inst_2 : CommSemiring.{u1} R] [_inst_3 : NonUnitalSemiring.{u2} A] [_inst_4 : Module.{u1, u2} R A (CommSemiring.toSemiring.{u1} R _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u2} A _inst_3))] [_inst_5 : SMulCommClass.{u1, u2, u2} R A A (SMulZeroClass.toHasSmul.{u1, u2} R A (AddZeroClass.toHasZero.{u2} A (AddMonoid.toAddZeroClass.{u2} A (AddCommMonoid.toAddMonoid.{u2} A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u2} A _inst_3))))) (SMulWithZero.toSmulZeroClass.{u1, u2} R A (MulZeroClass.toHasZero.{u1} R (MulZeroOneClass.toMulZeroClass.{u1} R (MonoidWithZero.toMulZeroOneClass.{u1} R (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R _inst_2))))) (AddZeroClass.toHasZero.{u2} A (AddMonoid.toAddZeroClass.{u2} A (AddCommMonoid.toAddMonoid.{u2} A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u2} A _inst_3))))) (MulActionWithZero.toSMulWithZero.{u1, u2} R A (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R _inst_2)) (AddZeroClass.toHasZero.{u2} A (AddMonoid.toAddZeroClass.{u2} A (AddCommMonoid.toAddMonoid.{u2} A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u2} A _inst_3))))) (Module.toMulActionWithZero.{u1, u2} R A (CommSemiring.toSemiring.{u1} R _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u2} A _inst_3)) _inst_4)))) (Mul.toSMul.{u2} A (Distrib.toHasMul.{u2} A (NonUnitalNonAssocSemiring.toDistrib.{u2} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u2} A _inst_3))))] [_inst_6 : IsScalarTower.{u1, u2, u2} R A A (SMulZeroClass.toHasSmul.{u1, u2} R A (AddZeroClass.toHasZero.{u2} A (AddMonoid.toAddZeroClass.{u2} A (AddCommMonoid.toAddMonoid.{u2} A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u2} A _inst_3))))) (SMulWithZero.toSmulZeroClass.{u1, u2} R A (MulZeroClass.toHasZero.{u1} R (MulZeroOneClass.toMulZeroClass.{u1} R (MonoidWithZero.toMulZeroOneClass.{u1} R (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R _inst_2))))) (AddZeroClass.toHasZero.{u2} A (AddMonoid.toAddZeroClass.{u2} A (AddCommMonoid.toAddMonoid.{u2} A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u2} A _inst_3))))) (MulActionWithZero.toSMulWithZero.{u1, u2} R A (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R _inst_2)) (AddZeroClass.toHasZero.{u2} A (AddMonoid.toAddZeroClass.{u2} A (AddCommMonoid.toAddMonoid.{u2} A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u2} A _inst_3))))) (Module.toMulActionWithZero.{u1, u2} R A (CommSemiring.toSemiring.{u1} R _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u2} A _inst_3)) _inst_4)))) (Mul.toSMul.{u2} A (Distrib.toHasMul.{u2} A (NonUnitalNonAssocSemiring.toDistrib.{u2} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u2} A _inst_3)))) (SMulZeroClass.toHasSmul.{u1, u2} R A (AddZeroClass.toHasZero.{u2} A (AddMonoid.toAddZeroClass.{u2} A (AddCommMonoid.toAddMonoid.{u2} A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u2} A _inst_3))))) (SMulWithZero.toSmulZeroClass.{u1, u2} R A (MulZeroClass.toHasZero.{u1} R (MulZeroOneClass.toMulZeroClass.{u1} R (MonoidWithZero.toMulZeroOneClass.{u1} R (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R _inst_2))))) (AddZeroClass.toHasZero.{u2} A (AddMonoid.toAddZeroClass.{u2} A (AddCommMonoid.toAddMonoid.{u2} A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u2} A _inst_3))))) (MulActionWithZero.toSMulWithZero.{u1, u2} R A (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R _inst_2)) (AddZeroClass.toHasZero.{u2} A (AddMonoid.toAddZeroClass.{u2} A (AddCommMonoid.toAddMonoid.{u2} A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u2} A _inst_3))))) (Module.toMulActionWithZero.{u1, u2} R A (CommSemiring.toSemiring.{u1} R _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u2} A _inst_3)) _inst_4))))] {C : Type.{u3}} [_inst_12 : Ring.{u3} C] [_inst_13 : Algebra.{u1, u3} R C _inst_2 (Ring.toSemiring.{u3} C _inst_12)], Equiv.{max (succ u2) (succ u3), max (succ (max u1 u2)) (succ u3)} (NonUnitalAlgHom.{u1, u2, u3} R A C (MonoidWithZero.toMonoid.{u1} R (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R _inst_2))) (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u2} A _inst_3) (Module.toDistribMulAction.{u1, u2} R A (CommSemiring.toSemiring.{u1} R _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u2} A _inst_3)) _inst_4) (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u3} C (NonAssocRing.toNonUnitalNonAssocRing.{u3} C (Ring.toNonAssocRing.{u3} C _inst_12))) (Module.toDistribMulAction.{u1, u3} R C (CommSemiring.toSemiring.{u1} R _inst_2) (AddCommGroup.toAddCommMonoid.{u3} C (NonUnitalNonAssocRing.toAddCommGroup.{u3} C (NonAssocRing.toNonUnitalNonAssocRing.{u3} C (Ring.toNonAssocRing.{u3} C _inst_12)))) (Algebra.toModule.{u1, u3} R C _inst_2 (Ring.toSemiring.{u3} C _inst_12) _inst_13))) (AlgHom.{u1, max u1 u2, u3} R (Unitization.{u1, u2} R A) C _inst_2 (Unitization.semiring.{u1, u2} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5) (Ring.toSemiring.{u3} C _inst_12) (Unitization.algebra.{u1, u1, u2} R R A _inst_2 _inst_2 _inst_3 _inst_4 _inst_6 _inst_5 (Algebra.id.{u1} R _inst_2) (Module.toDistribMulAction.{u1, u2} R A (CommSemiring.toSemiring.{u1} R _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u2} A _inst_3)) _inst_4) (Unitization.lift._proof_1.{u1, u2} R A _inst_2 _inst_3 _inst_4)) _inst_13)
+but is expected to have type
+  forall {R : Type.{u1}} {A : Type.{u2}} [_inst_2 : CommSemiring.{u1} R] [_inst_3 : NonUnitalSemiring.{u2} A] [_inst_4 : Module.{u1, u2} R A (CommSemiring.toSemiring.{u1} R _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u2} A _inst_3))] [_inst_5 : SMulCommClass.{u1, u2, u2} R A A (SMulZeroClass.toSMul.{u1, u2} R A (SemigroupWithZero.toZero.{u2} A (NonUnitalSemiring.toSemigroupWithZero.{u2} A _inst_3)) (SMulWithZero.toSMulZeroClass.{u1, u2} R A (CommMonoidWithZero.toZero.{u1} R (CommSemiring.toCommMonoidWithZero.{u1} R _inst_2)) (SemigroupWithZero.toZero.{u2} A (NonUnitalSemiring.toSemigroupWithZero.{u2} A _inst_3)) (MulActionWithZero.toSMulWithZero.{u1, u2} R A (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R _inst_2)) (SemigroupWithZero.toZero.{u2} A (NonUnitalSemiring.toSemigroupWithZero.{u2} A _inst_3)) (Module.toMulActionWithZero.{u1, u2} R A (CommSemiring.toSemiring.{u1} R _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u2} A _inst_3)) _inst_4)))) (SMulZeroClass.toSMul.{u2, u2} A A (SemigroupWithZero.toZero.{u2} A (NonUnitalSemiring.toSemigroupWithZero.{u2} A _inst_3)) (SMulWithZero.toSMulZeroClass.{u2, u2} A A (SemigroupWithZero.toZero.{u2} A (NonUnitalSemiring.toSemigroupWithZero.{u2} A _inst_3)) (SemigroupWithZero.toZero.{u2} A (NonUnitalSemiring.toSemigroupWithZero.{u2} A _inst_3)) (MulZeroClass.toSMulWithZero.{u2} A (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u2} A _inst_3)))))] [_inst_6 : IsScalarTower.{u1, u2, u2} R A A (SMulZeroClass.toSMul.{u1, u2} R A (SemigroupWithZero.toZero.{u2} A (NonUnitalSemiring.toSemigroupWithZero.{u2} A _inst_3)) (SMulWithZero.toSMulZeroClass.{u1, u2} R A (CommMonoidWithZero.toZero.{u1} R (CommSemiring.toCommMonoidWithZero.{u1} R _inst_2)) (SemigroupWithZero.toZero.{u2} A (NonUnitalSemiring.toSemigroupWithZero.{u2} A _inst_3)) (MulActionWithZero.toSMulWithZero.{u1, u2} R A (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R _inst_2)) (SemigroupWithZero.toZero.{u2} A (NonUnitalSemiring.toSemigroupWithZero.{u2} A _inst_3)) (Module.toMulActionWithZero.{u1, u2} R A (CommSemiring.toSemiring.{u1} R _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u2} A _inst_3)) _inst_4)))) (SMulZeroClass.toSMul.{u2, u2} A A (SemigroupWithZero.toZero.{u2} A (NonUnitalSemiring.toSemigroupWithZero.{u2} A _inst_3)) (SMulWithZero.toSMulZeroClass.{u2, u2} A A (SemigroupWithZero.toZero.{u2} A (NonUnitalSemiring.toSemigroupWithZero.{u2} A _inst_3)) (SemigroupWithZero.toZero.{u2} A (NonUnitalSemiring.toSemigroupWithZero.{u2} A _inst_3)) (MulZeroClass.toSMulWithZero.{u2} A (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u2} A _inst_3))))) (SMulZeroClass.toSMul.{u1, u2} R A (SemigroupWithZero.toZero.{u2} A (NonUnitalSemiring.toSemigroupWithZero.{u2} A _inst_3)) (SMulWithZero.toSMulZeroClass.{u1, u2} R A (CommMonoidWithZero.toZero.{u1} R (CommSemiring.toCommMonoidWithZero.{u1} R _inst_2)) (SemigroupWithZero.toZero.{u2} A (NonUnitalSemiring.toSemigroupWithZero.{u2} A _inst_3)) (MulActionWithZero.toSMulWithZero.{u1, u2} R A (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R _inst_2)) (SemigroupWithZero.toZero.{u2} A (NonUnitalSemiring.toSemigroupWithZero.{u2} A _inst_3)) (Module.toMulActionWithZero.{u1, u2} R A (CommSemiring.toSemiring.{u1} R _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u2} A _inst_3)) _inst_4))))] {C : Type.{u3}} [_inst_12 : Semiring.{u3} C] [_inst_13 : Algebra.{u1, u3} R C _inst_2 _inst_12], Equiv.{max (succ u3) (succ u2), max (succ u3) (succ (max u2 u1))} (NonUnitalAlgHom.{u1, u2, u3} R A C (MonoidWithZero.toMonoid.{u1} R (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R _inst_2))) (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u2} A _inst_3) (Module.toDistribMulAction.{u1, u2} R A (CommSemiring.toSemiring.{u1} R _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u2} A _inst_3)) _inst_4) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} C (Semiring.toNonAssocSemiring.{u3} C _inst_12)) (Module.toDistribMulAction.{u1, u3} R C (CommSemiring.toSemiring.{u1} R _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} C (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} C (Semiring.toNonAssocSemiring.{u3} C _inst_12))) (Algebra.toModule.{u1, u3} R C _inst_2 _inst_12 _inst_13))) (AlgHom.{u1, max u2 u1, u3} R (Unitization.{u1, u2} R A) C _inst_2 (Unitization.semiring.{u1, u2} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5) _inst_12 (Unitization.algebra.{u1, u1, u2} R R A _inst_2 _inst_2 _inst_3 _inst_4 _inst_6 _inst_5 (Algebra.id.{u1} R _inst_2) (Module.toDistribMulAction.{u1, u2} R A (CommSemiring.toSemiring.{u1} R _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u2} A _inst_3)) _inst_4) (IsScalarTower.left.{u1, u2} R A (MonoidWithZero.toMonoid.{u1} R (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R _inst_2))) (MulActionWithZero.toMulAction.{u1, u2} R A (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R _inst_2)) (SemigroupWithZero.toZero.{u2} A (NonUnitalSemiring.toSemigroupWithZero.{u2} A _inst_3)) (Module.toMulActionWithZero.{u1, u2} R A (CommSemiring.toSemiring.{u1} R _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u2} A _inst_3)) _inst_4)))) _inst_13)
+Case conversion may be inaccurate. Consider using '#align unitization.lift Unitization.liftₓ'. -/
 /-- Non-unital algebra homomorphisms from `A` into a unital `R`-algebra `C` lift uniquely to
 `unitization R A →ₐ[R] C`. This is the universal property of the unitization. -/
 @[simps apply_apply]
@@ -679,7 +979,7 @@ def lift : (A →ₙₐ[R] C) ≃ (Unitization R A →ₐ[R] C)
         rw [add_add_add_comm]
       commutes' := fun r => by
         simp only [algebra_map_eq_inl, fst_inl, snd_inl, φ.map_zero, add_zero] }
-  invFun φ := φ.toNonUnitalAlgHom.comp (coeNonUnitalAlgHom R A)
+  invFun φ := φ.toNonUnitalAlgHom.comp (inrNonUnitalAlgHom R A)
   left_inv φ := by
     ext
     simp
@@ -690,6 +990,12 @@ def lift : (A →ₙₐ[R] C) ≃ (Unitization R A →ₐ[R] C)
         simp)
 #align unitization.lift Unitization.lift
 
+/- warning: unitization.lift_symm_apply -> Unitization.lift_symm_apply is a dubious translation:
+lean 3 declaration is
+  forall {R : Type.{u1}} {A : Type.{u2}} [_inst_2 : CommSemiring.{u1} R] [_inst_3 : NonUnitalSemiring.{u2} A] [_inst_4 : Module.{u1, u2} R A (CommSemiring.toSemiring.{u1} R _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u2} A _inst_3))] [_inst_5 : SMulCommClass.{u1, u2, u2} R A A (SMulZeroClass.toHasSmul.{u1, u2} R A (AddZeroClass.toHasZero.{u2} A (AddMonoid.toAddZeroClass.{u2} A (AddCommMonoid.toAddMonoid.{u2} A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u2} A _inst_3))))) (SMulWithZero.toSmulZeroClass.{u1, u2} R A (MulZeroClass.toHasZero.{u1} R (MulZeroOneClass.toMulZeroClass.{u1} R (MonoidWithZero.toMulZeroOneClass.{u1} R (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R _inst_2))))) (AddZeroClass.toHasZero.{u2} A (AddMonoid.toAddZeroClass.{u2} A (AddCommMonoid.toAddMonoid.{u2} A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u2} A _inst_3))))) (MulActionWithZero.toSMulWithZero.{u1, u2} R A (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R _inst_2)) (AddZeroClass.toHasZero.{u2} A (AddMonoid.toAddZeroClass.{u2} A (AddCommMonoid.toAddMonoid.{u2} A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u2} A _inst_3))))) (Module.toMulActionWithZero.{u1, u2} R A (CommSemiring.toSemiring.{u1} R _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u2} A _inst_3)) _inst_4)))) (Mul.toSMul.{u2} A (Distrib.toHasMul.{u2} A (NonUnitalNonAssocSemiring.toDistrib.{u2} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u2} A _inst_3))))] [_inst_6 : IsScalarTower.{u1, u2, u2} R A A (SMulZeroClass.toHasSmul.{u1, u2} R A (AddZeroClass.toHasZero.{u2} A (AddMonoid.toAddZeroClass.{u2} A (AddCommMonoid.toAddMonoid.{u2} A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u2} A _inst_3))))) (SMulWithZero.toSmulZeroClass.{u1, u2} R A (MulZeroClass.toHasZero.{u1} R (MulZeroOneClass.toMulZeroClass.{u1} R (MonoidWithZero.toMulZeroOneClass.{u1} R (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R _inst_2))))) (AddZeroClass.toHasZero.{u2} A (AddMonoid.toAddZeroClass.{u2} A (AddCommMonoid.toAddMonoid.{u2} A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u2} A _inst_3))))) (MulActionWithZero.toSMulWithZero.{u1, u2} R A (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R _inst_2)) (AddZeroClass.toHasZero.{u2} A (AddMonoid.toAddZeroClass.{u2} A (AddCommMonoid.toAddMonoid.{u2} A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u2} A _inst_3))))) (Module.toMulActionWithZero.{u1, u2} R A (CommSemiring.toSemiring.{u1} R _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u2} A _inst_3)) _inst_4)))) (Mul.toSMul.{u2} A (Distrib.toHasMul.{u2} A (NonUnitalNonAssocSemiring.toDistrib.{u2} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u2} A _inst_3)))) (SMulZeroClass.toHasSmul.{u1, u2} R A (AddZeroClass.toHasZero.{u2} A (AddMonoid.toAddZeroClass.{u2} A (AddCommMonoid.toAddMonoid.{u2} A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u2} A _inst_3))))) (SMulWithZero.toSmulZeroClass.{u1, u2} R A (MulZeroClass.toHasZero.{u1} R (MulZeroOneClass.toMulZeroClass.{u1} R (MonoidWithZero.toMulZeroOneClass.{u1} R (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R _inst_2))))) (AddZeroClass.toHasZero.{u2} A (AddMonoid.toAddZeroClass.{u2} A (AddCommMonoid.toAddMonoid.{u2} A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u2} A _inst_3))))) (MulActionWithZero.toSMulWithZero.{u1, u2} R A (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R _inst_2)) (AddZeroClass.toHasZero.{u2} A (AddMonoid.toAddZeroClass.{u2} A (AddCommMonoid.toAddMonoid.{u2} A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u2} A _inst_3))))) (Module.toMulActionWithZero.{u1, u2} R A (CommSemiring.toSemiring.{u1} R _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u2} A _inst_3)) _inst_4))))] {C : Type.{u3}} [_inst_12 : Ring.{u3} C] [_inst_13 : Algebra.{u1, u3} R C _inst_2 (Ring.toSemiring.{u3} C _inst_12)] (φ : AlgHom.{u1, max u1 u2, u3} R (Unitization.{u1, u2} R A) C _inst_2 (Unitization.semiring.{u1, u2} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5) (Ring.toSemiring.{u3} C _inst_12) (Unitization.algebra.{u1, u1, u2} R R A _inst_2 _inst_2 _inst_3 _inst_4 _inst_6 _inst_5 (Algebra.id.{u1} R _inst_2) (Module.toDistribMulAction.{u1, u2} R A (CommSemiring.toSemiring.{u1} R _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u2} A _inst_3)) _inst_4) (IsScalarTower.left.{u1, u2} R A (MonoidWithZero.toMonoid.{u1} R (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R _inst_2))) (MulActionWithZero.toMulAction.{u1, u2} R A (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R _inst_2)) (AddZeroClass.toHasZero.{u2} A (AddMonoid.toAddZeroClass.{u2} A (AddCommMonoid.toAddMonoid.{u2} A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u2} A _inst_3))))) (Module.toMulActionWithZero.{u1, u2} R A (CommSemiring.toSemiring.{u1} R _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u2} A _inst_3)) _inst_4)))) _inst_13) (a : A), Eq.{succ u3} C (coeFn.{max (succ u2) (succ u3), max (succ u2) (succ u3)} (NonUnitalAlgHom.{u1, u2, u3} R A C (MonoidWithZero.toMonoid.{u1} R (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R _inst_2))) (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u2} A _inst_3) (Module.toDistribMulAction.{u1, u2} R A (CommSemiring.toSemiring.{u1} R _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u2} A _inst_3)) _inst_4) (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u3} C (NonAssocRing.toNonUnitalNonAssocRing.{u3} C (Ring.toNonAssocRing.{u3} C _inst_12))) (Module.toDistribMulAction.{u1, u3} R C (CommSemiring.toSemiring.{u1} R _inst_2) (AddCommGroup.toAddCommMonoid.{u3} C (NonUnitalNonAssocRing.toAddCommGroup.{u3} C (NonAssocRing.toNonUnitalNonAssocRing.{u3} C (Ring.toNonAssocRing.{u3} C _inst_12)))) (Algebra.toModule.{u1, u3} R C _inst_2 (Ring.toSemiring.{u3} C _inst_12) _inst_13))) (fun (_x : NonUnitalAlgHom.{u1, u2, u3} R A C (MonoidWithZero.toMonoid.{u1} R (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R _inst_2))) (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u2} A _inst_3) (Module.toDistribMulAction.{u1, u2} R A (CommSemiring.toSemiring.{u1} R _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u2} A _inst_3)) _inst_4) (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u3} C (NonAssocRing.toNonUnitalNonAssocRing.{u3} C (Ring.toNonAssocRing.{u3} C _inst_12))) (Module.toDistribMulAction.{u1, u3} R C (CommSemiring.toSemiring.{u1} R _inst_2) (AddCommGroup.toAddCommMonoid.{u3} C (NonUnitalNonAssocRing.toAddCommGroup.{u3} C (NonAssocRing.toNonUnitalNonAssocRing.{u3} C (Ring.toNonAssocRing.{u3} C _inst_12)))) (Algebra.toModule.{u1, u3} R C _inst_2 (Ring.toSemiring.{u3} C _inst_12) _inst_13))) => A -> C) (NonUnitalAlgHom.hasCoeToFun.{u1, u2, u3} R A C (MonoidWithZero.toMonoid.{u1} R (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R _inst_2))) (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u2} A _inst_3) (Module.toDistribMulAction.{u1, u2} R A (CommSemiring.toSemiring.{u1} R _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u2} A _inst_3)) _inst_4) (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u3} C (NonAssocRing.toNonUnitalNonAssocRing.{u3} C (Ring.toNonAssocRing.{u3} C _inst_12))) (Module.toDistribMulAction.{u1, u3} R C (CommSemiring.toSemiring.{u1} R _inst_2) (AddCommGroup.toAddCommMonoid.{u3} C (NonUnitalNonAssocRing.toAddCommGroup.{u3} C (NonAssocRing.toNonUnitalNonAssocRing.{u3} C (Ring.toNonAssocRing.{u3} C _inst_12)))) (Algebra.toModule.{u1, u3} R C _inst_2 (Ring.toSemiring.{u3} C _inst_12) _inst_13))) (coeFn.{max 1 (max (max (succ (max u1 u2)) (succ u3)) (succ u2) (succ u3)) (max (succ u2) (succ u3)) (succ (max u1 u2)) (succ u3), max (max (succ (max u1 u2)) (succ u3)) (succ u2) (succ u3)} (Equiv.{max (succ (max u1 u2)) (succ u3), max (succ u2) (succ u3)} (AlgHom.{u1, max u1 u2, u3} R (Unitization.{u1, u2} R A) C _inst_2 (Unitization.semiring.{u1, u2} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5) (Ring.toSemiring.{u3} C _inst_12) (Unitization.algebra.{u1, u1, u2} R R A _inst_2 _inst_2 _inst_3 _inst_4 _inst_6 _inst_5 (Algebra.id.{u1} R _inst_2) (Module.toDistribMulAction.{u1, u2} R A (CommSemiring.toSemiring.{u1} R _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u2} A _inst_3)) _inst_4) (Unitization.lift._proof_1.{u1, u2} R A _inst_2 _inst_3 _inst_4)) _inst_13) (NonUnitalAlgHom.{u1, u2, u3} R A C (MonoidWithZero.toMonoid.{u1} R (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R _inst_2))) (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u2} A _inst_3) (Module.toDistribMulAction.{u1, u2} R A (CommSemiring.toSemiring.{u1} R _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u2} A _inst_3)) _inst_4) (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u3} C (NonAssocRing.toNonUnitalNonAssocRing.{u3} C (Ring.toNonAssocRing.{u3} C _inst_12))) (Module.toDistribMulAction.{u1, u3} R C (CommSemiring.toSemiring.{u1} R _inst_2) (AddCommGroup.toAddCommMonoid.{u3} C (NonUnitalNonAssocRing.toAddCommGroup.{u3} C (NonAssocRing.toNonUnitalNonAssocRing.{u3} C (Ring.toNonAssocRing.{u3} C _inst_12)))) (Algebra.toModule.{u1, u3} R C _inst_2 (Ring.toSemiring.{u3} C _inst_12) _inst_13)))) (fun (_x : Equiv.{max (succ (max u1 u2)) (succ u3), max (succ u2) (succ u3)} (AlgHom.{u1, max u1 u2, u3} R (Unitization.{u1, u2} R A) C _inst_2 (Unitization.semiring.{u1, u2} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5) (Ring.toSemiring.{u3} C _inst_12) (Unitization.algebra.{u1, u1, u2} R R A _inst_2 _inst_2 _inst_3 _inst_4 _inst_6 _inst_5 (Algebra.id.{u1} R _inst_2) (Module.toDistribMulAction.{u1, u2} R A (CommSemiring.toSemiring.{u1} R _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u2} A _inst_3)) _inst_4) (Unitization.lift._proof_1.{u1, u2} R A _inst_2 _inst_3 _inst_4)) _inst_13) (NonUnitalAlgHom.{u1, u2, u3} R A C (MonoidWithZero.toMonoid.{u1} R (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R _inst_2))) (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u2} A _inst_3) (Module.toDistribMulAction.{u1, u2} R A (CommSemiring.toSemiring.{u1} R _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u2} A _inst_3)) _inst_4) (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u3} C (NonAssocRing.toNonUnitalNonAssocRing.{u3} C (Ring.toNonAssocRing.{u3} C _inst_12))) (Module.toDistribMulAction.{u1, u3} R C (CommSemiring.toSemiring.{u1} R _inst_2) (AddCommGroup.toAddCommMonoid.{u3} C (NonUnitalNonAssocRing.toAddCommGroup.{u3} C (NonAssocRing.toNonUnitalNonAssocRing.{u3} C (Ring.toNonAssocRing.{u3} C _inst_12)))) (Algebra.toModule.{u1, u3} R C _inst_2 (Ring.toSemiring.{u3} C _inst_12) _inst_13)))) => (AlgHom.{u1, max u1 u2, u3} R (Unitization.{u1, u2} R A) C _inst_2 (Unitization.semiring.{u1, u2} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5) (Ring.toSemiring.{u3} C _inst_12) (Unitization.algebra.{u1, u1, u2} R R A _inst_2 _inst_2 _inst_3 _inst_4 _inst_6 _inst_5 (Algebra.id.{u1} R _inst_2) (Module.toDistribMulAction.{u1, u2} R A (CommSemiring.toSemiring.{u1} R _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u2} A _inst_3)) _inst_4) (Unitization.lift._proof_1.{u1, u2} R A _inst_2 _inst_3 _inst_4)) _inst_13) -> (NonUnitalAlgHom.{u1, u2, u3} R A C (MonoidWithZero.toMonoid.{u1} R (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R _inst_2))) (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u2} A _inst_3) (Module.toDistribMulAction.{u1, u2} R A (CommSemiring.toSemiring.{u1} R _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u2} A _inst_3)) _inst_4) (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u3} C (NonAssocRing.toNonUnitalNonAssocRing.{u3} C (Ring.toNonAssocRing.{u3} C _inst_12))) (Module.toDistribMulAction.{u1, u3} R C (CommSemiring.toSemiring.{u1} R _inst_2) (AddCommGroup.toAddCommMonoid.{u3} C (NonUnitalNonAssocRing.toAddCommGroup.{u3} C (NonAssocRing.toNonUnitalNonAssocRing.{u3} C (Ring.toNonAssocRing.{u3} C _inst_12)))) (Algebra.toModule.{u1, u3} R C _inst_2 (Ring.toSemiring.{u3} C _inst_12) _inst_13)))) (Equiv.hasCoeToFun.{max (succ (max u1 u2)) (succ u3), max (succ u2) (succ u3)} (AlgHom.{u1, max u1 u2, u3} R (Unitization.{u1, u2} R A) C _inst_2 (Unitization.semiring.{u1, u2} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5) (Ring.toSemiring.{u3} C _inst_12) (Unitization.algebra.{u1, u1, u2} R R A _inst_2 _inst_2 _inst_3 _inst_4 _inst_6 _inst_5 (Algebra.id.{u1} R _inst_2) (Module.toDistribMulAction.{u1, u2} R A (CommSemiring.toSemiring.{u1} R _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u2} A _inst_3)) _inst_4) (Unitization.lift._proof_1.{u1, u2} R A _inst_2 _inst_3 _inst_4)) _inst_13) (NonUnitalAlgHom.{u1, u2, u3} R A C (MonoidWithZero.toMonoid.{u1} R (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R _inst_2))) (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u2} A _inst_3) (Module.toDistribMulAction.{u1, u2} R A (CommSemiring.toSemiring.{u1} R _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u2} A _inst_3)) _inst_4) (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u3} C (NonAssocRing.toNonUnitalNonAssocRing.{u3} C (Ring.toNonAssocRing.{u3} C _inst_12))) (Module.toDistribMulAction.{u1, u3} R C (CommSemiring.toSemiring.{u1} R _inst_2) (AddCommGroup.toAddCommMonoid.{u3} C (NonUnitalNonAssocRing.toAddCommGroup.{u3} C (NonAssocRing.toNonUnitalNonAssocRing.{u3} C (Ring.toNonAssocRing.{u3} C _inst_12)))) (Algebra.toModule.{u1, u3} R C _inst_2 (Ring.toSemiring.{u3} C _inst_12) _inst_13)))) (Equiv.symm.{max (succ u2) (succ u3), max (succ (max u1 u2)) (succ u3)} (NonUnitalAlgHom.{u1, u2, u3} R A C (MonoidWithZero.toMonoid.{u1} R (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R _inst_2))) (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u2} A _inst_3) (Module.toDistribMulAction.{u1, u2} R A (CommSemiring.toSemiring.{u1} R _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u2} A _inst_3)) _inst_4) (NonUnitalNonAssocRing.toNonUnitalNonAssocSemiring.{u3} C (NonAssocRing.toNonUnitalNonAssocRing.{u3} C (Ring.toNonAssocRing.{u3} C _inst_12))) (Module.toDistribMulAction.{u1, u3} R C (CommSemiring.toSemiring.{u1} R _inst_2) (AddCommGroup.toAddCommMonoid.{u3} C (NonUnitalNonAssocRing.toAddCommGroup.{u3} C (NonAssocRing.toNonUnitalNonAssocRing.{u3} C (Ring.toNonAssocRing.{u3} C _inst_12)))) (Algebra.toModule.{u1, u3} R C _inst_2 (Ring.toSemiring.{u3} C _inst_12) _inst_13))) (AlgHom.{u1, max u1 u2, u3} R (Unitization.{u1, u2} R A) C _inst_2 (Unitization.semiring.{u1, u2} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5) (Ring.toSemiring.{u3} C _inst_12) (Unitization.algebra.{u1, u1, u2} R R A _inst_2 _inst_2 _inst_3 _inst_4 _inst_6 _inst_5 (Algebra.id.{u1} R _inst_2) (Module.toDistribMulAction.{u1, u2} R A (CommSemiring.toSemiring.{u1} R _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u2} A _inst_3)) _inst_4) (Unitization.lift._proof_1.{u1, u2} R A _inst_2 _inst_3 _inst_4)) _inst_13) (Unitization.lift.{u1, u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_5 _inst_6 C _inst_12 _inst_13)) φ) a) (coeFn.{max (succ (max u1 u2)) (succ u3), max (succ (max u1 u2)) (succ u3)} (AlgHom.{u1, max u1 u2, u3} R (Unitization.{u1, u2} R A) C _inst_2 (Unitization.semiring.{u1, u2} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5) (Ring.toSemiring.{u3} C _inst_12) (Unitization.algebra.{u1, u1, u2} R R A _inst_2 _inst_2 _inst_3 _inst_4 _inst_6 _inst_5 (Algebra.id.{u1} R _inst_2) (Module.toDistribMulAction.{u1, u2} R A (CommSemiring.toSemiring.{u1} R _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u2} A _inst_3)) _inst_4) (IsScalarTower.left.{u1, u2} R A (MonoidWithZero.toMonoid.{u1} R (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R _inst_2))) (MulActionWithZero.toMulAction.{u1, u2} R A (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R _inst_2)) (AddZeroClass.toHasZero.{u2} A (AddMonoid.toAddZeroClass.{u2} A (AddCommMonoid.toAddMonoid.{u2} A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u2} A _inst_3))))) (Module.toMulActionWithZero.{u1, u2} R A (CommSemiring.toSemiring.{u1} R _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u2} A _inst_3)) _inst_4)))) _inst_13) (fun (_x : AlgHom.{u1, max u1 u2, u3} R (Unitization.{u1, u2} R A) C _inst_2 (Unitization.semiring.{u1, u2} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5) (Ring.toSemiring.{u3} C _inst_12) (Unitization.algebra.{u1, u1, u2} R R A _inst_2 _inst_2 _inst_3 _inst_4 _inst_6 _inst_5 (Algebra.id.{u1} R _inst_2) (Module.toDistribMulAction.{u1, u2} R A (CommSemiring.toSemiring.{u1} R _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u2} A _inst_3)) _inst_4) (IsScalarTower.left.{u1, u2} R A (MonoidWithZero.toMonoid.{u1} R (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R _inst_2))) (MulActionWithZero.toMulAction.{u1, u2} R A (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R _inst_2)) (AddZeroClass.toHasZero.{u2} A (AddMonoid.toAddZeroClass.{u2} A (AddCommMonoid.toAddMonoid.{u2} A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u2} A _inst_3))))) (Module.toMulActionWithZero.{u1, u2} R A (CommSemiring.toSemiring.{u1} R _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u2} A _inst_3)) _inst_4)))) _inst_13) => (Unitization.{u1, u2} R A) -> C) ([anonymous].{u1, max u1 u2, u3} R (Unitization.{u1, u2} R A) C _inst_2 (Unitization.semiring.{u1, u2} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5) (Ring.toSemiring.{u3} C _inst_12) (Unitization.algebra.{u1, u1, u2} R R A _inst_2 _inst_2 _inst_3 _inst_4 _inst_6 _inst_5 (Algebra.id.{u1} R _inst_2) (Module.toDistribMulAction.{u1, u2} R A (CommSemiring.toSemiring.{u1} R _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u2} A _inst_3)) _inst_4) (IsScalarTower.left.{u1, u2} R A (MonoidWithZero.toMonoid.{u1} R (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R _inst_2))) (MulActionWithZero.toMulAction.{u1, u2} R A (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R _inst_2)) (AddZeroClass.toHasZero.{u2} A (AddMonoid.toAddZeroClass.{u2} A (AddCommMonoid.toAddMonoid.{u2} A (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u2} A _inst_3))))) (Module.toMulActionWithZero.{u1, u2} R A (CommSemiring.toSemiring.{u1} R _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u2} A _inst_3)) _inst_4)))) _inst_13) φ ((fun (a : Type.{u2}) (b : Sort.{max (succ u1) (succ u2)}) [self : HasLiftT.{succ u2, max (succ u1) (succ u2)} a b] => self.0) A (Unitization.{u1, u2} R A) (HasLiftT.mk.{succ u2, max (succ u1) (succ u2)} A (Unitization.{u1, u2} R A) (CoeTCₓ.coe.{succ u2, max (succ u1) (succ u2)} A (Unitization.{u1, u2} R A) (Unitization.hasCoeT.{u1, u2} R A (MulZeroClass.toHasZero.{u1} R (NonUnitalNonAssocSemiring.toMulZeroClass.{u1} R (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u1} R (Semiring.toNonAssocSemiring.{u1} R (CommSemiring.toSemiring.{u1} R _inst_2)))))))) a))
+but is expected to have type
+  forall {R : Type.{u1}} {A : Type.{u2}} [_inst_2 : CommSemiring.{u1} R] [_inst_3 : NonUnitalSemiring.{u2} A] [_inst_4 : Module.{u1, u2} R A (CommSemiring.toSemiring.{u1} R _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u2} A _inst_3))] [_inst_5 : SMulCommClass.{u1, u2, u2} R A A (SMulZeroClass.toSMul.{u1, u2} R A (SemigroupWithZero.toZero.{u2} A (NonUnitalSemiring.toSemigroupWithZero.{u2} A _inst_3)) (SMulWithZero.toSMulZeroClass.{u1, u2} R A (CommMonoidWithZero.toZero.{u1} R (CommSemiring.toCommMonoidWithZero.{u1} R _inst_2)) (SemigroupWithZero.toZero.{u2} A (NonUnitalSemiring.toSemigroupWithZero.{u2} A _inst_3)) (MulActionWithZero.toSMulWithZero.{u1, u2} R A (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R _inst_2)) (SemigroupWithZero.toZero.{u2} A (NonUnitalSemiring.toSemigroupWithZero.{u2} A _inst_3)) (Module.toMulActionWithZero.{u1, u2} R A (CommSemiring.toSemiring.{u1} R _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u2} A _inst_3)) _inst_4)))) (SMulZeroClass.toSMul.{u2, u2} A A (SemigroupWithZero.toZero.{u2} A (NonUnitalSemiring.toSemigroupWithZero.{u2} A _inst_3)) (SMulWithZero.toSMulZeroClass.{u2, u2} A A (SemigroupWithZero.toZero.{u2} A (NonUnitalSemiring.toSemigroupWithZero.{u2} A _inst_3)) (SemigroupWithZero.toZero.{u2} A (NonUnitalSemiring.toSemigroupWithZero.{u2} A _inst_3)) (MulZeroClass.toSMulWithZero.{u2} A (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u2} A _inst_3)))))] [_inst_6 : IsScalarTower.{u1, u2, u2} R A A (SMulZeroClass.toSMul.{u1, u2} R A (SemigroupWithZero.toZero.{u2} A (NonUnitalSemiring.toSemigroupWithZero.{u2} A _inst_3)) (SMulWithZero.toSMulZeroClass.{u1, u2} R A (CommMonoidWithZero.toZero.{u1} R (CommSemiring.toCommMonoidWithZero.{u1} R _inst_2)) (SemigroupWithZero.toZero.{u2} A (NonUnitalSemiring.toSemigroupWithZero.{u2} A _inst_3)) (MulActionWithZero.toSMulWithZero.{u1, u2} R A (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R _inst_2)) (SemigroupWithZero.toZero.{u2} A (NonUnitalSemiring.toSemigroupWithZero.{u2} A _inst_3)) (Module.toMulActionWithZero.{u1, u2} R A (CommSemiring.toSemiring.{u1} R _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u2} A _inst_3)) _inst_4)))) (SMulZeroClass.toSMul.{u2, u2} A A (SemigroupWithZero.toZero.{u2} A (NonUnitalSemiring.toSemigroupWithZero.{u2} A _inst_3)) (SMulWithZero.toSMulZeroClass.{u2, u2} A A (SemigroupWithZero.toZero.{u2} A (NonUnitalSemiring.toSemigroupWithZero.{u2} A _inst_3)) (SemigroupWithZero.toZero.{u2} A (NonUnitalSemiring.toSemigroupWithZero.{u2} A _inst_3)) (MulZeroClass.toSMulWithZero.{u2} A (NonUnitalNonAssocSemiring.toMulZeroClass.{u2} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u2} A _inst_3))))) (SMulZeroClass.toSMul.{u1, u2} R A (SemigroupWithZero.toZero.{u2} A (NonUnitalSemiring.toSemigroupWithZero.{u2} A _inst_3)) (SMulWithZero.toSMulZeroClass.{u1, u2} R A (CommMonoidWithZero.toZero.{u1} R (CommSemiring.toCommMonoidWithZero.{u1} R _inst_2)) (SemigroupWithZero.toZero.{u2} A (NonUnitalSemiring.toSemigroupWithZero.{u2} A _inst_3)) (MulActionWithZero.toSMulWithZero.{u1, u2} R A (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R _inst_2)) (SemigroupWithZero.toZero.{u2} A (NonUnitalSemiring.toSemigroupWithZero.{u2} A _inst_3)) (Module.toMulActionWithZero.{u1, u2} R A (CommSemiring.toSemiring.{u1} R _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u2} A _inst_3)) _inst_4))))] {C : Type.{u3}} [_inst_12 : Semiring.{u3} C] [_inst_13 : Algebra.{u1, u3} R C _inst_2 _inst_12] (φ : AlgHom.{u1, max u2 u1, u3} R (Unitization.{u1, u2} R A) C _inst_2 (Unitization.semiring.{u1, u2} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5) _inst_12 (Unitization.algebra.{u1, u1, u2} R R A _inst_2 _inst_2 _inst_3 _inst_4 _inst_6 _inst_5 (Algebra.id.{u1} R _inst_2) (Module.toDistribMulAction.{u1, u2} R A (CommSemiring.toSemiring.{u1} R _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u2} A _inst_3)) _inst_4) (Unitization.lift.proof_1.{u1, u2} R A _inst_2 _inst_3 _inst_4)) _inst_13), Eq.{max (succ u2) (succ u3)} (NonUnitalAlgHom.{u1, u2, u3} R A C (MonoidWithZero.toMonoid.{u1} R (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R _inst_2))) (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u2} A _inst_3) (Module.toDistribMulAction.{u1, u2} R A (CommSemiring.toSemiring.{u1} R _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u2} A _inst_3)) _inst_4) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} C (Semiring.toNonAssocSemiring.{u3} C _inst_12)) (Module.toDistribMulAction.{u1, u3} R C (CommSemiring.toSemiring.{u1} R _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} C (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} C (Semiring.toNonAssocSemiring.{u3} C _inst_12))) (Algebra.toModule.{u1, u3} R C _inst_2 _inst_12 _inst_13))) (FunLike.coe.{max (max 1 (succ u3) (succ u2)) (succ u3) (succ (max u2 u1)), max (succ u3) (succ (max u2 u1)), max (succ u3) (succ u2)} (Equiv.{max (succ u3) (succ (max u2 u1)), max (succ u3) (succ u2)} (AlgHom.{u1, max u2 u1, u3} R (Unitization.{u1, u2} R A) C _inst_2 (Unitization.semiring.{u1, u2} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5) _inst_12 (Unitization.algebra.{u1, u1, u2} R R A _inst_2 _inst_2 _inst_3 _inst_4 _inst_6 _inst_5 (Algebra.id.{u1} R _inst_2) (Module.toDistribMulAction.{u1, u2} R A (CommSemiring.toSemiring.{u1} R _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u2} A _inst_3)) _inst_4) (IsScalarTower.left.{u1, u2} R A (MonoidWithZero.toMonoid.{u1} R (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R _inst_2))) (MulActionWithZero.toMulAction.{u1, u2} R A (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R _inst_2)) (SemigroupWithZero.toZero.{u2} A (NonUnitalSemiring.toSemigroupWithZero.{u2} A _inst_3)) (Module.toMulActionWithZero.{u1, u2} R A (CommSemiring.toSemiring.{u1} R _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u2} A _inst_3)) _inst_4)))) _inst_13) (NonUnitalAlgHom.{u1, u2, u3} R A C (MonoidWithZero.toMonoid.{u1} R (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R _inst_2))) (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u2} A _inst_3) (Module.toDistribMulAction.{u1, u2} R A (CommSemiring.toSemiring.{u1} R _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u2} A _inst_3)) _inst_4) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} C (Semiring.toNonAssocSemiring.{u3} C _inst_12)) (Module.toDistribMulAction.{u1, u3} R C (CommSemiring.toSemiring.{u1} R _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} C (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} C (Semiring.toNonAssocSemiring.{u3} C _inst_12))) (Algebra.toModule.{u1, u3} R C _inst_2 _inst_12 _inst_13)))) (AlgHom.{u1, max u2 u1, u3} R (Unitization.{u1, u2} R A) C _inst_2 (Unitization.semiring.{u1, u2} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5) _inst_12 (Unitization.algebra.{u1, u1, u2} R R A _inst_2 _inst_2 _inst_3 _inst_4 _inst_6 _inst_5 (Algebra.id.{u1} R _inst_2) (Module.toDistribMulAction.{u1, u2} R A (CommSemiring.toSemiring.{u1} R _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u2} A _inst_3)) _inst_4) (IsScalarTower.left.{u1, u2} R A (MonoidWithZero.toMonoid.{u1} R (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R _inst_2))) (MulActionWithZero.toMulAction.{u1, u2} R A (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R _inst_2)) (SemigroupWithZero.toZero.{u2} A (NonUnitalSemiring.toSemigroupWithZero.{u2} A _inst_3)) (Module.toMulActionWithZero.{u1, u2} R A (CommSemiring.toSemiring.{u1} R _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u2} A _inst_3)) _inst_4)))) _inst_13) (fun (a : AlgHom.{u1, max u2 u1, u3} R (Unitization.{u1, u2} R A) C _inst_2 (Unitization.semiring.{u1, u2} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5) _inst_12 (Unitization.algebra.{u1, u1, u2} R R A _inst_2 _inst_2 _inst_3 _inst_4 _inst_6 _inst_5 (Algebra.id.{u1} R _inst_2) (Module.toDistribMulAction.{u1, u2} R A (CommSemiring.toSemiring.{u1} R _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u2} A _inst_3)) _inst_4) (IsScalarTower.left.{u1, u2} R A (MonoidWithZero.toMonoid.{u1} R (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R _inst_2))) (MulActionWithZero.toMulAction.{u1, u2} R A (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R _inst_2)) (SemigroupWithZero.toZero.{u2} A (NonUnitalSemiring.toSemigroupWithZero.{u2} A _inst_3)) (Module.toMulActionWithZero.{u1, u2} R A (CommSemiring.toSemiring.{u1} R _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u2} A _inst_3)) _inst_4)))) _inst_13) => (fun (x._@.Mathlib.Logic.Equiv.Defs._hyg.808 : AlgHom.{u1, max u2 u1, u3} R (Unitization.{u1, u2} R A) C _inst_2 (Unitization.semiring.{u1, u2} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5) _inst_12 (Unitization.algebra.{u1, u1, u2} R R A _inst_2 _inst_2 _inst_3 _inst_4 _inst_6 _inst_5 (Algebra.id.{u1} R _inst_2) (Module.toDistribMulAction.{u1, u2} R A (CommSemiring.toSemiring.{u1} R _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u2} A _inst_3)) _inst_4) (IsScalarTower.left.{u1, u2} R A (MonoidWithZero.toMonoid.{u1} R (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R _inst_2))) (MulActionWithZero.toMulAction.{u1, u2} R A (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R _inst_2)) (SemigroupWithZero.toZero.{u2} A (NonUnitalSemiring.toSemigroupWithZero.{u2} A _inst_3)) (Module.toMulActionWithZero.{u1, u2} R A (CommSemiring.toSemiring.{u1} R _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u2} A _inst_3)) _inst_4)))) _inst_13) => NonUnitalAlgHom.{u1, u2, u3} R A C (MonoidWithZero.toMonoid.{u1} R (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R _inst_2))) (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u2} A _inst_3) (Module.toDistribMulAction.{u1, u2} R A (CommSemiring.toSemiring.{u1} R _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u2} A _inst_3)) _inst_4) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} C (Semiring.toNonAssocSemiring.{u3} C _inst_12)) (Module.toDistribMulAction.{u1, u3} R C (CommSemiring.toSemiring.{u1} R _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} C (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} C (Semiring.toNonAssocSemiring.{u3} C _inst_12))) (Algebra.toModule.{u1, u3} R C _inst_2 _inst_12 _inst_13))) a) (Equiv.instFunLikeEquiv.{max (succ u3) (succ (max u2 u1)), max (succ u3) (succ u2)} (AlgHom.{u1, max u2 u1, u3} R (Unitization.{u1, u2} R A) C _inst_2 (Unitization.semiring.{u1, u2} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5) _inst_12 (Unitization.algebra.{u1, u1, u2} R R A _inst_2 _inst_2 _inst_3 _inst_4 _inst_6 _inst_5 (Algebra.id.{u1} R _inst_2) (Module.toDistribMulAction.{u1, u2} R A (CommSemiring.toSemiring.{u1} R _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u2} A _inst_3)) _inst_4) (IsScalarTower.left.{u1, u2} R A (MonoidWithZero.toMonoid.{u1} R (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R _inst_2))) (MulActionWithZero.toMulAction.{u1, u2} R A (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R _inst_2)) (SemigroupWithZero.toZero.{u2} A (NonUnitalSemiring.toSemigroupWithZero.{u2} A _inst_3)) (Module.toMulActionWithZero.{u1, u2} R A (CommSemiring.toSemiring.{u1} R _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u2} A _inst_3)) _inst_4)))) _inst_13) (NonUnitalAlgHom.{u1, u2, u3} R A C (MonoidWithZero.toMonoid.{u1} R (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R _inst_2))) (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u2} A _inst_3) (Module.toDistribMulAction.{u1, u2} R A (CommSemiring.toSemiring.{u1} R _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u2} A _inst_3)) _inst_4) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} C (Semiring.toNonAssocSemiring.{u3} C _inst_12)) (Module.toDistribMulAction.{u1, u3} R C (CommSemiring.toSemiring.{u1} R _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} C (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} C (Semiring.toNonAssocSemiring.{u3} C _inst_12))) (Algebra.toModule.{u1, u3} R C _inst_2 _inst_12 _inst_13)))) (Equiv.symm.{max (succ u3) (succ u2), max (succ u3) (succ (max u2 u1))} (NonUnitalAlgHom.{u1, u2, u3} R A C (MonoidWithZero.toMonoid.{u1} R (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R _inst_2))) (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u2} A _inst_3) (Module.toDistribMulAction.{u1, u2} R A (CommSemiring.toSemiring.{u1} R _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u2} A _inst_3)) _inst_4) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} C (Semiring.toNonAssocSemiring.{u3} C _inst_12)) (Module.toDistribMulAction.{u1, u3} R C (CommSemiring.toSemiring.{u1} R _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} C (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} C (Semiring.toNonAssocSemiring.{u3} C _inst_12))) (Algebra.toModule.{u1, u3} R C _inst_2 _inst_12 _inst_13))) (AlgHom.{u1, max u2 u1, u3} R (Unitization.{u1, u2} R A) C _inst_2 (Unitization.semiring.{u1, u2} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5) _inst_12 (Unitization.algebra.{u1, u1, u2} R R A _inst_2 _inst_2 _inst_3 _inst_4 _inst_6 _inst_5 (Algebra.id.{u1} R _inst_2) (Module.toDistribMulAction.{u1, u2} R A (CommSemiring.toSemiring.{u1} R _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u2} A _inst_3)) _inst_4) (IsScalarTower.left.{u1, u2} R A (MonoidWithZero.toMonoid.{u1} R (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R _inst_2))) (MulActionWithZero.toMulAction.{u1, u2} R A (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R _inst_2)) (SemigroupWithZero.toZero.{u2} A (NonUnitalSemiring.toSemigroupWithZero.{u2} A _inst_3)) (Module.toMulActionWithZero.{u1, u2} R A (CommSemiring.toSemiring.{u1} R _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u2} A _inst_3)) _inst_4)))) _inst_13) (Unitization.lift.{u1, u2, u3} R A _inst_2 _inst_3 _inst_4 _inst_5 _inst_6 C _inst_12 _inst_13)) φ) (NonUnitalAlgHom.comp.{u1, u2, max u1 u2, u3} R A (Unitization.{u1, u2} R A) C (MonoidWithZero.toMonoid.{u1} R (Semiring.toMonoidWithZero.{u1} R (CommSemiring.toSemiring.{u1} R _inst_2))) (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u2} A _inst_3) (Module.toDistribMulAction.{u1, u2} R A (CommSemiring.toSemiring.{u1} R _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u2} A _inst_3)) _inst_4) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{max u1 u2} (Unitization.{u1, u2} R A) (Semiring.toNonAssocSemiring.{max u1 u2} (Unitization.{u1, u2} R A) (Unitization.semiring.{u1, u2} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5))) (Module.toDistribMulAction.{u1, max u1 u2} R (Unitization.{u1, u2} R A) (CommSemiring.toSemiring.{u1} R _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{max u1 u2} (Unitization.{u1, u2} R A) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{max u1 u2} (Unitization.{u1, u2} R A) (Semiring.toNonAssocSemiring.{max u1 u2} (Unitization.{u1, u2} R A) (Unitization.semiring.{u1, u2} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5)))) (Algebra.toModule.{u1, max u1 u2} R (Unitization.{u1, u2} R A) _inst_2 (Unitization.semiring.{u1, u2} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5) (Unitization.algebra.{u1, u1, u2} R R A _inst_2 _inst_2 _inst_3 _inst_4 _inst_6 _inst_5 (Algebra.id.{u1} R _inst_2) (Module.toDistribMulAction.{u1, u2} R A (CommSemiring.toSemiring.{u1} R _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u2} A _inst_3)) _inst_4) (Unitization.lift.proof_1.{u1, u2} R A _inst_2 _inst_3 _inst_4)))) (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} C (Semiring.toNonAssocSemiring.{u3} C _inst_12)) (Module.toDistribMulAction.{u1, u3} R C (CommSemiring.toSemiring.{u1} R _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u3} C (NonAssocSemiring.toNonUnitalNonAssocSemiring.{u3} C (Semiring.toNonAssocSemiring.{u3} C _inst_12))) (Algebra.toModule.{u1, u3} R C _inst_2 _inst_12 _inst_13)) (AlgHom.toNonUnitalAlgHom.{u1, max u1 u2, u3} R (Unitization.{u1, u2} R A) C _inst_2 (Unitization.semiring.{u1, u2} R A _inst_2 _inst_3 _inst_4 _inst_6 _inst_5) _inst_12 (Unitization.algebra.{u1, u1, u2} R R A _inst_2 _inst_2 _inst_3 _inst_4 _inst_6 _inst_5 (Algebra.id.{u1} R _inst_2) (Module.toDistribMulAction.{u1, u2} R A (CommSemiring.toSemiring.{u1} R _inst_2) (NonUnitalNonAssocSemiring.toAddCommMonoid.{u2} A (NonUnitalSemiring.toNonUnitalNonAssocSemiring.{u2} A _inst_3)) _inst_4) (Unitization.lift.proof_1.{u1, u2} R A _inst_2 _inst_3 _inst_4)) _inst_13 φ) (Unitization.inrNonUnitalAlgHom.{u1, u2} R A _inst_2 _inst_3 _inst_4))
+Case conversion may be inaccurate. Consider using '#align unitization.lift_symm_apply Unitization.lift_symm_applyₓ'. -/
 theorem lift_symm_apply (φ : Unitization R A →ₐ[R] C) (a : A) : Unitization.lift.symm φ a = φ a :=
   rfl
 #align unitization.lift_symm_apply Unitization.lift_symm_apply
Diff
@@ -379,7 +379,8 @@ theorem inl_one [One R] [Zero A] : (inl 1 : Unitization R A) = 1 :=
 theorem inl_mul [Monoid R] [NonUnitalNonAssocSemiring A] [DistribMulAction R A] (r₁ r₂ : R) :
     (inl (r₁ * r₂) : Unitization R A) = inl r₁ * inl r₂ :=
   ext rfl <|
-    show (0 : A) = r₁ • (0 : A) + r₂ • 0 + 0 * 0 by simp only [smul_zero, add_zero, mul_zero]
+    show (0 : A) = r₁ • (0 : A) + r₂ • 0 + 0 * 0 by
+      simp only [smul_zero, add_zero, MulZeroClass.mul_zero]
 #align unitization.inl_mul Unitization.inl_mul
 
 theorem inl_mul_inl [Monoid R] [NonUnitalNonAssocSemiring A] [DistribMulAction R A] (r₁ r₂ : R) :
@@ -396,7 +397,7 @@ variable (R)
 @[simp]
 theorem coe_mul [Semiring R] [AddCommMonoid A] [Mul A] [SMulWithZero R A] (a₁ a₂ : A) :
     (↑(a₁ * a₂) : Unitization R A) = a₁ * a₂ :=
-  ext (mul_zero _).symm <|
+  ext (MulZeroClass.mul_zero _).symm <|
     show a₁ * a₂ = (0 : R) • a₂ + (0 : R) • a₁ + a₁ * a₂ by simp only [zero_smul, zero_add]
 #align unitization.coe_mul Unitization.coe_mul
 
@@ -404,14 +405,16 @@ end
 
 theorem inl_mul_coe [Semiring R] [NonUnitalNonAssocSemiring A] [DistribMulAction R A] (r : R)
     (a : A) : (inl r * a : Unitization R A) = ↑(r • a) :=
-  ext (mul_zero r) <|
-    show r • a + (0 : R) • 0 + 0 * a = r • a by rw [smul_zero, add_zero, zero_mul, add_zero]
+  ext (MulZeroClass.mul_zero r) <|
+    show r • a + (0 : R) • 0 + 0 * a = r • a by
+      rw [smul_zero, add_zero, MulZeroClass.zero_mul, add_zero]
 #align unitization.inl_mul_coe Unitization.inl_mul_coe
 
 theorem coe_mul_inl [Semiring R] [NonUnitalNonAssocSemiring A] [DistribMulAction R A] (r : R)
     (a : A) : (a * inl r : Unitization R A) = ↑(r • a) :=
-  ext (zero_mul r) <|
-    show (0 : R) • 0 + r • a + a * 0 = r • a by rw [smul_zero, zero_add, mul_zero, add_zero]
+  ext (MulZeroClass.zero_mul r) <|
+    show (0 : R) • 0 + r • a + a * 0 = r • a by
+      rw [smul_zero, zero_add, MulZeroClass.mul_zero, add_zero]
 #align unitization.coe_mul_inl Unitization.coe_mul_inl
 
 instance mulOneClass [Monoid R] [NonUnitalNonAssocSemiring A] [DistribMulAction R A] :
@@ -421,11 +424,11 @@ instance mulOneClass [Monoid R] [NonUnitalNonAssocSemiring A] [DistribMulAction
     one_mul := fun x =>
       ext (one_mul x.1) <|
         show (1 : R) • x.2 + x.1 • 0 + 0 * x.2 = x.2 by
-          rw [one_smul, smul_zero, add_zero, zero_mul, add_zero]
+          rw [one_smul, smul_zero, add_zero, MulZeroClass.zero_mul, add_zero]
     mul_one := fun x =>
       ext (mul_one x.1) <|
         show (x.1 • 0 : A) + (1 : R) • x.2 + x.2 * 0 = x.2 by
-          rw [smul_zero, zero_add, one_smul, mul_zero, add_zero] }
+          rw [smul_zero, zero_add, one_smul, MulZeroClass.mul_zero, add_zero] }
 #align unitization.mul_one_class Unitization.mulOneClass
 
 instance [Semiring R] [NonUnitalNonAssocSemiring A] [Module R A] :
@@ -433,13 +436,13 @@ instance [Semiring R] [NonUnitalNonAssocSemiring A] [Module R A] :
   { Unitization.mulOneClass,
     Unitization.addCommMonoid with
     zero_mul := fun x =>
-      ext (zero_mul x.1) <|
+      ext (MulZeroClass.zero_mul x.1) <|
         show (0 : R) • x.2 + x.1 • 0 + 0 * x.2 = 0 by
-          rw [zero_smul, zero_add, smul_zero, zero_mul, add_zero]
+          rw [zero_smul, zero_add, smul_zero, MulZeroClass.zero_mul, add_zero]
     mul_zero := fun x =>
-      ext (mul_zero x.1) <|
+      ext (MulZeroClass.mul_zero x.1) <|
         show (x.1 • 0 : A) + (0 : R) • x.2 + x.2 * 0 = 0 by
-          rw [smul_zero, zero_add, zero_smul, mul_zero, add_zero]
+          rw [smul_zero, zero_add, zero_smul, MulZeroClass.mul_zero, add_zero]
     left_distrib := fun x₁ x₂ x₃ =>
       ext (mul_add x₁.1 x₂.1 x₃.1) <|
         show
@@ -661,9 +664,10 @@ def lift : (A →ₙₐ[R] C) ≃ (Unitization R A →ₐ[R] C)
       map_mul' := fun x y => by
         induction x using Unitization.ind
         induction y using Unitization.ind
-        simp only [mul_add, add_mul, coe_mul, fst_add, fst_mul, fst_inl, fst_coe, mul_zero,
-          add_zero, zero_mul, map_mul, snd_add, snd_mul, snd_inl, smul_zero, snd_coe, zero_add,
-          φ.map_add, φ.map_smul, φ.map_mul, zero_smul, zero_add]
+        simp only [mul_add, add_mul, coe_mul, fst_add, fst_mul, fst_inl, fst_coe,
+          MulZeroClass.mul_zero, add_zero, MulZeroClass.zero_mul, map_mul, snd_add, snd_mul,
+          snd_inl, smul_zero, snd_coe, zero_add, φ.map_add, φ.map_smul, φ.map_mul, zero_smul,
+          zero_add]
         rw [← Algebra.commutes _ (φ x_a)]
         simp only [Algebra.algebraMap_eq_smul_one, smul_one_mul, add_assoc]
       map_zero' := by simp only [fst_zero, map_zero, snd_zero, φ.map_zero, add_zero]

Changes in mathlib4

mathlib3
mathlib4
chore: split Algebra.Algebra.Basic (#12486)

Splits Algebra.Algebra.Defs off Algebra.Algebra.Basic. Most imports only need the Defs file, which has significantly smaller imports. The remaining Algebra.Algebra.Basic is now a grab-bag of unrelated results, and should probably be split further or rehomed.

This is mostly motivated by the wasted effort during minimization upon encountering Algebra.Algebra.Basic.

Co-authored-by: Scott Morrison <scott.morrison@gmail.com> Co-authored-by: Ruben Van de Velde <65514131+Ruben-VandeVelde@users.noreply.github.com>

Diff
@@ -3,7 +3,7 @@ Copyright (c) 2022 Jireh Loreaux. All rights reserved.
 Released under Apache 2.0 license as described in the file LICENSE.
 Authors: Jireh Loreaux
 -/
-import Mathlib.Algebra.Algebra.Basic
+import Mathlib.Algebra.Algebra.Defs
 import Mathlib.Algebra.Algebra.NonUnitalHom
 import Mathlib.Algebra.Star.Module
 import Mathlib.Algebra.Star.StarAlgHom
style: replace '.-/' by '. -/' (#11938)

Purely automatic replacement. If this is in any way controversial; I'm happy to just close this PR.

Diff
@@ -57,7 +57,7 @@ extension to a (unital) algebra homomorphism from `Unitization R A` to `B`.
 
 
 /-- The minimal unitization of a non-unital `R`-algebra `A`. This is just a type synonym for
-`R × A`.-/
+`R × A`. -/
 def Unitization (R A : Type*) :=
   R × A
 #align unitization Unitization
feat: MulActionHom in the semilinear style (#6057)

Generalize MulActionHom so that it allows two different monoids acting, related by a morphism. This is inspired by the treatment of (semi)linear maps in mathlib, and allows to refactor them.

Let M, N, X, Y be types, with SMul M X and SMul N Y, and let φ : M → N be a map.

  • MulActionHom φ X Y, the type of equivariant functions from X to Y, consists of functions f : X → Y such that f (m • x) = (φ m) • (f x) for all m : M and x : X.

Assume that we have Monoid M, Monoid N and that φ : M →* N. For A, B by types with AddMonoid A and AddMonoid B, endowed with DistribMulAction M A and DistribMulAction M B:

  • DistribMulActionHom φ A B is the type of equivariant additive monoid homomorphisms from A to B.

Similarly, when R and S are types with Semiring R, Semiring S, MulSemiringAction M R and MulSemiringAction N S

  • SMulSemiringHom φ R S is the type of equivariant ring homomorphisms from R to S.

The above types have corresponding classes:

  • MulActionHomClass F φ X Y states that F is a type of bundled X → Y homs which are φ-equivariant
  • DistribMulActionHomClass F φ A B states that F is a type of bundled A → B homs preserving the additive monoid structure and φ-equivariant
  • SMulSemiringHomClass F φ R S states that F is a type of bundled R → S homs preserving the ring structure and φ-equivariant

Notation

We introduce the following notation to code equivariant maps (the subscript index is for equivariant) :

  • X →ₑ[φ] Y is MulActionHom φ X Y.
  • A →ₑ+[φ] B is DistribMulActionHom φ A B.
  • R →ₑ+*[φ] S is MulSemiringActionHom φ R S.

When M = N and φ = MonoidHom.id M, we provide the backward compatible notation :

  • X →[M] Y is MulActionHom ([@id](https://github.com/id) M) X Y
  • A →+[M] B is DistribMulActionHom (MonoidHom.id M) A B
  • R →+*[M] S is MulSemiringActionHom (MonoidHom.id M) R S

This more general definition is propagated all over mathlib, in particular to LinearMap.

The treatment of composition of equivariant maps is inspired by that of semilinear maps. We provide classes CompTriple and MonoidHom.CompTriple of “composable triples`, and various instances for them.

Diff
@@ -735,8 +735,8 @@ def _root_.NonUnitalAlgHom.toAlgHom (φ :A →ₙₐ[R] C) : Unitization R A →
 def lift : (A →ₙₐ[R] C) ≃ (Unitization R A →ₐ[R] C) where
   toFun := NonUnitalAlgHom.toAlgHom
   invFun φ := φ.toNonUnitalAlgHom.comp (inrNonUnitalAlgHom R A)
-  left_inv φ := by ext; simp
-  right_inv φ := Unitization.algHom_ext' <| by ext; simp
+  left_inv φ := by ext; simp [NonUnitalAlgHomClass.toNonUnitalAlgHom]
+  right_inv φ := by ext; simp [NonUnitalAlgHomClass.toNonUnitalAlgHom]
 #align unitization.lift Unitization.lift
 
 theorem lift_symm_apply_apply (φ : Unitization R A →ₐ[R] C) (a : A) :
@@ -777,9 +777,11 @@ def starLift : (A →⋆ₙₐ[R] C) ≃ (Unitization R A →⋆ₐ[R] C) :=
       simp [map_star] }
   invFun := fun φ ↦ φ.toNonUnitalStarAlgHom.comp (inrNonUnitalStarAlgHom R A),
   left_inv := fun φ => by ext; simp,
-  right_inv := fun φ => Unitization.algHom_ext'' <| by simp }
+  right_inv := fun φ => Unitization.algHom_ext'' <| by
+    simp }
 
-@[simp]
+-- Note (#6057) : tagging simpNF because linter complains
+@[simp high, nolint simpNF]
 theorem starLift_symm_apply_apply (φ : Unitization R A →ₐ[R] C) (a : A) :
     Unitization.lift.symm φ a = φ a :=
   rfl
feat: define quasispectrum for non-unital algebras (#11219)

This defines the quasispectrum of an element a : A where A is a non-unital R-algebra. When A is unital and R is a semifield, then quasispectrum R a = spectrum R a ∪ {0}. The definition proceeds via quasiregular elements, which are also defined herein. The quasispectrum will serve as the domain of the continuous functions appearing in the continuous functional calculus for non-unital algebras.

Diff
@@ -156,6 +156,9 @@ section Additive
 
 variable {T : Type*} {S : Type*} {R : Type*} {A : Type*}
 
+instance instCanLift [Zero R] : CanLift (Unitization R A) A inr (fun x ↦ x.fst = 0) where
+  prf x hx := ⟨x.snd, ext (hx ▸ fst_inr R (snd x)) rfl⟩
+
 instance instInhabited [Inhabited R] [Inhabited A] : Inhabited (Unitization R A) :=
   instInhabitedProd
 
style: homogenise porting notes (#11145)

Homogenises porting notes via capitalisation and addition of whitespace.

It makes the following changes:

  • converts "--porting note" into "-- Porting note";
  • converts "porting note" into "Porting note".
Diff
@@ -73,7 +73,7 @@ def inl [Zero A] (r : R) : Unitization R A :=
   (r, 0)
 #align unitization.inl Unitization.inl
 
--- porting note: we need a def to which we can attach `@[coe]`
+-- Porting note: we need a def to which we can attach `@[coe]`
 /-- The canonical inclusion `A → Unitization R A`. -/
 @[coe]
 def inr [Zero R] (a : A) : Unitization R A :=
refactor(Data/FunLike): use unbundled inheritance from FunLike (#8386)

The FunLike hierarchy is very big and gets scanned through each time we need a coercion (via the CoeFun instance). It looks like unbundled inheritance suits Lean 4 better here. The only class that still extends FunLike is EquivLike, since that has a custom coe_injective' field that is easier to implement. All other classes should take FunLike or EquivLike as a parameter.

Zulip thread

Important changes

Previously, morphism classes would be Type-valued and extend FunLike:

/-- `MyHomClass F A B` states that `F` is a type of `MyClass.op`-preserving morphisms.
You should extend this class when you extend `MyHom`. -/
class MyHomClass (F : Type*) (A B : outParam <| Type*) [MyClass A] [MyClass B]
  extends FunLike F A B :=
(map_op : ∀ (f : F) (x y : A), f (MyClass.op x y) = MyClass.op (f x) (f y))

After this PR, they should be Prop-valued and take FunLike as a parameter:

/-- `MyHomClass F A B` states that `F` is a type of `MyClass.op`-preserving morphisms.
You should extend this class when you extend `MyHom`. -/
class MyHomClass (F : Type*) (A B : outParam <| Type*) [MyClass A] [MyClass B]
  [FunLike F A B] : Prop :=
(map_op : ∀ (f : F) (x y : A), f (MyClass.op x y) = MyClass.op (f x) (f y))

(Note that A B stay marked as outParam even though they are not purely required to be so due to the FunLike parameter already filling them in. This is required to see through type synonyms, which is important in the category theory library. Also, I think keeping them as outParam is slightly faster.)

Similarly, MyEquivClass should take EquivLike as a parameter.

As a result, every mention of [MyHomClass F A B] should become [FunLike F A B] [MyHomClass F A B].

Remaining issues

Slower (failing) search

While overall this gives some great speedups, there are some cases that are noticeably slower. In particular, a failing application of a lemma such as map_mul is more expensive. This is due to suboptimal processing of arguments. For example:

variable [FunLike F M N] [Mul M] [Mul N] (f : F) (x : M) (y : M)

theorem map_mul [MulHomClass F M N] : f (x * y) = f x * f y

example [AddHomClass F A B] : f (x * y) = f x * f y := map_mul f _ _

Before this PR, applying map_mul f gives the goals [Mul ?M] [Mul ?N] [MulHomClass F ?M ?N]. Since M and N are out_params, [MulHomClass F ?M ?N] is synthesized first, supplies values for ?M and ?N and then the Mul M and Mul N instances can be found.

After this PR, the goals become [FunLike F ?M ?N] [Mul ?M] [Mul ?N] [MulHomClass F ?M ?N]. Now [FunLike F ?M ?N] is synthesized first, supplies values for ?M and ?N and then the Mul M and Mul N instances can be found, before trying MulHomClass F M N which fails. Since the Mul hierarchy is very big, this can be slow to fail, especially when there is no such Mul instance.

A long-term but harder to achieve solution would be to specify the order in which instance goals get solved. For example, we'd like to change the arguments to map_mul to look like [FunLike F M N] [Mul M] [Mul N] [highPriority <| MulHomClass F M N] because MulHomClass fails or succeeds much faster than the others.

As a consequence, the simpNF linter is much slower since by design it tries and fails to apply many map_ lemmas. The same issue occurs a few times in existing calls to simp [map_mul], where map_mul is tried "too soon" and fails. Thanks to the speedup of leanprover/lean4#2478 the impact is very limited, only in files that already were close to the timeout.

simp not firing sometimes

This affects map_smulₛₗ and related definitions. For simp lemmas Lean apparently uses a slightly different mechanism to find instances, so that rw can find every argument to map_smulₛₗ successfully but simp can't: leanprover/lean4#3701.

Missing instances due to unification failing

Especially in the category theory library, we might sometimes have a type A which is also accessible as a synonym (Bundled A hA).1. Instance synthesis doesn't always work if we have f : A →* B but x * y : (Bundled A hA).1 or vice versa. This seems to be mostly fixed by keeping A B as outParams in MulHomClass F A B. (Presumably because Lean will do a definitional check A =?= (Bundled A hA).1 instead of using the syntax in the discrimination tree.)

Workaround for issues

The timeouts can be worked around for now by specifying which map_mul we mean, either as map_mul f for some explicit f, or as e.g. MonoidHomClass.map_mul.

map_smulₛₗ not firing as simp lemma can be worked around by going back to the pre-FunLike situation and making LinearMap.map_smulₛₗ a simp lemma instead of the generic map_smulₛₗ. Writing simp [map_smulₛₗ _] also works.

Co-authored-by: Matthew Ballard <matt@mrb.email> Co-authored-by: Scott Morrison <scott.morrison@gmail.com> Co-authored-by: Scott Morrison <scott@tqft.net> Co-authored-by: Anne Baanen <Vierkantor@users.noreply.github.com>

Diff
@@ -670,7 +670,8 @@ variable {S R A : Type*} [CommSemiring S] [CommSemiring R] [NonUnitalSemiring A]
   [SMulCommClass R A A] [IsScalarTower R A A] {B : Type*} [Semiring B] [Algebra S B] [Algebra S R]
   [DistribMulAction S A] [IsScalarTower S R A] {C : Type*} [Semiring C] [Algebra R C]
 
-theorem algHom_ext {F : Type*} [AlgHomClass F S (Unitization R A) B] {φ ψ : F}
+theorem algHom_ext {F : Type*}
+    [FunLike F (Unitization R A) B] [AlgHomClass F S (Unitization R A) B] {φ ψ : F}
     (h : ∀ a : A, φ a = ψ a)
     (h' : ∀ r, φ (algebraMap R (Unitization R A) r) = ψ (algebraMap R (Unitization R A) r)) :
     φ = ψ := by
@@ -679,7 +680,8 @@ theorem algHom_ext {F : Type*} [AlgHomClass F S (Unitization R A) B] {φ ψ : F}
   simp only [map_add, ← algebraMap_eq_inl, h, h']
 #align unitization.alg_hom_ext Unitization.algHom_ext
 
-lemma algHom_ext'' {F : Type*} [AlgHomClass F R (Unitization R A) C] {φ ψ : F}
+lemma algHom_ext'' {F : Type*}
+    [FunLike F (Unitization R A) C] [AlgHomClass F R (Unitization R A) C] {φ ψ : F}
     (h : ∀ a : A, φ a = ψ a) : φ = ψ :=
   algHom_ext h (fun r => by simp only [AlgHomClass.commutes])
 
chore(*): rename FunLike to DFunLike (#9785)

This prepares for the introduction of a non-dependent synonym of FunLike, which helps a lot with keeping #8386 readable.

This is entirely search-and-replace in 680197f combined with manual fixes in 4145626, e900597 and b8428f8. The commands that generated this change:

sed -i 's/\bFunLike\b/DFunLike/g' {Archive,Counterexamples,Mathlib,test}/**/*.lean
sed -i 's/\btoFunLike\b/toDFunLike/g' {Archive,Counterexamples,Mathlib,test}/**/*.lean
sed -i 's/import Mathlib.Data.DFunLike/import Mathlib.Data.FunLike/g' {Archive,Counterexamples,Mathlib,test}/**/*.lean
sed -i 's/\bHom_FunLike\b/Hom_DFunLike/g' {Archive,Counterexamples,Mathlib,test}/**/*.lean     
sed -i 's/\binstFunLike\b/instDFunLike/g' {Archive,Counterexamples,Mathlib,test}/**/*.lean
sed -i 's/\bfunLike\b/instDFunLike/g' {Archive,Counterexamples,Mathlib,test}/**/*.lean
sed -i 's/\btoo many metavariables to apply `fun_like.has_coe_to_fun`/too many metavariables to apply `DFunLike.hasCoeToFun`/g' {Archive,Counterexamples,Mathlib,test}/**/*.lean

Co-authored-by: Anne Baanen <Vierkantor@users.noreply.github.com>

Diff
@@ -674,7 +674,7 @@ theorem algHom_ext {F : Type*} [AlgHomClass F S (Unitization R A) B] {φ ψ : F}
     (h : ∀ a : A, φ a = ψ a)
     (h' : ∀ r, φ (algebraMap R (Unitization R A) r) = ψ (algebraMap R (Unitization R A) r)) :
     φ = ψ := by
-  refine FunLike.ext φ ψ (fun x ↦ ?_)
+  refine DFunLike.ext φ ψ (fun x ↦ ?_)
   induction x using Unitization.ind
   simp only [map_add, ← algebraMap_eq_inl, h, h']
 #align unitization.alg_hom_ext Unitization.algHom_ext
@@ -759,7 +759,7 @@ theorem starAlgHom_ext {φ ψ : Unitization R A →⋆ₐ[R] C}
     (h : (φ : Unitization R A →⋆ₙₐ[R] C).comp (Unitization.inrNonUnitalStarAlgHom R A) =
       (ψ : Unitization R A →⋆ₙₐ[R] C).comp (Unitization.inrNonUnitalStarAlgHom R A)) :
     φ = ψ :=
-  Unitization.algHom_ext'' <| FunLike.congr_fun h
+  Unitization.algHom_ext'' <| DFunLike.congr_fun h
 
 /-- Non-unital star algebra homomorphisms from `A` into a unital star `R`-algebra `C` lift uniquely
 to `Unitization R A →⋆ₐ[R] C`. This is the universal property of the unitization. -/
refactor(Algebra/Hom): transpose Hom and file name (#8095)

I believe the file defining a type of morphisms belongs alongside the file defining the structure this morphism works on. So I would like to reorganize the files in the Mathlib.Algebra.Hom folder so that e.g. Mathlib.Algebra.Hom.Ring becomes Mathlib.Algebra.Ring.Hom and Mathlib.Algebra.Hom.NonUnitalAlg becomes Mathlib.Algebra.Algebra.NonUnitalHom.

While fixing the imports I went ahead and sorted them for good luck.

The full list of changes is: renamed: Mathlib/Algebra/Hom/NonUnitalAlg.lean -> Mathlib/Algebra/Algebra/NonUnitalHom.lean renamed: Mathlib/Algebra/Hom/Aut.lean -> Mathlib/Algebra/Group/Aut.lean renamed: Mathlib/Algebra/Hom/Commute.lean -> Mathlib/Algebra/Group/Commute/Hom.lean renamed: Mathlib/Algebra/Hom/Embedding.lean -> Mathlib/Algebra/Group/Embedding.lean renamed: Mathlib/Algebra/Hom/Equiv/Basic.lean -> Mathlib/Algebra/Group/Equiv/Basic.lean renamed: Mathlib/Algebra/Hom/Equiv/TypeTags.lean -> Mathlib/Algebra/Group/Equiv/TypeTags.lean renamed: Mathlib/Algebra/Hom/Equiv/Units/Basic.lean -> Mathlib/Algebra/Group/Units/Equiv.lean renamed: Mathlib/Algebra/Hom/Equiv/Units/GroupWithZero.lean -> Mathlib/Algebra/GroupWithZero/Units/Equiv.lean renamed: Mathlib/Algebra/Hom/Freiman.lean -> Mathlib/Algebra/Group/Freiman.lean renamed: Mathlib/Algebra/Hom/Group/Basic.lean -> Mathlib/Algebra/Group/Hom/Basic.lean renamed: Mathlib/Algebra/Hom/Group/Defs.lean -> Mathlib/Algebra/Group/Hom/Defs.lean renamed: Mathlib/Algebra/Hom/GroupAction.lean -> Mathlib/GroupTheory/GroupAction/Hom.lean renamed: Mathlib/Algebra/Hom/GroupInstances.lean -> Mathlib/Algebra/Group/Hom/Instances.lean renamed: Mathlib/Algebra/Hom/Iterate.lean -> Mathlib/Algebra/GroupPower/IterateHom.lean renamed: Mathlib/Algebra/Hom/Centroid.lean -> Mathlib/Algebra/Ring/CentroidHom.lean renamed: Mathlib/Algebra/Hom/Ring/Basic.lean -> Mathlib/Algebra/Ring/Hom/Basic.lean renamed: Mathlib/Algebra/Hom/Ring/Defs.lean -> Mathlib/Algebra/Ring/Hom/Defs.lean renamed: Mathlib/Algebra/Hom/Units.lean -> Mathlib/Algebra/Group/Units/Hom.lean

Zulip thread: https://leanprover.zulipchat.com/#narrow/stream/287929-mathlib4/topic/Reorganizing.20.60Mathlib.2EAlgebra.2EHom.60

Diff
@@ -4,10 +4,10 @@ Released under Apache 2.0 license as described in the file LICENSE.
 Authors: Jireh Loreaux
 -/
 import Mathlib.Algebra.Algebra.Basic
-import Mathlib.LinearAlgebra.Prod
-import Mathlib.Algebra.Hom.NonUnitalAlg
-import Mathlib.Algebra.Star.StarAlgHom
+import Mathlib.Algebra.Algebra.NonUnitalHom
 import Mathlib.Algebra.Star.Module
+import Mathlib.Algebra.Star.StarAlgHom
+import Mathlib.LinearAlgebra.Prod
 
 #align_import algebra.algebra.unitization from "leanprover-community/mathlib"@"8f66240cab125b938b327d3850169d490cfbcdd8"
 
chore: fix some cases in names (#7469)

And fix some names in comments where this revealed issues

Diff
@@ -16,7 +16,7 @@ import Mathlib.Algebra.Star.Module
 
 Given a non-unital `R`-algebra `A` (given via the type classes
 `[NonUnitalRing A] [Module R A] [SMulCommClass R A A] [IsScalarTower R A A]`) we construct
-the minimal unital `R`-algebra containing `A` as an ideal. This object `algebra.unitization R A` is
+the minimal unital `R`-algebra containing `A` as an ideal. This object `Unitization R A` is
 a type synonym for `R × A` on which we place a different multiplicative structure, namely,
 `(r₁, a₁) * (r₂, a₂) = (r₁ * r₂, r₁ • a₂ + r₂ • a₁ + a₁ * a₂)` where the multiplicative identity
 is `(1, 0)`.
chore: tidy various files (#7137)
Diff
@@ -197,7 +197,7 @@ instance instIsScalarTower [SMul T R] [SMul T A] [SMul S R] [SMul S A] [SMul T S
     [IsScalarTower T S R] [IsScalarTower T S A] : IsScalarTower T S (Unitization R A) :=
   Prod.isScalarTower
 
-instance instSmulCommClass [SMul T R] [SMul T A] [SMul S R] [SMul S A] [SMulCommClass T S R]
+instance instSMulCommClass [SMul T R] [SMul T A] [SMul S R] [SMul S A] [SMulCommClass T S R]
     [SMulCommClass T S A] : SMulCommClass T S (Unitization R A) :=
   Prod.smulCommClass
 
refactor(Algebra/Star/*): Allow for star operation on non-associative algebras (#6562)

Typically a * operation on a mathematical structure R equipped with a multiplication is an involutive anti-automorphism i.e.

∀ r s : R, star (r * s) = star s * star r

Currently mathlib defines a class StarSemigroup to be a semigroup satisfying this property. However, the requirement for the multiplication to be associative is unnecessarily restrictive. There are important classes of star-algebra which are not associative (e.g. JB*-algebras).

This PR removes the requirement for a StarSemigroup to be a semigroup, merely requiring it to have a multiplication.

I've changed the name from StarSemigroup to StarMul since it's no longer a semigroup.

Zulip discussion

Previously opened as a mathlib PR https://github.com/leanprover-community/mathlib/pull/17949

Co-authored-by: Christopher Hoskin <mans0954@users.noreply.github.com> Co-authored-by: Eric Wieser <wieser.eric@gmail.com>

Diff
@@ -578,8 +578,9 @@ instance instStarModule [CommSemiring R] [StarRing R] [AddCommMonoid A] [StarAdd
     [Module R A] [StarModule R A] : StarModule R (Unitization R A) where
   star_smul r x := ext (by simp) (by simp)
 
-instance instStarRing [CommSemiring R] [StarRing R] [NonUnitalSemiring A] [StarRing A] [Module R A]
-    [IsScalarTower R A A] [SMulCommClass R A A] [StarModule R A] : StarRing (Unitization R A) :=
+instance instStarRing [CommSemiring R] [StarRing R] [NonUnitalNonAssocSemiring A] [StarRing A]
+    [Module R A] [StarModule R A] :
+    StarRing (Unitization R A) :=
   { Unitization.instStarAddMonoid with
     star_mul := fun x y =>
       ext (by simp [-star_mul']) (by simp [-star_mul', add_comm (star x.fst • star y.snd)]) }
chore: drop MulZeroClass. in mul_zero/zero_mul (#6682)

Search&replace MulZeroClass.mul_zero -> mul_zero, MulZeroClass.zero_mul -> zero_mul.

These were introduced by Mathport, as the full name of mul_zero is actually MulZeroClass.mul_zero (it's exported with the short name).

Diff
@@ -403,7 +403,7 @@ theorem inl_mul [Monoid R] [NonUnitalNonAssocSemiring A] [DistribMulAction R A]
     (inl (r₁ * r₂) : Unitization R A) = inl r₁ * inl r₂ :=
   ext rfl <|
     show (0 : A) = r₁ • (0 : A) + r₂ • (0 : A) + 0 * 0 by
-      simp only [smul_zero, add_zero, MulZeroClass.mul_zero]
+      simp only [smul_zero, add_zero, mul_zero]
 #align unitization.inl_mul Unitization.inl_mul
 
 theorem inl_mul_inl [Monoid R] [NonUnitalNonAssocSemiring A] [DistribMulAction R A] (r₁ r₂ : R) :
@@ -420,7 +420,7 @@ variable (R)
 @[simp]
 theorem inr_mul [Semiring R] [AddCommMonoid A] [Mul A] [SMulWithZero R A] (a₁ a₂ : A) :
     (↑(a₁ * a₂) : Unitization R A) = a₁ * a₂ :=
-  ext (MulZeroClass.mul_zero _).symm <|
+  ext (mul_zero _).symm <|
     show a₁ * a₂ = (0 : R) • a₂ + (0 : R) • a₁ + a₁ * a₂ by simp only [zero_smul, zero_add]
 #align unitization.coe_mul Unitization.inr_mul
 
@@ -428,16 +428,16 @@ end
 
 theorem inl_mul_inr [Semiring R] [NonUnitalNonAssocSemiring A] [DistribMulAction R A] (r : R)
     (a : A) : ((inl r : Unitization R A) * a) = ↑(r • a) :=
-  ext (MulZeroClass.mul_zero r) <|
+  ext (mul_zero r) <|
     show r • a + (0 : R) • (0 : A) + 0 * a = r • a by
-      rw [smul_zero, add_zero, MulZeroClass.zero_mul, add_zero]
+      rw [smul_zero, add_zero, zero_mul, add_zero]
 #align unitization.inl_mul_coe Unitization.inl_mul_inr
 
 theorem inr_mul_inl [Semiring R] [NonUnitalNonAssocSemiring A] [DistribMulAction R A] (r : R)
     (a : A) : a * (inl r : Unitization R A) = ↑(r • a) :=
-  ext (MulZeroClass.zero_mul r) <|
+  ext (zero_mul r) <|
     show (0 : R) • (0 : A) + r • a + a * 0 = r • a by
-      rw [smul_zero, zero_add, MulZeroClass.mul_zero, add_zero]
+      rw [smul_zero, zero_add, mul_zero, add_zero]
 #align unitization.coe_mul_inl Unitization.inr_mul_inl
 
 instance instMulOneClass [Monoid R] [NonUnitalNonAssocSemiring A] [DistribMulAction R A] :
@@ -446,11 +446,11 @@ instance instMulOneClass [Monoid R] [NonUnitalNonAssocSemiring A] [DistribMulAct
     one_mul := fun x =>
       ext (one_mul x.1) <|
         show (1 : R) • x.2 + x.1 • (0 : A) + 0 * x.2 = x.2 by
-          rw [one_smul, smul_zero, add_zero, MulZeroClass.zero_mul, add_zero]
+          rw [one_smul, smul_zero, add_zero, zero_mul, add_zero]
     mul_one := fun x =>
       ext (mul_one x.1) <|
         show (x.1 • (0 : A)) + (1 : R) • x.2 + x.2 * (0 : A) = x.2 by
-          rw [smul_zero, zero_add, one_smul, MulZeroClass.mul_zero, add_zero] }
+          rw [smul_zero, zero_add, one_smul, mul_zero, add_zero] }
 #align unitization.mul_one_class Unitization.instMulOneClass
 
 instance instNonAssocSemiring [Semiring R] [NonUnitalNonAssocSemiring A] [Module R A] :
@@ -458,13 +458,13 @@ instance instNonAssocSemiring [Semiring R] [NonUnitalNonAssocSemiring A] [Module
   { Unitization.instMulOneClass,
     Unitization.instAddCommMonoid with
     zero_mul := fun x =>
-      ext (MulZeroClass.zero_mul x.1) <|
+      ext (zero_mul x.1) <|
         show (0 : R) • x.2 + x.1 • (0 : A) + 0 * x.2 = 0 by
-          rw [zero_smul, zero_add, smul_zero, MulZeroClass.zero_mul, add_zero]
+          rw [zero_smul, zero_add, smul_zero, zero_mul, add_zero]
     mul_zero := fun x =>
-      ext (MulZeroClass.mul_zero x.1) <|
+      ext (mul_zero x.1) <|
         show x.1 • (0 : A) + (0 : R) • x.2 + x.2 * 0 = 0 by
-          rw [smul_zero, zero_add, zero_smul, MulZeroClass.mul_zero, add_zero]
+          rw [smul_zero, zero_add, zero_smul, mul_zero, add_zero]
     left_distrib := fun x₁ x₂ x₃ =>
       ext (mul_add x₁.1 x₂.1 x₃.1) <|
         show x₁.1 • (x₂.2 + x₃.2) + (x₂.1 + x₃.1) • x₁.2 + x₁.2 * (x₂.2 + x₃.2) =
feat: define RegularNormedAlgebra and add the norm on the Unitization (#5742)

This constructs a norm on the Unitization 𝕜 A of a (possibly non-unital) normed algebra A, subject to the condition that ContinuousLinearMap.mul 𝕜 A is an isometry. A norm on A satisfying this property is said to be regular so we add the class RegularNormedAlgebra where this construction makes sense.

This norm is particularly nice because, among norms on the unitization of a RegularNormedAlgebra, this norm is minimal. Moreover, it is the (necessarily unique) C⋆-norm on the unitization when the norm on A is a C⋆-norm (see #5393)

Diff
@@ -137,6 +137,14 @@ theorem inr_injective [Zero R] : Function.Injective ((↑) : A → Unitization R
   Function.LeftInverse.injective <| snd_inr _
 #align unitization.coe_injective Unitization.inr_injective
 
+instance instNontrivialLeft {𝕜 A} [Nontrivial 𝕜] [Nonempty A] :
+    Nontrivial (Unitization 𝕜 A) :=
+  nontrivial_prod_left
+
+instance instNontrivialRight {𝕜 A} [Nonempty 𝕜] [Nontrivial A] :
+    Nontrivial (Unitization 𝕜 A) :=
+  nontrivial_prod_right
+
 end Basic
 
 /-! ### Structures inherited from `Prod`
@@ -208,6 +216,11 @@ instance instModule [Semiring S] [AddCommMonoid R] [AddCommMonoid A] [Module S R
     Module S (Unitization R A) :=
   Prod.instModule
 
+variable (R A) in
+/-- The identity map between `Unitization R A` and `R × A` as an `AddEquiv`. -/
+def addEquiv [Add R] [Add A] : Unitization R A ≃+ R × A :=
+  AddEquiv.refl _
+
 @[simp]
 theorem fst_zero [Zero R] [Zero A] : (0 : Unitization R A).fst = 0 :=
   rfl
chore: banish Type _ and Sort _ (#6499)

We remove all possible occurences of Type _ and Sort _ in favor of Type* and Sort*.

This has nice performance benefits.

Diff
@@ -58,7 +58,7 @@ extension to a (unital) algebra homomorphism from `Unitization R A` to `B`.
 
 /-- The minimal unitization of a non-unital `R`-algebra `A`. This is just a type synonym for
 `R × A`.-/
-def Unitization (R A : Type _) :=
+def Unitization (R A : Type*) :=
   R × A
 #align unitization Unitization
 
@@ -66,7 +66,7 @@ namespace Unitization
 
 section Basic
 
-variable {R A : Type _}
+variable {R A : Type*}
 
 /-- The canonical inclusion `R → Unitization R A`. -/
 def inl [Zero A] (r : R) : Unitization R A :=
@@ -146,7 +146,7 @@ Additive operators and scalar multiplication operate elementwise. -/
 
 section Additive
 
-variable {T : Type _} {S : Type _} {R : Type _} {A : Type _}
+variable {T : Type*} {S : Type*} {R : Type*} {A : Type*}
 
 instance instInhabited [Inhabited R] [Inhabited A] : Inhabited (Unitization R A) :=
   instInhabitedProd
@@ -346,7 +346,7 @@ end Additive
 
 section Mul
 
-variable {R A : Type _}
+variable {R A : Type*}
 
 instance instOne [One R] [Zero A] : One (Unitization R A) :=
   ⟨(1, 0)⟩
@@ -528,7 +528,7 @@ end Mul
 
 section Star
 
-variable {R A : Type _}
+variable {R A : Type*}
 
 instance instStar [Star R] [Star A] : Star (Unitization R A) :=
   ⟨fun ra => (star ra.fst, star ra.snd)⟩
@@ -578,7 +578,7 @@ end Star
 
 section Algebra
 
-variable (S R A : Type _) [CommSemiring S] [CommSemiring R] [NonUnitalSemiring A] [Module R A]
+variable (S R A : Type*) [CommSemiring S] [CommSemiring R] [NonUnitalSemiring A] [Module R A]
   [IsScalarTower R A A] [SMulCommClass R A A] [Algebra S R] [DistribMulAction S A]
   [IsScalarTower S R A]
 
@@ -630,7 +630,7 @@ section coe
 /-- The coercion from a non-unital `R`-algebra `A` to its unitization `Unitization R A`
 realized as a non-unital algebra homomorphism. -/
 @[simps]
-def inrNonUnitalAlgHom (R A : Type _) [CommSemiring R] [NonUnitalSemiring A] [Module R A] :
+def inrNonUnitalAlgHom (R A : Type*) [CommSemiring R] [NonUnitalSemiring A] [Module R A] :
     A →ₙₐ[R] Unitization R A where
   toFun := (↑)
   map_smul' := inr_smul R
@@ -642,7 +642,7 @@ def inrNonUnitalAlgHom (R A : Type _) [CommSemiring R] [NonUnitalSemiring A] [Mo
 /-- The coercion from a non-unital `R`-algebra `A` to its unitization `unitization R A`
 realized as a non-unital star algebra homomorphism. -/
 @[simps!]
-def inrNonUnitalStarAlgHom (R A : Type _) [CommSemiring R] [StarAddMonoid R]
+def inrNonUnitalStarAlgHom (R A : Type*) [CommSemiring R] [StarAddMonoid R]
     [NonUnitalSemiring A] [Star A] [Module R A] :
     A →⋆ₙₐ[R] Unitization R A where
   toNonUnitalAlgHom := inrNonUnitalAlgHom R A
@@ -652,11 +652,11 @@ end coe
 
 section AlgHom
 
-variable {S R A : Type _} [CommSemiring S] [CommSemiring R] [NonUnitalSemiring A] [Module R A]
-  [SMulCommClass R A A] [IsScalarTower R A A] {B : Type _} [Semiring B] [Algebra S B] [Algebra S R]
-  [DistribMulAction S A] [IsScalarTower S R A] {C : Type _} [Semiring C] [Algebra R C]
+variable {S R A : Type*} [CommSemiring S] [CommSemiring R] [NonUnitalSemiring A] [Module R A]
+  [SMulCommClass R A A] [IsScalarTower R A A] {B : Type*} [Semiring B] [Algebra S B] [Algebra S R]
+  [DistribMulAction S A] [IsScalarTower S R A] {C : Type*} [Semiring C] [Algebra R C]
 
-theorem algHom_ext {F : Type _} [AlgHomClass F S (Unitization R A) B] {φ ψ : F}
+theorem algHom_ext {F : Type*} [AlgHomClass F S (Unitization R A) B] {φ ψ : F}
     (h : ∀ a : A, φ a = ψ a)
     (h' : ∀ r, φ (algebraMap R (Unitization R A) r) = ψ (algebraMap R (Unitization R A) r)) :
     φ = ψ := by
@@ -665,7 +665,7 @@ theorem algHom_ext {F : Type _} [AlgHomClass F S (Unitization R A) B] {φ ψ : F
   simp only [map_add, ← algebraMap_eq_inl, h, h']
 #align unitization.alg_hom_ext Unitization.algHom_ext
 
-lemma algHom_ext'' {F : Type _} [AlgHomClass F R (Unitization R A) C] {φ ψ : F}
+lemma algHom_ext'' {F : Type*} [AlgHomClass F R (Unitization R A) C] {φ ψ : F}
     (h : ∀ a : A, φ a = ψ a) : φ = ψ :=
   algHom_ext h (fun r => by simp only [AlgHomClass.commutes])
 
@@ -735,7 +735,7 @@ end AlgHom
 
 section StarAlgHom
 
-variable {R A C : Type _} [CommSemiring R] [StarRing R] [NonUnitalSemiring A] [StarRing A]
+variable {R A C : Type*} [CommSemiring R] [StarRing R] [NonUnitalSemiring A] [StarRing A]
 variable [Module R A] [SMulCommClass R A A] [IsScalarTower R A A] [StarModule R A]
 variable [Semiring C] [Algebra R C] [StarRing C] [StarModule R C]
 
chore: ensure all instances referred to directly have explicit names (#6423)

Per https://github.com/leanprover/lean4/issues/2343, we are going to need to change the automatic generation of instance names, as they become too long.

This PR ensures that everywhere in Mathlib that refers to an instance by name, that name is given explicitly, rather than being automatically generated.

There are four exceptions, which are now commented, with links to https://github.com/leanprover/lean4/issues/2343.

This was implemented by running Mathlib against a modified Lean that appended _ᾰ to all automatically generated names, and fixing everything.

Co-authored-by: Scott Morrison <scott.morrison@gmail.com>

Diff
@@ -152,35 +152,35 @@ instance instInhabited [Inhabited R] [Inhabited A] : Inhabited (Unitization R A)
   instInhabitedProd
 
 instance instZero [Zero R] [Zero A] : Zero (Unitization R A) :=
-  Prod.instZeroSum
+  Prod.instZero
 
 instance instAdd [Add R] [Add A] : Add (Unitization R A) :=
-  Prod.instAddSum
+  Prod.instAdd
 
 instance instNeg [Neg R] [Neg A] : Neg (Unitization R A) :=
-  Prod.instNegSum
+  Prod.instNeg
 
 instance instAddSemigroup [AddSemigroup R] [AddSemigroup A] : AddSemigroup (Unitization R A) :=
-  Prod.instAddSemigroupSum
+  Prod.instAddSemigroup
 
 instance instAddZeroClass [AddZeroClass R] [AddZeroClass A] : AddZeroClass (Unitization R A) :=
-  Prod.instAddZeroClassSum
+  Prod.instAddZeroClass
 
 instance instAddMonoid [AddMonoid R] [AddMonoid A] : AddMonoid (Unitization R A) :=
-  Prod.instAddMonoidSum
+  Prod.instAddMonoid
 
 instance instAddGroup [AddGroup R] [AddGroup A] : AddGroup (Unitization R A) :=
-  Prod.instAddGroupSum
+  Prod.instAddGroup
 
 instance instAddCommSemigroup [AddCommSemigroup R] [AddCommSemigroup A] :
     AddCommSemigroup (Unitization R A) :=
-  Prod.instAddCommSemigroupSum
+  Prod.instAddCommSemigroup
 
 instance instAddCommMonoid [AddCommMonoid R] [AddCommMonoid A] : AddCommMonoid (Unitization R A) :=
-  Prod.instAddCommMonoidSum
+  Prod.instAddCommMonoid
 
 instance instAddCommGroup [AddCommGroup R] [AddCommGroup A] : AddCommGroup (Unitization R A) :=
-  Prod.instAddCommGroupSum
+  Prod.instAddCommGroup
 
 instance instSMul [SMul S R] [SMul S A] : SMul S (Unitization R A) :=
   Prod.smul
@@ -206,7 +206,7 @@ instance instDistribMulAction [Monoid S] [AddMonoid R] [AddMonoid A] [DistribMul
 
 instance instModule [Semiring S] [AddCommMonoid R] [AddCommMonoid A] [Module S R] [Module S A] :
     Module S (Unitization R A) :=
-  Prod.module
+  Prod.instModule
 
 @[simp]
 theorem fst_zero [Zero R] [Zero A] : (0 : Unitization R A).fst = 0 :=
chore: script to replace headers with #align_import statements (#5979)

Open in Gitpod

Co-authored-by: Eric Wieser <wieser.eric@gmail.com> Co-authored-by: Scott Morrison <scott.morrison@gmail.com>

Diff
@@ -2,11 +2,6 @@
 Copyright (c) 2022 Jireh Loreaux. All rights reserved.
 Released under Apache 2.0 license as described in the file LICENSE.
 Authors: Jireh Loreaux
-
-! This file was ported from Lean 3 source module algebra.algebra.unitization
-! leanprover-community/mathlib commit 8f66240cab125b938b327d3850169d490cfbcdd8
-! Please do not edit these lines, except to modify the commit id
-! if you have ported upstream changes.
 -/
 import Mathlib.Algebra.Algebra.Basic
 import Mathlib.LinearAlgebra.Prod
@@ -14,6 +9,8 @@ import Mathlib.Algebra.Hom.NonUnitalAlg
 import Mathlib.Algebra.Star.StarAlgHom
 import Mathlib.Algebra.Star.Module
 
+#align_import algebra.algebra.unitization from "leanprover-community/mathlib"@"8f66240cab125b938b327d3850169d490cfbcdd8"
+
 /-!
 # Unitization of a non-unital algebra
 
chore: rename instances related to Unitization (#5741)
Diff
@@ -151,63 +151,63 @@ section Additive
 
 variable {T : Type _} {S : Type _} {R : Type _} {A : Type _}
 
-instance inhabited [Inhabited R] [Inhabited A] : Inhabited (Unitization R A) :=
+instance instInhabited [Inhabited R] [Inhabited A] : Inhabited (Unitization R A) :=
   instInhabitedProd
 
-instance zero [Zero R] [Zero A] : Zero (Unitization R A) :=
+instance instZero [Zero R] [Zero A] : Zero (Unitization R A) :=
   Prod.instZeroSum
 
-instance add [Add R] [Add A] : Add (Unitization R A) :=
+instance instAdd [Add R] [Add A] : Add (Unitization R A) :=
   Prod.instAddSum
 
-instance neg [Neg R] [Neg A] : Neg (Unitization R A) :=
+instance instNeg [Neg R] [Neg A] : Neg (Unitization R A) :=
   Prod.instNegSum
 
-instance addSemigroup [AddSemigroup R] [AddSemigroup A] : AddSemigroup (Unitization R A) :=
+instance instAddSemigroup [AddSemigroup R] [AddSemigroup A] : AddSemigroup (Unitization R A) :=
   Prod.instAddSemigroupSum
 
-instance addZeroClass [AddZeroClass R] [AddZeroClass A] : AddZeroClass (Unitization R A) :=
+instance instAddZeroClass [AddZeroClass R] [AddZeroClass A] : AddZeroClass (Unitization R A) :=
   Prod.instAddZeroClassSum
 
-instance addMonoid [AddMonoid R] [AddMonoid A] : AddMonoid (Unitization R A) :=
+instance instAddMonoid [AddMonoid R] [AddMonoid A] : AddMonoid (Unitization R A) :=
   Prod.instAddMonoidSum
 
-instance addGroup [AddGroup R] [AddGroup A] : AddGroup (Unitization R A) :=
+instance instAddGroup [AddGroup R] [AddGroup A] : AddGroup (Unitization R A) :=
   Prod.instAddGroupSum
 
-instance addCommSemigroup [AddCommSemigroup R] [AddCommSemigroup A] :
+instance instAddCommSemigroup [AddCommSemigroup R] [AddCommSemigroup A] :
     AddCommSemigroup (Unitization R A) :=
   Prod.instAddCommSemigroupSum
 
-instance addCommMonoid [AddCommMonoid R] [AddCommMonoid A] : AddCommMonoid (Unitization R A) :=
+instance instAddCommMonoid [AddCommMonoid R] [AddCommMonoid A] : AddCommMonoid (Unitization R A) :=
   Prod.instAddCommMonoidSum
 
-instance addCommGroup [AddCommGroup R] [AddCommGroup A] : AddCommGroup (Unitization R A) :=
+instance instAddCommGroup [AddCommGroup R] [AddCommGroup A] : AddCommGroup (Unitization R A) :=
   Prod.instAddCommGroupSum
 
-instance smul [SMul S R] [SMul S A] : SMul S (Unitization R A) :=
+instance instSMul [SMul S R] [SMul S A] : SMul S (Unitization R A) :=
   Prod.smul
 
-instance isScalarTower [SMul T R] [SMul T A] [SMul S R] [SMul S A] [SMul T S] [IsScalarTower T S R]
-    [IsScalarTower T S A] : IsScalarTower T S (Unitization R A) :=
+instance instIsScalarTower [SMul T R] [SMul T A] [SMul S R] [SMul S A] [SMul T S]
+    [IsScalarTower T S R] [IsScalarTower T S A] : IsScalarTower T S (Unitization R A) :=
   Prod.isScalarTower
 
-instance smulCommClass [SMul T R] [SMul T A] [SMul S R] [SMul S A] [SMulCommClass T S R]
+instance instSmulCommClass [SMul T R] [SMul T A] [SMul S R] [SMul S A] [SMulCommClass T S R]
     [SMulCommClass T S A] : SMulCommClass T S (Unitization R A) :=
   Prod.smulCommClass
 
-instance isCentralScalar [SMul S R] [SMul S A] [SMul Sᵐᵒᵖ R] [SMul Sᵐᵒᵖ A] [IsCentralScalar S R]
+instance instIsCentralScalar [SMul S R] [SMul S A] [SMul Sᵐᵒᵖ R] [SMul Sᵐᵒᵖ A] [IsCentralScalar S R]
     [IsCentralScalar S A] : IsCentralScalar S (Unitization R A) :=
   Prod.isCentralScalar
 
-instance mulAction [Monoid S] [MulAction S R] [MulAction S A] : MulAction S (Unitization R A) :=
+instance instMulAction [Monoid S] [MulAction S R] [MulAction S A] : MulAction S (Unitization R A) :=
   Prod.mulAction
 
-instance distribMulAction [Monoid S] [AddMonoid R] [AddMonoid A] [DistribMulAction S R]
+instance instDistribMulAction [Monoid S] [AddMonoid R] [AddMonoid A] [DistribMulAction S R]
     [DistribMulAction S A] : DistribMulAction S (Unitization R A) :=
   Prod.distribMulAction
 
-instance module [Semiring S] [AddCommMonoid R] [AddCommMonoid A] [Module S R] [Module S A] :
+instance instModule [Semiring S] [AddCommMonoid R] [AddCommMonoid A] [Module S R] [Module S A] :
     Module S (Unitization R A) :=
   Prod.module
 
@@ -351,10 +351,10 @@ section Mul
 
 variable {R A : Type _}
 
-instance one [One R] [Zero A] : One (Unitization R A) :=
+instance instOne [One R] [Zero A] : One (Unitization R A) :=
   ⟨(1, 0)⟩
 
-instance mul [Mul R] [Add A] [Mul A] [SMul R A] : Mul (Unitization R A) :=
+instance instMul [Mul R] [Add A] [Mul A] [SMul R A] : Mul (Unitization R A) :=
   ⟨fun x y => (x.1 * y.1, x.1 • y.2 + y.1 • x.2 + x.2 * y.2)⟩
 
 @[simp]
@@ -430,9 +430,9 @@ theorem inr_mul_inl [Semiring R] [NonUnitalNonAssocSemiring A] [DistribMulAction
       rw [smul_zero, zero_add, MulZeroClass.mul_zero, add_zero]
 #align unitization.coe_mul_inl Unitization.inr_mul_inl
 
-instance mulOneClass [Monoid R] [NonUnitalNonAssocSemiring A] [DistribMulAction R A] :
+instance instMulOneClass [Monoid R] [NonUnitalNonAssocSemiring A] [DistribMulAction R A] :
     MulOneClass (Unitization R A) :=
-  { Unitization.one, Unitization.mul with
+  { Unitization.instOne, Unitization.instMul with
     one_mul := fun x =>
       ext (one_mul x.1) <|
         show (1 : R) • x.2 + x.1 • (0 : A) + 0 * x.2 = x.2 by
@@ -441,12 +441,12 @@ instance mulOneClass [Monoid R] [NonUnitalNonAssocSemiring A] [DistribMulAction
       ext (mul_one x.1) <|
         show (x.1 • (0 : A)) + (1 : R) • x.2 + x.2 * (0 : A) = x.2 by
           rw [smul_zero, zero_add, one_smul, MulZeroClass.mul_zero, add_zero] }
-#align unitization.mul_one_class Unitization.mulOneClass
+#align unitization.mul_one_class Unitization.instMulOneClass
 
-instance nonAssocSemiring [Semiring R] [NonUnitalNonAssocSemiring A] [Module R A] :
+instance instNonAssocSemiring [Semiring R] [NonUnitalNonAssocSemiring A] [Module R A] :
     NonAssocSemiring (Unitization R A) :=
-  { Unitization.mulOneClass,
-    Unitization.addCommMonoid with
+  { Unitization.instMulOneClass,
+    Unitization.instAddCommMonoid with
     zero_mul := fun x =>
       ext (MulZeroClass.zero_mul x.1) <|
         show (0 : R) • x.2 + x.1 • (0 : A) + 0 * x.2 = 0 by
@@ -468,9 +468,9 @@ instance nonAssocSemiring [Semiring R] [NonUnitalNonAssocSemiring A] [Module R A
           simp only [add_smul, smul_add, add_mul]
           abel }
 
-instance monoid [CommMonoid R] [NonUnitalSemiring A] [DistribMulAction R A] [IsScalarTower R A A]
-    [SMulCommClass R A A] : Monoid (Unitization R A) :=
-  { Unitization.mulOneClass with
+instance instMonoid [CommMonoid R] [NonUnitalSemiring A] [DistribMulAction R A]
+    [IsScalarTower R A A] [SMulCommClass R A A] : Monoid (Unitization R A) :=
+  { Unitization.instMulOneClass with
     mul_assoc := fun x y z =>
       ext (mul_assoc x.1 y.1 z.1) <|
         show (x.1 * y.1) • z.2 + z.1 • (x.1 • y.2 + y.1 • x.2 + x.2 * y.2) +
@@ -483,33 +483,33 @@ instance monoid [CommMonoid R] [NonUnitalSemiring A] [DistribMulAction R A] [IsS
           rw [mul_comm z.1 y.1]
           abel }
 
-instance commMonoid [CommMonoid R] [NonUnitalCommSemiring A] [DistribMulAction R A]
+instance instCommMonoid [CommMonoid R] [NonUnitalCommSemiring A] [DistribMulAction R A]
     [IsScalarTower R A A] [SMulCommClass R A A] : CommMonoid (Unitization R A) :=
-  { Unitization.monoid with
+  { Unitization.instMonoid with
     mul_comm := fun x₁ x₂ =>
       ext (mul_comm x₁.1 x₂.1) <|
         show x₁.1 • x₂.2 + x₂.1 • x₁.2 + x₁.2 * x₂.2 = x₂.1 • x₁.2 + x₁.1 • x₂.2 + x₂.2 * x₁.2 by
           rw [add_comm (x₁.1 • x₂.2), mul_comm] }
 
-instance semiring [CommSemiring R] [NonUnitalSemiring A] [Module R A] [IsScalarTower R A A]
+instance instSemiring [CommSemiring R] [NonUnitalSemiring A] [Module R A] [IsScalarTower R A A]
     [SMulCommClass R A A] : Semiring (Unitization R A) :=
-  { Unitization.monoid, Unitization.nonAssocSemiring with }
+  { Unitization.instMonoid, Unitization.instNonAssocSemiring with }
 
-instance commSemiring [CommSemiring R] [NonUnitalCommSemiring A] [Module R A] [IsScalarTower R A A]
-    [SMulCommClass R A A] : CommSemiring (Unitization R A) :=
-  { Unitization.commMonoid, Unitization.nonAssocSemiring with }
+instance instCommSemiring [CommSemiring R] [NonUnitalCommSemiring A] [Module R A]
+    [IsScalarTower R A A] [SMulCommClass R A A] : CommSemiring (Unitization R A) :=
+  { Unitization.instCommMonoid, Unitization.instNonAssocSemiring with }
 
-instance nonAssocRing [CommRing R] [NonUnitalNonAssocRing A] [Module R A] :
+instance instNonAssocRing [CommRing R] [NonUnitalNonAssocRing A] [Module R A] :
     NonAssocRing (Unitization R A) :=
-  { Unitization.addCommGroup, Unitization.nonAssocSemiring with }
+  { Unitization.instAddCommGroup, Unitization.instNonAssocSemiring with }
 
-instance ring [CommRing R] [NonUnitalRing A] [Module R A] [IsScalarTower R A A]
+instance instRing [CommRing R] [NonUnitalRing A] [Module R A] [IsScalarTower R A A]
     [SMulCommClass R A A] : Ring (Unitization R A) :=
-  { Unitization.addCommGroup, Unitization.semiring with }
+  { Unitization.instAddCommGroup, Unitization.instSemiring with }
 
-instance commRing [CommRing R] [NonUnitalCommRing A] [Module R A] [IsScalarTower R A A]
+instance instCommRing [CommRing R] [NonUnitalCommRing A] [Module R A] [IsScalarTower R A A]
     [SMulCommClass R A A] : CommRing (Unitization R A) :=
-  { Unitization.addCommGroup, Unitization.commSemiring with }
+  { Unitization.instAddCommGroup, Unitization.instCommSemiring with }
 
 variable (R A)
 
@@ -533,7 +533,7 @@ section Star
 
 variable {R A : Type _}
 
-instance toStar [Star R] [Star A] : Star (Unitization R A) :=
+instance instStar [Star R] [Star A] : Star (Unitization R A) :=
   ⟨fun ra => (star ra.fst, star ra.snd)⟩
 
 @[simp]
@@ -558,18 +558,19 @@ theorem inr_star [AddMonoid R] [StarAddMonoid R] [Star A] (a : A) :
   ext (by simp only [fst_star, star_zero, fst_inr]) rfl
 #align unitization.coe_star Unitization.inr_star
 
-instance starAddMonoid [AddMonoid R] [AddMonoid A] [StarAddMonoid R] [StarAddMonoid A] :
+instance instStarAddMonoid [AddMonoid R] [AddMonoid A] [StarAddMonoid R] [StarAddMonoid A] :
     StarAddMonoid (Unitization R A)
     where
   star_involutive x := ext (star_star x.fst) (star_star x.snd)
   star_add x y := ext (star_add x.fst y.fst) (star_add x.snd y.snd)
 
-instance starModule [CommSemiring R] [StarRing R] [AddCommMonoid A] [StarAddMonoid A] [Module R A]
-    [StarModule R A] : StarModule R (Unitization R A) where star_smul r x := ext (by simp) (by simp)
+instance instStarModule [CommSemiring R] [StarRing R] [AddCommMonoid A] [StarAddMonoid A]
+    [Module R A] [StarModule R A] : StarModule R (Unitization R A) where
+  star_smul r x := ext (by simp) (by simp)
 
-instance starRing [CommSemiring R] [StarRing R] [NonUnitalSemiring A] [StarRing A] [Module R A]
+instance instStarRing [CommSemiring R] [StarRing R] [NonUnitalSemiring A] [StarRing A] [Module R A]
     [IsScalarTower R A A] [SMulCommClass R A A] [StarModule R A] : StarRing (Unitization R A) :=
-  { Unitization.starAddMonoid with
+  { Unitization.instStarAddMonoid with
     star_mul := fun x y =>
       ext (by simp [-star_mul']) (by simp [-star_mul', add_comm (star x.fst • star y.snd)]) }
 
@@ -584,7 +585,7 @@ variable (S R A : Type _) [CommSemiring S] [CommSemiring R] [NonUnitalSemiring A
   [IsScalarTower R A A] [SMulCommClass R A A] [Algebra S R] [DistribMulAction S A]
   [IsScalarTower S R A]
 
-instance algebra : Algebra S (Unitization R A) :=
+instance instAlgebra : Algebra S (Unitization R A) :=
   { (Unitization.inlRingHom R A).comp (algebraMap S R) with
     commutes' := fun s x => by
       induction' x using Unitization.ind with r a
@@ -595,7 +596,7 @@ instance algebra : Algebra S (Unitization R A) :=
       show _ = inl (algebraMap S R s) * _
       rw [mul_add, smul_add,Algebra.algebraMap_eq_smul_one, inl_mul_inl, inl_mul_inr, smul_one_mul,
         inl_smul, inr_smul, smul_one_smul] }
-#align unitization.algebra Unitization.algebra
+#align unitization.algebra Unitization.instAlgebra
 
 theorem algebraMap_eq_inl_comp : ⇑(algebraMap S (Unitization R A)) = inl ∘ algebraMap S R :=
   rfl
feat: add Unitization.starLift (#5102)

A NonUnitalStarAlgHom from A to C (over a ring R) lifts uniquely to a StarAlgHom from Unitization R A to C.

Diff
@@ -11,6 +11,8 @@ Authors: Jireh Loreaux
 import Mathlib.Algebra.Algebra.Basic
 import Mathlib.LinearAlgebra.Prod
 import Mathlib.Algebra.Hom.NonUnitalAlg
+import Mathlib.Algebra.Star.StarAlgHom
+import Mathlib.Algebra.Star.Module
 
 /-!
 # Unitization of a non-unital algebra
@@ -608,9 +610,9 @@ theorem algebraMap_eq_inl : ⇑(algebraMap R (Unitization R A)) = inl :=
   rfl
 #align unitization.algebra_map_eq_inl Unitization.algebraMap_eq_inl
 
-theorem algebraMap_eq_inl_hom : algebraMap R (Unitization R A) = inlRingHom R A :=
+theorem algebraMap_eq_inlRingHom : algebraMap R (Unitization R A) = inlRingHom R A :=
   rfl
-#align unitization.algebra_map_eq_inl_hom Unitization.algebraMap_eq_inl_hom
+#align unitization.algebra_map_eq_inl_hom Unitization.algebraMap_eq_inlRingHom
 
 /-- The canonical `R`-algebra projection `Unitization R A → R`. -/
 @[simps]
@@ -639,6 +641,15 @@ def inrNonUnitalAlgHom (R A : Type _) [CommSemiring R] [NonUnitalSemiring A] [Mo
   map_mul' := inr_mul R
 #align unitization.coe_non_unital_alg_hom Unitization.inrNonUnitalAlgHom
 
+/-- The coercion from a non-unital `R`-algebra `A` to its unitization `unitization R A`
+realized as a non-unital star algebra homomorphism. -/
+@[simps!]
+def inrNonUnitalStarAlgHom (R A : Type _) [CommSemiring R] [StarAddMonoid R]
+    [NonUnitalSemiring A] [Star A] [Module R A] :
+    A →⋆ₙₐ[R] Unitization R A where
+  toNonUnitalAlgHom := inrNonUnitalAlgHom R A
+  map_star' := inr_star
+
 end coe
 
 section AlgHom
@@ -647,14 +658,19 @@ variable {S R A : Type _} [CommSemiring S] [CommSemiring R] [NonUnitalSemiring A
   [SMulCommClass R A A] [IsScalarTower R A A] {B : Type _} [Semiring B] [Algebra S B] [Algebra S R]
   [DistribMulAction S A] [IsScalarTower S R A] {C : Type _} [Semiring C] [Algebra R C]
 
-theorem algHom_ext {φ ψ : Unitization R A →ₐ[S] B} (h : ∀ a : A, φ a = ψ a)
+theorem algHom_ext {F : Type _} [AlgHomClass F S (Unitization R A) B] {φ ψ : F}
+    (h : ∀ a : A, φ a = ψ a)
     (h' : ∀ r, φ (algebraMap R (Unitization R A) r) = ψ (algebraMap R (Unitization R A) r)) :
     φ = ψ := by
-  ext x
+  refine FunLike.ext φ ψ (fun x ↦ ?_)
   induction x using Unitization.ind
   simp only [map_add, ← algebraMap_eq_inl, h, h']
 #align unitization.alg_hom_ext Unitization.algHom_ext
 
+lemma algHom_ext'' {F : Type _} [AlgHomClass F R (Unitization R A) C] {φ ψ : F}
+    (h : ∀ a : A, φ a = ψ a) : φ = ψ :=
+  algHom_ext h (fun r => by simp only [AlgHomClass.commutes])
+
 /-- See note [partially-applied ext lemmas] -/
 @[ext 1100]
 theorem algHom_ext' {φ ψ : Unitization R A →ₐ[R] C}
@@ -662,7 +678,7 @@ theorem algHom_ext' {φ ψ : Unitization R A →ₐ[R] C}
       φ.toNonUnitalAlgHom.comp (inrNonUnitalAlgHom R A) =
         ψ.toNonUnitalAlgHom.comp (inrNonUnitalAlgHom R A)) :
     φ = ψ :=
-  algHom_ext (NonUnitalAlgHom.congr_fun h) (by simp [AlgHom.commutes])
+  algHom_ext'' (NonUnitalAlgHom.congr_fun h)
 #align unitization.alg_hom_ext' Unitization.algHom_ext'
 
 /- porting note: this was extracted from `Unitization.lift` below, where it had previously
@@ -698,7 +714,7 @@ def _root_.NonUnitalAlgHom.toAlgHom (φ :A →ₙₐ[R] C) : Unitization R A →
 
 /-- Non-unital algebra homomorphisms from `A` into a unital `R`-algebra `C` lift uniquely to
 `Unitization R A →ₐ[R] C`. This is the universal property of the unitization. -/
-@[simps]
+@[simps! apply symm_apply apply_apply]
 def lift : (A →ₙₐ[R] C) ≃ (Unitization R A →ₐ[R] C) where
   toFun := NonUnitalAlgHom.toAlgHom
   invFun φ := φ.toNonUnitalAlgHom.comp (inrNonUnitalAlgHom R A)
@@ -711,6 +727,46 @@ theorem lift_symm_apply_apply (φ : Unitization R A →ₐ[R] C) (a : A) :
   rfl
 #align unitization.lift_symm_apply Unitization.lift_symm_apply
 
+@[simp]
+lemma _root_.NonUnitalAlgHom.toAlgHom_zero :
+    ⇑(0 : A →ₙₐ[R] R).toAlgHom = Unitization.fst := by
+  ext
+  simp
+
 end AlgHom
 
+section StarAlgHom
+
+variable {R A C : Type _} [CommSemiring R] [StarRing R] [NonUnitalSemiring A] [StarRing A]
+variable [Module R A] [SMulCommClass R A A] [IsScalarTower R A A] [StarModule R A]
+variable [Semiring C] [Algebra R C] [StarRing C] [StarModule R C]
+
+/-- See note [partially-applied ext lemmas] -/
+@[ext]
+theorem starAlgHom_ext {φ ψ : Unitization R A →⋆ₐ[R] C}
+    (h : (φ : Unitization R A →⋆ₙₐ[R] C).comp (Unitization.inrNonUnitalStarAlgHom R A) =
+      (ψ : Unitization R A →⋆ₙₐ[R] C).comp (Unitization.inrNonUnitalStarAlgHom R A)) :
+    φ = ψ :=
+  Unitization.algHom_ext'' <| FunLike.congr_fun h
+
+/-- Non-unital star algebra homomorphisms from `A` into a unital star `R`-algebra `C` lift uniquely
+to `Unitization R A →⋆ₐ[R] C`. This is the universal property of the unitization. -/
+@[simps! apply symm_apply apply_apply]
+def starLift : (A →⋆ₙₐ[R] C) ≃ (Unitization R A →⋆ₐ[R] C) :=
+{ toFun := fun φ ↦
+  { toAlgHom := Unitization.lift φ.toNonUnitalAlgHom
+    map_star' := fun x => by
+      induction x using Unitization.ind
+      simp [map_star] }
+  invFun := fun φ ↦ φ.toNonUnitalStarAlgHom.comp (inrNonUnitalStarAlgHom R A),
+  left_inv := fun φ => by ext; simp,
+  right_inv := fun φ => Unitization.algHom_ext'' <| by simp }
+
+@[simp]
+theorem starLift_symm_apply_apply (φ : Unitization R A →ₐ[R] C) (a : A) :
+    Unitization.lift.symm φ a = φ a :=
+  rfl
+
+end StarAlgHom
+
 end Unitization
feat: add missing NonAssocRing, Ring and CommRing instances for Unitization (#5101)
Diff
@@ -497,6 +497,18 @@ instance commSemiring [CommSemiring R] [NonUnitalCommSemiring A] [Module R A] [I
     [SMulCommClass R A A] : CommSemiring (Unitization R A) :=
   { Unitization.commMonoid, Unitization.nonAssocSemiring with }
 
+instance nonAssocRing [CommRing R] [NonUnitalNonAssocRing A] [Module R A] :
+    NonAssocRing (Unitization R A) :=
+  { Unitization.addCommGroup, Unitization.nonAssocSemiring with }
+
+instance ring [CommRing R] [NonUnitalRing A] [Module R A] [IsScalarTower R A A]
+    [SMulCommClass R A A] : Ring (Unitization R A) :=
+  { Unitization.addCommGroup, Unitization.semiring with }
+
+instance commRing [CommRing R] [NonUnitalCommRing A] [Module R A] [IsScalarTower R A A]
+    [SMulCommClass R A A] : CommRing (Unitization R A) :=
+  { Unitization.addCommGroup, Unitization.commSemiring with }
+
 variable (R A)
 
 /-- The canonical inclusion of rings `R →+* Unitization R A`. -/
chore: convert lambda in docs to fun (#5045)

Found with git grep -n "λ [a-zA-Z_ ]*,"

Diff
@@ -26,7 +26,7 @@ Note, when `A` is a *unital* `R`-algebra, then `Unitization R A` constructs a ne
 identity different from the old one, and so in general `Unitization R A` and `A` will not be
 isomorphic even in the unital case. This approach actually has nice functorial properties.
 
-There is a natural coercion from `A` to `Unitization R A` given by `λ a, (0, a)`, the image
+There is a natural coercion from `A` to `Unitization R A` given by `fun a ↦ (0, a)`, the image
 of which is a proper ideal (TODO), and when `R` is a field this ideal is maximal. Moreover,
 this ideal is always an essential ideal (it has nontrivial intersection with every other nontrivial
 ideal).
chore(*): tweak priorities for linear algebra (#3840)

We make sure that the canonical path from NonAssocSemiring to Ring passes through Semiring, as this is a path which is followed all the time in linear algebra where the defining semilinear map σ : R →+* S depends on the NonAssocSemiring structure of R and S while the module definition depends on the Semiring structure.

Tt is not currently possible to adjust priorities by hand (see lean4#2115). Instead, the last declared instance is used, so we make sure that Semiring is declared after NonAssocRing, so that Semiring -> NonAssocSemiring is tried before NonAssocRing -> NonAssocSemiring.

Diff
@@ -466,7 +466,6 @@ instance nonAssocSemiring [Semiring R] [NonUnitalNonAssocSemiring A] [Module R A
           simp only [add_smul, smul_add, add_mul]
           abel }
 
-set_option synthInstance.etaExperiment true in
 instance monoid [CommMonoid R] [NonUnitalSemiring A] [DistribMulAction R A] [IsScalarTower R A A]
     [SMulCommClass R A A] : Monoid (Unitization R A) :=
   { Unitization.mulOneClass with
@@ -651,8 +650,6 @@ theorem algHom_ext' {φ ψ : Unitization R A →ₐ[R] C}
       φ.toNonUnitalAlgHom.comp (inrNonUnitalAlgHom R A) =
         ψ.toNonUnitalAlgHom.comp (inrNonUnitalAlgHom R A)) :
     φ = ψ :=
-    -- porting note: this is due to lean4#2074 and it succeeds with
-    -- `set_option synthInstance.etaExperiment true`
   algHom_ext (NonUnitalAlgHom.congr_fun h) (by simp [AlgHom.commutes])
 #align unitization.alg_hom_ext' Unitization.algHom_ext'
 
chore: bye-bye, solo bys! (#3825)

This PR puts, with one exception, every single remaining by that lies all by itself on its own line to the previous line, thus matching the current behaviour of start-port.sh. The exception is when the by begins the second or later argument to a tuple or anonymous constructor; see https://github.com/leanprover-community/mathlib4/pull/3825#discussion_r1186702599.

Essentially this is s/\n *by$/ by/g, but with manual editing to satisfy the linter's max-100-char-line requirement. The Python style linter is also modified to catch these "isolated bys".

Diff
@@ -455,18 +455,14 @@ instance nonAssocSemiring [Semiring R] [NonUnitalNonAssocSemiring A] [Module R A
           rw [smul_zero, zero_add, zero_smul, MulZeroClass.mul_zero, add_zero]
     left_distrib := fun x₁ x₂ x₃ =>
       ext (mul_add x₁.1 x₂.1 x₃.1) <|
-        show
-          x₁.1 • (x₂.2 + x₃.2) + (x₂.1 + x₃.1) • x₁.2 + x₁.2 * (x₂.2 + x₃.2) =
-            x₁.1 • x₂.2 + x₂.1 • x₁.2 + x₁.2 * x₂.2 + (x₁.1 • x₃.2 + x₃.1 • x₁.2 + x₁.2 * x₃.2)
-          by
+        show x₁.1 • (x₂.2 + x₃.2) + (x₂.1 + x₃.1) • x₁.2 + x₁.2 * (x₂.2 + x₃.2) =
+            x₁.1 • x₂.2 + x₂.1 • x₁.2 + x₁.2 * x₂.2 + (x₁.1 • x₃.2 + x₃.1 • x₁.2 + x₁.2 * x₃.2) by
           simp only [smul_add, add_smul, mul_add]
           abel
     right_distrib := fun x₁ x₂ x₃ =>
       ext (add_mul x₁.1 x₂.1 x₃.1) <|
-        show
-          (x₁.1 + x₂.1) • x₃.2 + x₃.1 • (x₁.2 + x₂.2) + (x₁.2 + x₂.2) * x₃.2 =
-            x₁.1 • x₃.2 + x₃.1 • x₁.2 + x₁.2 * x₃.2 + (x₂.1 • x₃.2 + x₃.1 • x₂.2 + x₂.2 * x₃.2)
-          by
+        show (x₁.1 + x₂.1) • x₃.2 + x₃.1 • (x₁.2 + x₂.2) + (x₁.2 + x₂.2) * x₃.2 =
+            x₁.1 • x₃.2 + x₃.1 • x₁.2 + x₁.2 * x₃.2 + (x₂.1 • x₃.2 + x₃.1 • x₂.2 + x₂.2 * x₃.2) by
           simp only [add_smul, smul_add, add_mul]
           abel }
 
@@ -476,12 +472,10 @@ instance monoid [CommMonoid R] [NonUnitalSemiring A] [DistribMulAction R A] [IsS
   { Unitization.mulOneClass with
     mul_assoc := fun x y z =>
       ext (mul_assoc x.1 y.1 z.1) <|
-        show
-          (x.1 * y.1) • z.2 + z.1 • (x.1 • y.2 + y.1 • x.2 + x.2 * y.2) +
-              (x.1 • y.2 + y.1 • x.2 + x.2 * y.2) * z.2 =
+        show (x.1 * y.1) • z.2 + z.1 • (x.1 • y.2 + y.1 • x.2 + x.2 * y.2) +
+            (x.1 • y.2 + y.1 • x.2 + x.2 * y.2) * z.2 =
             x.1 • (y.1 • z.2 + z.1 • y.2 + y.2 * z.2) + (y.1 * z.1) • x.2 +
-              x.2 * (y.1 • z.2 + z.1 • y.2 + y.2 * z.2)
-          by
+            x.2 * (y.1 • z.2 + z.1 • y.2 + y.2 * z.2) by
           simp only [smul_add, mul_add, add_mul, smul_smul, smul_mul_assoc, mul_smul_comm,
             mul_assoc]
           rw [mul_comm z.1 x.1]
feat: port GroupTheory.FreeProduct (#2979)
Diff
@@ -651,7 +651,7 @@ theorem algHom_ext {φ ψ : Unitization R A →ₐ[S] B} (h : ∀ a : A, φ a =
 #align unitization.alg_hom_ext Unitization.algHom_ext
 
 /-- See note [partially-applied ext lemmas] -/
-@[ext 1001]
+@[ext 1100]
 theorem algHom_ext' {φ ψ : Unitization R A →ₐ[R] C}
     (h :
       φ.toNonUnitalAlgHom.comp (inrNonUnitalAlgHom R A) =
feat: port Algebra.Algebra.Unitization (#2892)

Dependencies 8 + 374

375 files ported (97.9%)
155785 lines ported (98.0%)
Show graph

The unported dependencies are