@[instance]
Equations
- opposite.has_add α = {add := λ (x y : αᵒᵖ), opposite.op (opposite.unop x + opposite.unop y)}
@[instance]
Equations
- opposite.add_semigroup α = {add := has_add.add (opposite.has_add α), add_assoc := _}
@[instance]
Equations
- opposite.add_left_cancel_semigroup α = {add := add_semigroup.add (opposite.add_semigroup α), add_assoc := _, add_left_cancel := _}
@[instance]
Equations
- opposite.add_right_cancel_semigroup α = {add := add_semigroup.add (opposite.add_semigroup α), add_assoc := _, add_right_cancel := _}
@[instance]
Equations
- opposite.add_comm_semigroup α = {add := add_semigroup.add (opposite.add_semigroup α), add_assoc := _, add_comm := _}
@[instance]
Equations
- opposite.has_zero α = {zero := opposite.op 0}
@[instance]
@[simp]
theorem
opposite.unop_eq_zero_iff
(α : Type u)
[has_zero α]
(a : αᵒᵖ) :
opposite.unop a = 0 ↔ a = 0
@[simp]
@[instance]
Equations
- opposite.add_monoid α = {add := add_semigroup.add (opposite.add_semigroup α), add_assoc := _, zero := 0, zero_add := _, add_zero := _}
@[instance]
Equations
- opposite.add_comm_monoid α = {add := add_monoid.add (opposite.add_monoid α), add_assoc := _, zero := add_monoid.zero (opposite.add_monoid α), zero_add := _, add_zero := _, add_comm := _}
@[instance]
Equations
- opposite.has_neg α = {neg := λ (x : αᵒᵖ), opposite.op (-opposite.unop x)}
@[instance]
Equations
- opposite.add_group α = {add := add_monoid.add (opposite.add_monoid α), add_assoc := _, zero := add_monoid.zero (opposite.add_monoid α), zero_add := _, add_zero := _, neg := has_neg.neg (opposite.has_neg α), add_left_neg := _}
@[instance]
Equations
- opposite.add_comm_group α = {add := add_group.add (opposite.add_group α), add_assoc := _, zero := add_group.zero (opposite.add_group α), zero_add := _, add_zero := _, neg := add_group.neg (opposite.add_group α), add_left_neg := _, add_comm := _}
@[instance]
Equations
- opposite.has_mul α = {mul := λ (x y : αᵒᵖ), opposite.op (opposite.unop y * opposite.unop x)}
@[instance]
Equations
- opposite.semigroup α = {mul := has_mul.mul (opposite.has_mul α), mul_assoc := _}
@[instance]
Equations
- opposite.left_cancel_semigroup α = {mul := semigroup.mul (opposite.semigroup α), mul_assoc := _, mul_left_cancel := _}
@[instance]
Equations
- opposite.right_cancel_semigroup α = {mul := semigroup.mul (opposite.semigroup α), mul_assoc := _, mul_right_cancel := _}
@[instance]
Equations
- opposite.comm_semigroup α = {mul := semigroup.mul (opposite.semigroup α), mul_assoc := _, mul_comm := _}
@[instance]
Equations
- opposite.has_one α = {one := opposite.op 1}
@[simp]
@[simp]
@[instance]
Equations
- opposite.monoid α = {mul := semigroup.mul (opposite.semigroup α), mul_assoc := _, one := 1, one_mul := _, mul_one := _}
@[instance]
Equations
- opposite.comm_monoid α = {mul := monoid.mul (opposite.monoid α), mul_assoc := _, one := monoid.one (opposite.monoid α), one_mul := _, mul_one := _, mul_comm := _}
@[instance]
Equations
- opposite.has_inv α = {inv := λ (x : αᵒᵖ), opposite.op (opposite.unop x)⁻¹}
@[instance]
Equations
- opposite.group α = {mul := monoid.mul (opposite.monoid α), mul_assoc := _, one := monoid.one (opposite.monoid α), one_mul := _, mul_one := _, inv := has_inv.inv (opposite.has_inv α), mul_left_inv := _}
@[instance]
Equations
- opposite.comm_group α = {mul := group.mul (opposite.group α), mul_assoc := _, one := group.one (opposite.group α), one_mul := _, mul_one := _, inv := group.inv (opposite.group α), mul_left_inv := _, mul_comm := _}
@[instance]
Equations
- opposite.distrib α = {mul := has_mul.mul (opposite.has_mul α), add := has_add.add (opposite.has_add α), left_distrib := _, right_distrib := _}
@[instance]
Equations
- opposite.semiring α = {add := add_comm_monoid.add (opposite.add_comm_monoid α), add_assoc := _, zero := add_comm_monoid.zero (opposite.add_comm_monoid α), zero_add := _, add_zero := _, add_comm := _, mul := monoid.mul (opposite.monoid α), mul_assoc := _, one := monoid.one (opposite.monoid α), one_mul := _, mul_one := _, zero_mul := _, mul_zero := _, left_distrib := _, right_distrib := _}
@[instance]
Equations
- opposite.ring α = {add := add_comm_group.add (opposite.add_comm_group α), add_assoc := _, zero := add_comm_group.zero (opposite.add_comm_group α), zero_add := _, add_zero := _, neg := add_comm_group.neg (opposite.add_comm_group α), add_left_neg := _, add_comm := _, mul := monoid.mul (opposite.monoid α), mul_assoc := _, one := monoid.one (opposite.monoid α), one_mul := _, mul_one := _, left_distrib := _, right_distrib := _}
@[instance]
Equations
- opposite.comm_ring α = {add := ring.add (opposite.ring α), add_assoc := _, zero := ring.zero (opposite.ring α), zero_add := _, add_zero := _, neg := ring.neg (opposite.ring α), add_left_neg := _, add_comm := _, mul := ring.mul (opposite.ring α), mul_assoc := _, one := ring.one (opposite.ring α), one_mul := _, mul_one := _, left_distrib := _, right_distrib := _, mul_comm := _}
@[instance]
Equations
- opposite.integral_domain α = {add := comm_ring.add (opposite.comm_ring α), add_assoc := _, zero := comm_ring.zero (opposite.comm_ring α), zero_add := _, add_zero := _, neg := comm_ring.neg (opposite.comm_ring α), add_left_neg := _, add_comm := _, mul := comm_ring.mul (opposite.comm_ring α), mul_assoc := _, one := comm_ring.one (opposite.comm_ring α), one_mul := _, mul_one := _, left_distrib := _, right_distrib := _, mul_comm := _, exists_pair_ne := _, eq_zero_or_eq_zero_of_mul_eq_zero := _}
@[instance]
Equations
- opposite.field α = {add := comm_ring.add (opposite.comm_ring α), add_assoc := _, zero := comm_ring.zero (opposite.comm_ring α), zero_add := _, add_zero := _, neg := comm_ring.neg (opposite.comm_ring α), add_left_neg := _, add_comm := _, mul := comm_ring.mul (opposite.comm_ring α), mul_assoc := _, one := comm_ring.one (opposite.comm_ring α), one_mul := _, mul_one := _, left_distrib := _, right_distrib := _, mul_comm := _, inv := has_inv.inv (opposite.has_inv α), exists_pair_ne := _, mul_inv_cancel := _, inv_zero := _}
@[simp]
theorem
opposite.op_add
{α : Type u}
[has_add α]
(x y : α) :
opposite.op (x + y) = opposite.op x + opposite.op y
@[simp]
theorem
opposite.unop_add
{α : Type u}
[has_add α]
(x y : αᵒᵖ) :
opposite.unop (x + y) = opposite.unop x + opposite.unop y
@[simp]
@[simp]
theorem
opposite.unop_neg
{α : Type u}
[has_neg α]
(x : αᵒᵖ) :
opposite.unop (-x) = -opposite.unop x
@[simp]
theorem
opposite.op_mul
{α : Type u}
[has_mul α]
(x y : α) :
opposite.op (x * y) = opposite.op y * opposite.op x
@[simp]
theorem
opposite.unop_mul
{α : Type u}
[has_mul α]
(x y : αᵒᵖ) :
opposite.unop (x * y) = opposite.unop y * opposite.unop x
@[simp]
@[simp]
theorem
opposite.unop_inv
{α : Type u}
[has_inv α]
(x : αᵒᵖ) :
opposite.unop x⁻¹ = (opposite.unop x)⁻¹
@[simp]
theorem
opposite.op_sub
{α : Type u}
[add_group α]
(x y : α) :
opposite.op (x - y) = opposite.op x - opposite.op y
@[simp]
theorem
opposite.unop_sub
{α : Type u}
[add_group α]
(x y : αᵒᵖ) :
opposite.unop (x - y) = opposite.unop x - opposite.unop y
The function op
is a homomorphism of additive commutative monoids.
Equations
- opposite.op_add_hom = {to_fun := opposite.op α, map_zero' := _, map_add' := _}
The function unop
is a homomorphism of additive commutative monoids.
Equations
- opposite.unop_add_hom = {to_fun := opposite.unop α, map_zero' := _, map_add' := _}
@[simp]
@[simp]