∀ {A : Type u_10} {B : Type u_11} [inst : Monoid A] [inst_1 : Monoid B] (f : A →* B) (g : B → A)
  (h₁ : Function.LeftInverse g ⇑f) (h₂ : Function.RightInverse g ⇑f),
  f.inverse g h₁ h₂ = { toFun := g, map_one' := ⋯, map_mul' := ⋯ }