Semirings and rings #
This file gives lemmas about semirings, rings and domains.
This is analogous to Algebra.Group.Basic
,
the difference being that the former is about +
and *
separately, while
the present file is about their interaction.
For the definitions of semirings and rings see Algebra.Ring.Defs
.
@[simp]
theorem
AddHom.mulLeft_apply
{R : Type u_1}
[Distrib R]
(r : R)
:
↑(AddHom.mulLeft r) = (fun x x_1 => x * x_1) r
Left multiplication by an element of a type with distributive multiplication is an AddHom
.
Equations
Instances For
@[simp]
theorem
AddHom.mulRight_apply
{R : Type u_1}
[Distrib R]
(r : R)
:
↑(AddHom.mulRight r) = fun a => a * r
@[simp, deprecated]
theorem
map_bit0
{α : Type u_3}
{β : Type u_2}
{F : Type u_1}
[NonAssocSemiring α]
[NonAssocSemiring β]
[AddHomClass F α β]
(f : F)
(a : α)
:
Additive homomorphisms preserve bit0
.
@[simp]
theorem
AddMonoidHom.coe_mulLeft
{R : Type u_1}
[NonUnitalNonAssocSemiring R]
(r : R)
:
↑(AddMonoidHom.mulLeft r) = HMul.hMul r
@[simp]
theorem
AddMonoidHom.coe_mulRight
{R : Type u_1}
[NonUnitalNonAssocSemiring R]
(r : R)
:
↑(AddMonoidHom.mulRight r) = fun x => x * r
theorem
AddMonoidHom.mulRight_apply
{R : Type u_1}
[NonUnitalNonAssocSemiring R]
(a : R)
(r : R)
:
↑(AddMonoidHom.mulRight r) a = a * r
theorem
vieta_formula_quadratic
{α : Type u_1}
[NonUnitalCommRing α]
{b : α}
{c : α}
{x : α}
(h : x * x - b * x + c = 0)
:
Vieta's formula for a quadratic equation, relating the coefficients of the polynomial with
its roots. This particular version states that if we have a root x
of a monic quadratic
polynomial, then there is another root y
such that x + y
is negative the a_1
coefficient
and x * y
is the a_0
coefficient.
theorem
NoZeroDivisors.to_isDomain
(α : Type u_1)
[Ring α]
[h : Nontrivial α]
[NoZeroDivisors α]
:
IsDomain α