-- Lean 4 proof step from Mathlib.LinearAlgebra.TensorProduct.Graded.Internal (goal)
Goal:
R : Type u_1
ι : Type u_2
A : Type u_3
B : Type u_4
inst : CommSemiring ι
inst_1 : DecidableEq ι
inst_2 : CommRing R
inst_3 : Ring A
inst_4 : Ring B
inst_5 : Algebra R A
inst_6 : Algebra R B
𝒜 : ι → Submodule R A
ℬ : ι → Submodule R B
inst_7 : GradedAlgebra 𝒜
inst_8 : GradedAlgebra ℬ
inst_9 : Module ι (Additive ℤˣ)
j₁ i₂ : ι
a₁ : A
b₁ : ↥(ℬ j₁)
a₂ : ↥(𝒜 i₂)
b₂ : B
⊢ (of R 𝒜 ℬ : (a : A ⊗[R] B) → 𝒜 ᵍ⊗[R] ℬ)
      (((LinearEquiv.symm
              (TensorProduct.congr (↑(decomposeAlgEquiv 𝒜) : A ≃ₗ[R] ⨁ (i : ι), ↥(𝒜 i))
                (↑(decomposeAlgEquiv ℬ) : B ≃ₗ[R] ⨁ (i : ι), ↥(ℬ i))) :
            ((⨁ (i : ι), ↥(𝒜 i)) ⊗[R] ⨁ (i : ι), ↥(ℬ i)) ≃ₗ[R] A ⊗[R] B) :
          (a : (⨁ (i : ι), ↥(𝒜 i)) ⊗[R] ⨁ (i : ι), ↥(ℬ i)) → A ⊗[R] B)
        (HSMul.hSMul (β := (⨁ (i : ι), ↥(𝒜 i)) ⊗[R] ⨁ (i : ι), ↥(ℬ i)) (HPow.hPow (α := ℤˣ) (-1) (j₁ * i₂))
          (HMul.hMul (α := ⨁ (i : ι), ↥(𝒜 i)) (β := ⨁ (i : ι), ↥(𝒜 i))
              ((decompose 𝒜 : (a : A) → ⨁ (i : ι), ↥(𝒜 i)) a₁ : ⨁ (i : ι), ↥(𝒜 i))
              (((DirectSum.of.{u_2, u_3} (fun (x : ι) ↦ ↥(𝒜 x)) i₂ : ↥(𝒜 i₂) →+ ⨁ (i : ι), ↥(𝒜 i)) :
                    (a : ↥(𝒜 i₂)) → ⨁ (i : ι), ↥(𝒜 i))
                  a₂ :
                ⨁ (i : ι), ↥(𝒜 i)) ⊗ₜ[R]
            HMul.hMul (α := ⨁ (i : ι), ↥(ℬ i)) (β := ⨁ (i : ι), ↥(ℬ i))
              (((DirectSum.of.{u_2, u_4} (fun (x : ι) ↦ ↥(ℬ x)) j₁ : ↥(ℬ j₁) →+ ⨁ (i : ι), ↥(ℬ i)) :
                    (a : ↥(ℬ j₁)) → ⨁ (i : ι), ↥(ℬ i))
                  b₁ :
                ⨁ (i : ι), ↥(ℬ i))
              ((decompose ℬ : (a : B) → ⨁ (i : ι), ↥(ℬ i)) b₂ : ⨁ (i : ι), ↥(ℬ i))))) =
    HSMul.hSMul (β := 𝒜 ᵍ⊗[R] ℬ) (HPow.hPow (α := ℤˣ) (-1) (j₁ * i₂))
      ((of R 𝒜 ℬ : (a : A ⊗[R] B) → 𝒜 ᵍ⊗[R] ℬ) ((a₁ * (↑a₂ : A)) ⊗ₜ[R] ((↑b₁ : B) * b₂)) : 𝒜 ᵍ⊗[R] ℬ)
have rw : HSMul.hSMul (β := 𝒜 ᵍ⊗[R] ℬ) (HPow.hPow (α := ℤˣ) (-1) (j₁ * i₂))
    ((of R 𝒜 ℬ : (a : A ⊗[R] B) → 𝒜 ᵍ⊗[R] ℬ)
        (((LinearEquiv.symm
                (TensorProduct.congr (↑(decomposeAlgEquiv 𝒜) : A ≃ₗ[R] ⨁ (i : ι), ↥(𝒜 i))
                  (↑(decomposeAlgEquiv ℬ) : B ≃ₗ[R] ⨁ (i : ι), ↥(ℬ i))) :
              ((⨁ (i : ι), ↥(𝒜 i)) ⊗[R] ⨁ (i : ι), ↥(ℬ i)) ≃ₗ[R] A ⊗[R] B) :
            (a : (⨁ (i : ι), ↥(𝒜 i)) ⊗[R] ⨁ (i : ι), ↥(ℬ i)) → A ⊗[R] B)
          (HMul.hMul (α := ⨁ (i : ι), ↥(𝒜 i)) (β := ⨁ (i : ι), ↥(𝒜 i))
              ((decompose 𝒜 : (a : A) → ⨁ (i : ι), ↥(𝒜 i)) a₁ : ⨁ (i : ι), ↥(𝒜 i))
              (((DirectSum.of.{u_2, u_3} (fun (x : ι) ↦ ↥(𝒜 x)) i₂ : ↥(𝒜 i₂) →+ ⨁ (i : ι), ↥(𝒜 i)) :
                    (a : ↥(𝒜 i₂)) → ⨁ (i : ι), ↥(𝒜 i))
                  a₂ :
                ⨁ (i : ι), ↥(𝒜 i)) ⊗ₜ[R]
            HMul.hMul (α := ⨁ (i : ι), ↥(ℬ i)) (β := ⨁ (i : ι), ↥(ℬ i))
              (((DirectSum.of.{u_2, u_4} (fun (x : ι) ↦ ↥(ℬ x)) j₁ : ↥(ℬ j₁) →+ ⨁ (i : ι), ↥(ℬ i)) :
                    (a : ↥(ℬ j₁)) → ⨁ (i : ι), ↥(ℬ i))
                  b₁ :
                ⨁ (i : ι), ↥(ℬ i))
              ((decompose ℬ : (a : B) → ⨁ (i : ι), ↥(ℬ i)) b₂ : ⨁ (i : ι), ↥(ℬ i)))) :
      𝒜 ᵍ⊗[R] ℬ) =
  HSMul.hSMul (β := 𝒜 ᵍ⊗[R] ℬ) (HPow.hPow (α := ℤˣ) (-1) (j₁ * i₂))
    ((of R 𝒜 ℬ : (a : A ⊗[R] B) → 𝒜 ᵍ⊗[R] ℬ) ((a₁ * (↑a₂ : A)) ⊗ₜ[R] ((↑b₁ : B) * b₂)) : 𝒜 ᵍ⊗[R] ℬ)
Tactic: rw [@Units.smul_def _ _ (_) (_), ← Int.cast_smul_eq_zsmul R, LinearEquiv.map_smul, map_smul,
    Int.cast_smul_eq_zsmul R, ← @Units.smul_def _ _ (_) (_)]