{R : Type u_1} →
  {M : Type u_3} →
    {N : Type u_5} →
      [inst : AddCommGroup M] →
        [inst_1 : AddCommGroup N] →
          [inst_2 : CommRing R] →
            [inst_3 : Module R M] →
              [inst_4 : Module R N] → (p : M →ₗ[R] N →ₗ[R] R) → [p.IsPerfPair] → M ≃ₗ[R] Module.Dual R N