Theorem: DistribMulActionHom.ext_ring
File: Mathlib/GroupTheory/GroupAction/Hom.lean

Proof steps:
state_before: M : Type u_1
inst✝²⁹ : Monoid M
N : Type u_2
inst✝²⁸ : Monoid N
P : Type u_3
inst✝²⁷ : Monoid P
φ : M →* N
φ' : N →* M
ψ : N →* P
χ : M →* P
A : Type u_4
inst✝²⁶ : AddMonoid A
inst✝²⁵ : DistribMulAction M A
B : Type u_5
inst✝²⁴ : AddMonoid B
inst✝²³ : DistribMulAction N B
B₁ : Type u_6
inst✝²² : AddMonoid B₁
inst✝²¹ : DistribMulAction M B₁
C : Type u_7
inst✝²⁰ : AddMonoid C
inst✝¹⁹ : DistribMulAction P C
A' : Type u_8
inst✝¹⁸ : AddGroup A'
inst✝¹⁷ : DistribMulAction M A'
B' : Type u_9
inst✝¹⁶ : AddGroup B'
inst✝¹⁵ : DistribMulAction N B'
F : Type u_10
inst✝¹⁴ : FunLike F A B
R : Type u_11
inst✝¹³ : Semiring R
inst✝¹² : MulSemiringAction M R
R' : Type u_12
inst✝¹¹ : Ring R'
inst✝¹⁰ : MulSemiringAction M R'
S : Type u_13
inst✝⁹ : Semiring S
inst✝⁸ : MulSemiringAction N S
S' : Type u_14
inst✝⁷ : Ring S'
inst✝⁶ : MulSemiringAction N S'
T : Type u_15
inst✝⁵ : Semiring T
inst✝⁴ : MulSemiringAction P T
M' : Type ?u.130188
N' : Type u_16
inst✝³ : AddMonoid M'
inst✝² : DistribMulAction R M'
inst✝¹ : AddMonoid N'
inst✝ : DistribMulAction S N'
σ : R →* S
f g : R →ₑ+[σ] N'
h : f 1 = g 1
⊢ f = g
state_after: case a
M : Type u_1
inst✝²⁹ : Monoid M
N : Type u_2
inst✝²⁸ : Monoid N
P : Type u_3
inst✝²⁷ : Monoid P
φ : M →* N
φ' : N →* M
ψ : N →* P
χ : M →* P
A : Type u_4
inst✝²⁶ : AddMonoid A
inst✝²⁵ : DistribMulAction M A
B : Type u_5
inst✝²⁴ : AddMonoid B
inst✝²³ : DistribMulAction N B
B₁ : Type u_6
inst✝²² : AddMonoid B₁
inst✝²¹ : DistribMulAction M B₁
C : Type u_7
inst✝²⁰ : AddMonoid C
inst✝¹⁹ : DistribMulAction P C
A' : Type u_8
inst✝¹⁸ : AddGroup A'
inst✝¹⁷ : DistribMulAction M A'
B' : Type u_9
inst✝¹⁶ : AddGroup B'
inst✝¹⁵ : DistribMulAction N B'
F : Type u_10
inst✝¹⁴ : FunLike F A B
R : Type u_11
inst✝¹³ : Semiring R
inst✝¹² : MulSemiringAction M R
R' : Type u_12
inst✝¹¹ : Ring R'
inst✝¹⁰ : MulSemiringAction M R'
S : Type u_13
inst✝⁹ : Semiring S
inst✝⁸ : MulSemiringAction N S
S' : Type u_14
inst✝⁷ : Ring S'
inst✝⁶ : MulSemiringAction N S'
T : Type u_15
inst✝⁵ : Semiring T
inst✝⁴ : MulSemiringAction P T
M' : Type ?u.130188
N' : Type u_16
inst✝³ : AddMonoid M'
inst✝² : DistribMulAction R M'
inst✝¹ : AddMonoid N'
inst✝ : DistribMulAction S N'
σ : R →* S
f g : R →ₑ+[σ] N'
h : f 1 = g 1
x : R
⊢ f x = g x
tactic: ext x
state_before: case a
M : Type u_1
inst✝²⁹ : Monoid M
N : Type u_2
inst✝²⁸ : Monoid N
P : Type u_3
inst✝²⁷ : Monoid P
φ : M →* N
φ' : N →* M
ψ : N →* P
χ : M →* P
A : Type u_4
inst✝²⁶ : AddMonoid A
inst✝²⁵ : DistribMulAction M A
B : Type u_5
inst✝²⁴ : AddMonoid B
inst✝²³ : DistribMulAction N B
B₁ : Type u_6
inst✝²² : AddMonoid B₁
inst✝²¹ : DistribMulAction M B₁
C : Type u_7
inst✝²⁰ : AddMonoid C
inst✝¹⁹ : DistribMulAction P C
A' : Type u_8
inst✝¹⁸ : AddGroup A'
inst✝¹⁷ : DistribMulAction M A'
B' : Type u_9
inst✝¹⁶ : AddGroup B'
inst✝¹⁵ : DistribMulAction N B'
F : Type u_10
inst✝¹⁴ : FunLike F A B
R : Type u_11
inst✝¹³ : Semiring R
inst✝¹² : MulSemiringAction M R
R' : Type u_12
inst✝¹¹ : Ring R'
inst✝¹⁰ : MulSemiringAction M R'
S : Type u_13
inst✝⁹ : Semiring S
inst✝⁸ : MulSemiringAction N S
S' : Type u_14
inst✝⁷ : Ring S'
inst✝⁶ : MulSemiringAction N S'
T : Type u_15
inst✝⁵ : Semiring T
inst✝⁴ : MulSemiringAction P T
M' : Type ?u.130188
N' : Type u_16
inst✝³ : AddMonoid M'
inst✝² : DistribMulAction R M'
inst✝¹ : AddMonoid N'
inst✝ : DistribMulAction S N'
σ : R →* S
f g : R →ₑ+[σ] N'
h : f 1 = g 1
x : R
⊢ f x = g x
state_after: no goals
tactic: rw [← mul_one x, ← smul_eq_mul R, f.map_smulₑ, g.map_smulₑ, h]