Transfer algebraic structures across Equivs #
This continues the pattern set in Mathlib/Algebra/Group/TransferInstance.lean.
An equivalence e : α ≃ β gives a ring equivalence α ≃+* β
where the ring structure on α is
the one obtained by transporting a ring structure on β back along e.
Instances For
@[simp]
theorem
Equiv.ringEquiv_apply
{α : Type u_1}
{β : Type u_2}
(e : α ≃ β)
[Add β]
[Mul β]
(a : α)
:
e.ringEquiv a = e a
theorem
Equiv.ringEquiv_symm_apply
{α : Type u_1}
{β : Type u_2}
(e : α ≃ β)
[Add β]
[Mul β]
(b : β)
:
(RingEquiv.symm e.ringEquiv) b = e.symm b
@[reducible, inline]
abbrev
Equiv.nonUnitalNonAssocSemiring
{α : Type u_1}
{β : Type u_2}
(e : α ≃ β)
[NonUnitalNonAssocSemiring β]
:
Transfer NonUnitalNonAssocSemiring across an Equiv
Instances For
@[reducible, inline]
Transfer NonUnitalSemiring across an Equiv
Instances For
@[reducible, inline]
Transfer AddMonoidWithOne across an Equiv
Instances For
@[reducible, inline]
Transfer AddGroupWithOne across an Equiv
Instances For
@[reducible, inline]
Transfer NonAssocSemiring across an Equiv
Instances For
@[reducible, inline]
abbrev
Equiv.nonUnitalCommSemiring
{α : Type u_1}
{β : Type u_2}
(e : α ≃ β)
[NonUnitalCommSemiring β]
:
Transfer NonUnitalCommSemiring across an Equiv
Instances For
@[reducible, inline]
Transfer CommSemiring across an Equiv
Instances For
@[reducible, inline]
abbrev
Equiv.nonUnitalNonAssocRing
{α : Type u_1}
{β : Type u_2}
(e : α ≃ β)
[NonUnitalNonAssocRing β]
:
Transfer NonUnitalNonAssocRing across an Equiv
Instances For
@[reducible, inline]
Transfer NonUnitalRing across an Equiv
Instances For
@[reducible, inline]
Transfer NonAssocRing across an Equiv
Instances For
@[reducible, inline]
Instances For
@[reducible, inline]
Transfer NonUnitalCommRing across an Equiv